Date: Wed, 11 Oct 2000 10:59:19 +0600 (YEKST) From: anton@urc.ac.ru To: FreeBSD-gnats-submit@freebsd.org Subject: misc/21904: Fix for diskless startup bug in /etc/rc Message-ID: <200010110459.e9B4xJG82752@belle.rnoc.urc.ac.ru>
next in thread | raw e-mail | index | archive | help
>Number: 21904 >Category: misc >Synopsis: Fix for diskless startup bug in /etc/rc >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Oct 10 22:10:01 PDT 2000 >Closed-Date: >Last-Modified: >Originator: Anton Voronin >Release: FreeBSD 4.1-STABLE i386 >Organization: Southern Ural State University, Chelyabinsk, Russia >Environment: i386 workstations boot FreeBSD 4.1-STABLE remotely from the server with the same OS using rc.diskless* scripts. / and /usr are monted from the server (actually the server's / and /usr), /etc and /var are mounted by rc.diskless2. /tmp and swap are mounted from local disks. >Description: /etc/rc checks $1 against "autoboot" after it runs /etc/rc.diskless1. But as the latter uses "set" command, it clears the command line, and so /etc/rc fails to check for autoboot mode, so it doesn't run fsck, and so fails to mount local filesystems (/tmp in my case). >How-To-Repeat: Ensure you have /etc/rc.diskless* on the file server, boot FreeBSD 4.1-STABLE remotely from this server, and specify some locally mounted filesystems in /etc/fstab (ensure you have "1" in the 6th column for these filesystems. Then do a "dirty" reboot of the remote-booting machine (with reset button), and watch the booting process: instead of running fsck it prints "Skipping disk checks...", and then fails to mount local filesystems because they are still not clean. >Fix: --- rc.old Fri Sep 8 12:16:20 2000 +++ rc Wed Oct 11 10:34:09 2000 @@ -20,6 +20,7 @@ trap : 2 trap : 3 # shouldn't be needed +bootmode=$1 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin export HOME PATH @@ -57,7 +58,7 @@ swapon -a -case $1 in +case ${bootmode} in autoboot) echo Automatic boot in progress... fsck -p >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200010110459.e9B4xJG82752>