@@ -112,7 +112,7 @@ get_textoffset() {
112112 temp_dir=" $( mktemp -d) "
113113 (
114114 cd ${temp_dir}
115- tar -xzf " ${boot_tgz_file} " --touch " ${vmlinuz_name} "
115+ tar -mxzf " ${boot_tgz_file} " " ${vmlinuz_name} "
116116 )
117117 # With TEXT_OFFSET patch is [ 0108 ], without TEXT_OFFSET patch is [ 0000 ] and need to ues [ UBOOT_OVERLOAD ] file.
118118 [[ " $( hexdump -n 15 -x " ${temp_dir} /${vmlinuz_name} " 2> /dev/null | head -n 1 | awk ' {print $7}' ) " == " 0108" ]] && need_overload=" no"
@@ -318,7 +318,7 @@ download_kernel() {
318318 echo -e " ${INFO} Download kernel to: [ ${kernel_path} ]"
319319 wget " ${kernel_down_from} " -q -P " ${kernel_path} "
320320 [[ " ${?} " -ne " 0" ]] && error_msg " Failed to download kernel."
321- tar -xzf " ${kernel_path} /${inputs_kernel} .tar.gz" --touch -C " ${kernel_path} "
321+ tar -mxzf " ${kernel_path} /${inputs_kernel} .tar.gz" -C " ${kernel_path} "
322322 [[ " ${?} " -ne " 0" ]] && error_msg " Failed to extract kernel [ ${inputs_kernel} ], stop updating."
323323 kernel_path=" ${kernel_path} /${inputs_kernel} "
324324 else
@@ -453,7 +453,7 @@ update_kernel() {
453453 rm -rf /boot/uInitrd /boot/Image /boot/zImage /boot/dtb-*
454454
455455 # 01. For /boot five files
456- tar -xzf boot-${kernel_name} .tar.gz --touch -C /boot
456+ tar -mxzf boot-${kernel_name} .tar.gz -C /boot
457457 [[ " ${PLATFORM} " == " amlogic" ]] && (cd /boot && cp -f uInitrd-${kernel_name} uInitrd && cp -f vmlinuz-${kernel_name} zImage)
458458 [[ " ${PLATFORM} " == " rockchip" ]] && (cd /boot && ln -sf uInitrd-${kernel_name} uInitrd && ln -sf vmlinuz-${kernel_name} Image)
459459 [[ " ${PLATFORM} " == " allwinner" ]] && (cd /boot && cp -f uInitrd-${kernel_name} uInitrd && cp -f vmlinuz-${kernel_name} Image)
@@ -462,21 +462,21 @@ update_kernel() {
462462
463463 # 02. For /boot/dtb/${PLATFORM}/*
464464 [[ -d " /boot/dtb/${PLATFORM} " ]] || mkdir -p /boot/dtb/${PLATFORM}
465- tar -xzf dtb-${PLATFORM} -${kernel_name} .tar.gz --touch -C /boot/dtb/${PLATFORM}
465+ tar -mxzf dtb-${PLATFORM} -${kernel_name} .tar.gz -C /boot/dtb/${PLATFORM}
466466 [[ " ${PLATFORM} " == " rockchip" ]] && ln -sf dtb /boot/dtb-${kernel_name}
467467 [[ " $( ls /boot/dtb/${PLATFORM} -l 2> /dev/null | grep " ^-" | wc -l) " -ge " 2" ]] || error_msg " /boot/dtb/${PLATFORM} files is missing."
468468 echo -e " ${INFO} (2/4) Unpacking [ dtb-${PLATFORM} -${kernel_name} .tar.gz ] succeeded."
469469
470470 # 03. For /usr/src/linux-headers-${kernel_name}
471471 header_path=" linux-headers-${kernel_name} "
472472 rm -rf /usr/src/linux-headers-* && mkdir -p " /usr/src/${header_path} "
473- tar -xzf header-${kernel_name} .tar.gz --touch -C /usr/src/${header_path}
473+ tar -mxzf header-${kernel_name} .tar.gz -C /usr/src/${header_path}
474474 [[ -d " /usr/src/${header_path} /include" ]] || error_msg " /usr/src/${header_path} /include folder is missing."
475475 echo -e " ${INFO} (3/4) Unpacking [ header-${kernel_name} .tar.gz ] succeeded."
476476
477477 # 04. For /usr/lib/modules/${kernel_name}
478478 rm -rf /usr/lib/modules/*
479- tar -xzf modules-${kernel_name} .tar.gz --touch -C /usr/lib/modules
479+ tar -mxzf modules-${kernel_name} .tar.gz -C /usr/lib/modules
480480 (cd /usr/lib/modules/${kernel_name} / && rm -f build source && ln -sf /usr/src/${header_path} build)
481481 [[ -d " /usr/lib/modules/${kernel_name} " ]] || error_msg " /usr/lib/modules/${kernel_name} kernel folder is missing."
482482 echo -e " ${INFO} (4/4) Unpacking [ modules-${kernel_name} .tar.gz ] succeeded."
0 commit comments