3

I have set up a few bind mounts in fstab, mounting one folder in my home directory to another (AeroFS no sym-link circumvent). My home folder is encrypted.

When the system boots up, it attempts to mount the folders inside home folder prior to mounting the encrypted home folder itself, causing an error.

How can I edit fstab to have the encrypted home folder mount first?

I tried adding noauto, it didn't work.

EDIT: Also, I want to maintain the encryption for security reasons.

fstab content:

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda2 during installation
UUID=8e26dd0d-f57f-4b63-93b3-7f2743d6fe7a /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/sda1 during installation
UUID=C2BB-18A8  /boot/efi       vfat    defaults        0       1
# /home was on /dev/sda4 during installation
UUID=062418c7-ba50-40e4-b3ea-42663e92eba8 /home           ext4    defaults        0       2
# swap was on /dev/sda3 during installation
#UUID=ac66f7ee-7dbe-4e56-9f42-459038a11a12 none            swap    sw              0       0
/dev/mapper/cryptswap1 none swap sw 0 0

#
#Bind mounts for AeroFS to sync outside it's folder:
#
/home/user/Desktop  /home/user/AeroFS/Desktop   none    bind    0   0
/home/user/Documents    /home/user/AeroFS/Documents none    bind    0   0
/home/user/Music    /home/user/AeroFS/Music     none    bind    0   0
/home/user/Pictures /home/user/AeroFS/Pictures  none    bind    0   0
#

lsblk output:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0   954M  0 part /boot/efi
├─sda2   8:2    0  55.9G  0 part /
├─sda3   8:3    0  14.9G  0 part 
└─sda4   8:4    0   394G  0 part /home
  • possible duplicate of How to stop using built-in home directory encryption? – Panther Apr 2 '15 at 13:51
  • No, I am certainly not interested to stop using home directory encryption. – Dean Apr 2 '15 at 13:53
  • What is the point of using ecrypts if your data is automatically decrypted at boot ? – Panther Apr 2 '15 at 13:55
  • 1
    If you automatically decrypt your data when you boot it defeats any advantage of encryption as your data is only encrypted when the laptop is off and is available to anyone who boots the system. With what you posted I highly suggest you reinstall using LUKS and encrypt your entire install with LUKS. Skip encrypting home. Your data will then be encrypted the way you wish and your mount binds will work. – Panther Apr 2 '15 at 14:12
  • 1
    Could you please post your fstab to paste.ubuntu.com and post the output of gparted --list so we can have a look??? ;-) – Fabby Apr 4 '15 at 22:16
0

Easy:

  1. Remove the following lines from fstab:

    #
    #Bind mounts for AeroFS to sync outside it's folder:
    #
    /home/user/Desktop  /home/user/AeroFS/Desktop   none    bind    0   0
    /home/user/Documents    /home/user/AeroFS/Documents none    bind    0   0
    /home/user/Music    /home/user/AeroFS/Music     none    bind    0   0
    /home/user/Pictures /home/user/AeroFS/Pictures  none    bind    0   0
    #
    
  2. create the following shell script:

    #!/bin/bash
    #
    # This script binds AeroFS mounts to sync outside their folder,
    # as an answer to https://askubuntu.com/questions/604361/delay-mounts-after-encrypted-home-folder-is-ready
    # 
    # Copyright (c) 2014 Fabby
    
    # This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
    # This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. See the GNU General Public License for more details.
    # You DID NOT receive a copy of the GNU General Public License along with this program as the license is bigger then this program.
    
    mount --bind /home/user/Desktop   /home/user/AeroFS/Desktop
    mount --bind /home/user/Documents /home/user/AeroFS/Documents
    mount --bind /home/user/Music     /home/user/AeroFS/Music
    mount --bind /home/user/Pictures  /home/user/AeroFS/Pictures
    
  3. Save it under /home/user/bin/MountAeroFS.sh (create the bin directory if it doesn't exist.)

  4. Open Startup Applications, and add the following Command: MountAeroFS.sh. As Name: and Comment: you can add anything to remind you what this is about.

  5. Reboot (as you've just changed your fstab)

Done!

  • Don't thank me! ;-) If you like my answer, just click the little grey under the "0" now turning it into beautiful green. If you do not like my answer, click on the little grey down-arrow below the 0, and if you really like my answer, click on the little grey checkmark and the little up-arrow... If you have any further questions, go to askubuntu.com/questions/ask – Fabby Apr 8 '15 at 9:43
  • I will try it. But, just out of curiosity, shouldn't fstab be able to handle this in a "built-in" manner? It seems strange that this wasn't taken into account. – Dean Apr 8 '15 at 9:46
  • I'm an old fart and don't try to find things that "should be" but look at the use case purely by itself and find creative ways of circumventing bugs... Might look odd as a solution, but I'm certain at 99% it'll work for your use case... ;-) Id it does work, don't forget to accept (and upvote???) >:) – Fabby Apr 8 '15 at 19:14
  • Lol did you add license to script with 4 mounts – Peter Jul 11 '17 at 12:52
  • @Peter No I did not :D. An upvote would be nice if I made you laugh! ;-) – Fabby Jul 11 '17 at 18:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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