conf/85819: Script allowing multiuser mode in spite of fsck errors
Maurice Castro
maurice at sphinx.clari.net.au
Tue Sep 6 18:40:25 PDT 2005
>Number: 85819
>Category: conf
>Synopsis: Script allowing multiuser mode in spite of fsck errors
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Wed Sep 07 01:40:13 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Maurice Castro
>Release: FreeBSD 5.4-RELEASE i386
>Organization:
Clarinet Internet Solutions
>Environment:
System: FreeBSD sphinx.clari.net.au 5.4-RELEASE FreeBSD 5.4-RELEASE #0: Mon Aug 15 14:39:49 EST 2005 maurice at sphinx.clari.net.au:/work/src/sys/i386/compile/sphinx i386
>Description:
>How-To-Repeat:
>Fix:
#!/bin/sh
#
# PROVIDE: mountdeflocal
# REQUIRE: root mountcritlocal
# BEFORE: var tmp
# KEYWORD: nojail
. /etc/rc.subr
name="mountdeflocal"
stop_cmd=":"
start_cmd="mountdeflocal_start"
# Author: Maurice Castro
# Date: Mon Jul 25 09:16:28 EST 2005
# This script is used to get a machine into multiuser mode inspite of failed
# fscks. This script is useful for remote machines with only ethernet
# connectivity
#
# How to use:
#
# To use this script make / and /usr readonly. Make all the other
# filesystems noauto and no fsck in the the fstab file and add them to the
# deferred_mount variable in /etc/rc.conf. A trap for young players is that
# some ilbehaved programs need to write into /usr/local; so separating it
# from /usr is a good idea.
#
# What it does:
#
# fsck each of the local disks that are to be deferred mounted if any of the
# fail then don't mount any of them if they all succeed mount the lot
mountdeflocal_start()
{
# Mount nfs filesystems.
#
echo -n 'Fsck local deferred mount file systems:'
for i in $deferred_mount
do
/sbin/fsck -p $i
if [ $? != 0 ]
then
exit 0
fi
done
echo '.'
echo -n 'Mount local deferred mount file systems:'
for i in $deferred_mount
do
/sbin/mount $i
done
echo '.'
}
load_rc_config $name
run_rc_command "$1"
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list