mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-28 13:16:41 +00:00
busybox: unmount /flash and /storage on reboot in initramfs, add 'do_reboot' function and use this for all reboot calls
Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
parent
3492df7397
commit
9171a0678d
@ -43,7 +43,6 @@
|
|||||||
IMAGE_SYSTEM="SYSTEM"
|
IMAGE_SYSTEM="SYSTEM"
|
||||||
|
|
||||||
BOOT_STEP="start"
|
BOOT_STEP="start"
|
||||||
REBOOT="0"
|
|
||||||
MD5_FAILED="0"
|
MD5_FAILED="0"
|
||||||
MD5_NOCHECK="0"
|
MD5_NOCHECK="0"
|
||||||
SIZE_FAILED="0"
|
SIZE_FAILED="0"
|
||||||
@ -398,6 +397,25 @@
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
do_reboot() {
|
||||||
|
echo "System reboots now..."
|
||||||
|
|
||||||
|
# syncing filesystem
|
||||||
|
sync
|
||||||
|
|
||||||
|
# unmount filesystems
|
||||||
|
if /bin/busybox mountpoint -q /flash ; then
|
||||||
|
/bin/busybox umount /flash
|
||||||
|
fi
|
||||||
|
|
||||||
|
if /bin/busybox mountpoint -q /storage ; then
|
||||||
|
/bin/busybox umount /storage
|
||||||
|
fi
|
||||||
|
|
||||||
|
usleep 2000000
|
||||||
|
/bin/busybox reboot
|
||||||
|
}
|
||||||
|
|
||||||
check_disks() {
|
check_disks() {
|
||||||
if [ "$RUN_FSCK" = "yes" -a -n "$RUN_FSCK_DISKS" ]; then
|
if [ "$RUN_FSCK" = "yes" -a -n "$RUN_FSCK_DISKS" ]; then
|
||||||
progress "Checking disk(s): $RUN_FSCK_DISKS"
|
progress "Checking disk(s): $RUN_FSCK_DISKS"
|
||||||
@ -413,14 +431,11 @@
|
|||||||
;;
|
;;
|
||||||
2) # reboot needed
|
2) # reboot needed
|
||||||
echo "filesystem repaired, reboot needed..."
|
echo "filesystem repaired, reboot needed..."
|
||||||
sleep 5
|
do_reboot
|
||||||
sync
|
|
||||||
reboot
|
|
||||||
;;
|
;;
|
||||||
4) # errors left
|
4) # errors left
|
||||||
error "could not repair filesystem, dropping to debug shell, try to run 'fsck' manually, exit with 'exit'"
|
error "could not repair filesystem, dropping to debug shell, try to run 'fsck' manually"
|
||||||
sync
|
do_reboot
|
||||||
reboot
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
@ -571,7 +586,7 @@
|
|||||||
update "Kernel" "$UPDATE_KERNEL" "/flash/$IMAGE_KERNEL"
|
update "Kernel" "$UPDATE_KERNEL" "/flash/$IMAGE_KERNEL"
|
||||||
update "System" "$UPDATE_SYSTEM" "/flash/$IMAGE_SYSTEM"
|
update "System" "$UPDATE_SYSTEM" "/flash/$IMAGE_SYSTEM"
|
||||||
update_bootloader
|
update_bootloader
|
||||||
REBOOT="1"
|
do_reboot
|
||||||
else
|
else
|
||||||
rm -rf $UPDATE_DIR/[0-9a-zA-Z]* &>/dev/null
|
rm -rf $UPDATE_DIR/[0-9a-zA-Z]* &>/dev/null
|
||||||
echo "md5 check failed. normal startup in 30s..."
|
echo "md5 check failed. normal startup in 30s..."
|
||||||
@ -586,12 +601,6 @@
|
|||||||
usleep 30000000
|
usleep 30000000
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test "$REBOOT" -eq "1"; then
|
|
||||||
echo "System reboots now..."
|
|
||||||
usleep 2000000
|
|
||||||
reboot
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
prepare_sysroot() {
|
prepare_sysroot() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user