diff --git a/defaults/linuxrc b/defaults/linuxrc index 115f1f5..1819d9f 100755 --- a/defaults/linuxrc +++ b/defaults/linuxrc @@ -733,16 +733,17 @@ echo -ne "${BOLD}.${NORMAL}" # If devtmpfs is mounted, try move it to the new root # If that fails, try to unmount all possible mounts of devtmpfs as stuff breaks otherwise -if grep -qs "/dev " /proc/mounts -then - if ! mount --move /dev "${CHROOT}"/dev +for fs in /dev /sys /proc +do + if grep -qs "$fs" /proc/mounts then - umount /dev || echo '*: Failed to move and unmount the ramdisk /dev!' + if ! mount --move $fs "${CHROOT}"$fs + then + umount $fs || echo '*: Failed to move and unmount the ramdisk $fs!' + fi fi -fi +done -umount /sys || echo '*: Failed to unmount the ramdisk /sys!' -umount /proc || echo '*: Failed to unmount the ramdisk /proc!' echo -e "${BOLD}.${NORMAL}" exec /sbin/switch_root -c "/dev/console" "${CHROOT}" "${REAL_INIT:-/sbin/init}" "${INIT_OPTS}"