[Initng] Mount point sometimes isn't mounted soon enough

Jorge Peixoto de Morais Neto jorgepeixotomorais at gmail.com
Mon Jul 30 22:03:45 CEST 2007


> Jorge Peixoto de Morais Neto wrote:
> > Hi. I have moved /var/cache, /var/log and /usr/portage from hda2
> > (which is mounted at /) to hdb2 (mounted at /mnt/hdb2). The original
> > directories were replaced by symlinks, such that /var/cache is a link
> > to /mnt/hdb2/var/cache. I then added /mnt/hdb2 to the list of
> > mountpoints in system/mountfs/essential. 
> >
> > Sometimes, the computer complains at bootup that this and that file
> > in /var/log is not accessible; it is extremely likely that this means
> > that /mnt/hdb2 is not mounted when it is needed. Do you have any idea
> > of how can I diagnose the cause of this problem?

> It looks ok te me, assuming your fstab is correct and you are using a 
> filesystem that supports symlinks on different partitions. :P Anyway, I 
> just wanna say that some daemons do not work/start if they can't access 
> their log files, just a note.

Hey, I just took a look at the system/mountfs/essential service (where
you see /mnt/hdc1, it's my modification):

service system/mountfs/essential {
	need = system/initial/mountvirtfs system/mountroot system/checkfs;
	use = system/sraid system/hdparm system/selinux/relabel;
	critical;
	never_kill;

	script start = {
		for mp in /tmp /mnt/hdc1 /usr /var /srv /opt
		do
			/bin/grep -q "[[:space:]]${mp}[[:space:]]" /etc/fstab &&
			/bin/mount -v "${mp}" &
		done
		wait
		exit 0
	};

	script stop = {
		echo "Sending all processes the TERM signal ..."
		/sbin/killalli5 -15
		sleep 3
		echo "Sending all processes the KILL signal ..."
		/sbin/killalli5 -9
		sleep 1

		FILES="`/bin/sed 's:^\S*\s*::' /etc/mtab | /bin/sort -r`"

		echo "${FILES}" | while read mp drop
		do
			case "${mp}" in
				/proc|/sys|/dev|/) ;;
				*)
					/usr/sbin/mountpoint -q "${mp}" && {
						/bin/umount -r -d -f "${mp}" ||
						echo "WARNING, failed to umount ${mp}"
					}
					;;
			esac
		done
		exit 0
	};
}

I don't have this /usr/sbin/mountpoint in my system. This is probably
causing /mnt/hdc1 to not get umounted (and I indeed am receiving
messages of "Filesystem is NOT clean" at bootup) at shutdown. Where
can I get this /usr/sbin/mountpoint
(Google turns nothing useful)? I think that a shoddy workaround would
be to remove the invocation of mountpoint altogether...

-- 
Software is like sex: it is better when it is free. --Linus Torvalds


More information about the Initng mailing list