[Bootcd-user] DEVFS=yes && mount: mount point /dev is a symbolic link to nowhere
Mark Clarkson
markjclarkson@hotmail.com
Sat, 5 Jun 2004 18:45:30 +0100
I was getting the error:
mount: mount point /dev is a symbolic link to nowhere
This was due to the command order in sbin/init if DEVFS is enabled.
My previous patch hurt bootcd2disk, but this seems to fix the problem, is
much simpler, will work regardless of sbin/init command order, and has
[hopefully] no side effects.
Best Regards
Mark.
Patch against bootcd version 2.41:
<--- SNIP --->
--- bootcdwrite.2.41 2004-06-05 18:43:11.000000000 +0100
+++ bootcdwrite 2004-06-05 18:51:15.000000000 +0100
@@ -474,7 +474,6 @@
run mv $VAR/input_dir/etc $VAR/input_dir/etc.ro
run mv $VAR/input_dir/dev $VAR/input_dir/dev.ro
run "cd $CHANGES; find . | cpio --quiet -pdum $VAR/input_dir/"
- [ "$DEVFS" = "yes" ] && run rm -r $VAR/input_dir/dev.ro
echo "--- Compressing input_dir to compressed_dir ---" | tee -a $ERRLOG
run "rm -rf $VAR/compressed_dir; mkzftree $VAR/input_dir
$VAR/compressed_dir"
@@ -678,11 +677,9 @@
run mkdir -p $VAR/mnt $CHANGES/proc $CHANGES/ram1 $CHANGES/ram2
# at Boottime /etc -> /ram1/etc -> /etc.ro
-DEVEX="etc tmp dev home root"
-[ "$DEVFS" = "yes" ] && DEVEX="etc tmp home root"
-for i in $DEVEX; do run ln -sf /$i.ro $CHANGES/ram1/$i; done
+for i in etc tmp dev home root; do run ln -sf ../$i.ro $CHANGES/ram1/$i;
done
for i in var; do run ln -sf /$i.ro $CHANGES/ram2/$i; done
-for i in $DEVEX; do run ln -sf /ram1/$i $CHANGES/$i; done
+for i in etc tmp dev home root; do run ln -sf ram1/$i $CHANGES/$i; done
for i in var; do run ln -sf /ram2/$i $CHANGES/$i; done
if [ "$CLEAN_VAR" = "yes" -a ! "$ONLY_FLOPPY" ]; then
@@ -694,10 +691,8 @@
run chmod 777 $CHANGES/tmp.ro
run mkdir $CHANGES/etc.ro
run chmod 755 $CHANGES/etc.ro
-[ "$DEVFS" = "yes" ] && {
- run mkdir $CHANGES/dev.ro
- run chmod 755 $CHANGES/dev.ro
-}
+run mkdir $CHANGES/dev.ro
+run chmod 755 $CHANGES/dev.ro
run ln -sf /proc/mounts $CHANGES/etc.ro/mtab
mkdir -p $CHANGES/etc.ro/rcS.d
<--- SNIP --->