Public bug reported:

Binary package hint: mountall

The current implementation of mountall in Lucid is rather dangerous if
you don't have console access.

It will effectively hang your boot process if anything goes wrong. (MD
did not get assembled, data drive is offline, etc.)  If you don’t have
console access to press "s", your out of luck.

For those like me that administer their server remotely the historic
solution was to ensure serial console access. But even then, you don’t
see anything when connecting, so you can press "s" and HOPE for the
best.

There is another issue here, the fundamental idea that a system is an
all or nothing solution.  Why is it that the data drive needs to be
online and mounted BEFORE I can get SSH access?  I have systems that run
both Asterisk and Samba and I find it inappropriate that Asterisk needs
to WAIT for Samba’s Data drive to get online before Asterisk can start.
We need a SMARTER start process that is NOT all or nothing, it is OKAY
to mount some filesystems later when they are ready, and not hold up the
whole system.

I wrote a small script called "mountall2" which mounts the non-root
filesystems later in the boot process (last actually) and does so in a
way that make diagnostics and recovery POSSIBLE.

Every filesystem is FSCK and MOUNTED just like mountall but it is done
in parallel and inside a "screen" session.  If you have console you can
check the FSCK progress on TTY13+ by pressing <RIGHTALT>+<F1> etc.  But
if you don’t have physical access to the machine you can SSH into the
box and use "screen –x .." to see the FSCK progress.

The script will also call postmount scripts if present since there are
times where you will need to notify NFS or some other app that the
filesystem is now online.  Ideally upstart scripts could be predicated
on a filesystem being available and auto start the task when the FS come
online.

To use, untar the script somewhere like /usr/local and add this line to 
/etc/rc.local:
  /usr/local/mountall2/mountall2 &
Then edit your /etc/fstab to add the noauto options and set the FSCK field to a 
3
Original setup:
  UUID=b97af687-8a45-4197-89d4-fb62b4feb0d1 /boot ext4  defaults          0     
  2
New setup:
  UUID=b97af687-8a45-4197-89d4-fb62b4feb0d1 /boot ext4  defaults,noauto   0     
  3

The "noauto" option will prevent the native "mountall" from touching the
entry. Make SURE there is no space between the 3 and the end of the
line.

The postmount scripts need to have the same name as the mount point so
if your mount point is "/mnt/test" then create a file
"postmount/mnt/test" script with your commands.  There is a sample
"postmount/Media" in the tar file.

Hopefully something of similar functionality will become integrated into
the distro.

Gérald

** Affects: mountall (Ubuntu)
     Importance: Undecided
         Status: New

-- 
A better mountall
https://bugs.launchpad.net/bugs/614662
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to