When in Linux boot process are filesystems mounted from /etc/fstab?

Question:

When in Ubuntu Linux boot process are filesystems (from /etc/fstab) mounted?


Rational:

I defined the following shared-folders on my Ubuntu VirtualBox VM.

openstack@ubuntu:~$ grep vboxsf /etc/fstab
tmp     /home/openstack/shared/tmp      vboxsf  defaults        0       0
images  /home/openstack/shared/images   vboxsf  defaults        0       0
openstack@ubuntu:~$

Mounting them from the shell is no problem.

However, during the boot process, their mounting fails:

enter image description here

Upon entering maintenance mode, I verify the problem to be that the vboxsf module is not loaded in the kernel (and subsequently, after it's loaded, the mount succeeds):

enter image description here

I want to solve this by creating a new rc file, that will execute the modprobe vboxsf command before /etc/fstab is read.

So, I tried executing modprobe vboxsf at the start of run-level 2:

openstack@ubuntu:/etc/rc2.d$ ls -ls /etc/rc2.d/S10modprobe-vboxsf
0 lrwxrwxrwx 1 root root 25 Apr 28 14:36 /etc/rc2.d/S10modprobe-vboxsf -> ../init.d/modprobe-vboxsf
openstack@ubuntu:/etc/rc2.d$ cat ../init.d/modprobe-vboxsf
/sbin/modprobe vboxsf
openstack@ubuntu:/etc/rc2.d$ ls -ls ../init.d/modprobe-vboxsf
4 -rwxr-xr-x 1 root root 22 Apr 28 14:33 ../init.d/modprobe-vboxsf
openstack@ubuntu:/etc/rc2.d$

but the shared folders still fail to mount from /etc/fstab.

Google did not bear fruit, so - my question is:

How do I load the vboxsf module to the Ubuntu kernel, before /etc/fstab is read and file-systems are mounted?


Solution 1:

Try adding vboxsf to /etc/modules (check to see if it is already there first, though I have a feeling it is not) and see if that helps.

Otherwise, a similar question has been asked over at askubuntu. See if any answers there help you at all:

https://askubuntu.com/questions/252853/how-to-mount-a-virtualbox-shared-folder-at-startup

Edit to try and answer the question as asked in the title: I am not sure when exactly mounts take place during the boot process, though I suspect it happens after (most?) kernel modules are loaded, since at least some file systems require certain modules to be loaded in order to work (eg, nfs, vboxfs, etc).