I have this line in my /etc/fstab:

/mnt/tmp    /tmp    none    bind,nobootwait

On EC2 however, /mnt may be lost during restarts causing the mount to fail due to non existent /mnt/tmp. So is there a way to explicitly create this directory?


you can make put the following lines in your /etc/rc.local file :

mkdir -p /mnt/tmp && mount --bind -o nobootwait /mnt/tmp /tmp 
  • Does rc.local really get run before filesystems are mounted? – wfaulk May 6 '12 at 8:13
  • No you are right, but he can remove the fstab entries, no ? – Razique May 7 '12 at 9:00

The script responsible for mounting directories from fstab is /etc/init.d/mountall.sh. You can add mkdir -p /mnt/tmp just before the mount -a line. It is located in mount_all_local() function.

This is my mountall.sh script after adding the mkdir command:

mount_all_local() {
    mkdir -p /mnt/tmp;
    mount -a -t nonfs,nfs4,smbfs,cifs,ncp,ncpfs,coda,ocfs2,gfs,gfs2,ceph \
        -O no_netdev

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.