4

So, I'm trying to mount an external USB drive to /home on a Raspberry Pi 2. I thought mounting an external drive upon startup would be easy. I added a line to /etc/fstab for the new device and rebooted but I immediately got a failure message. it says "Unable to resolve 'UUID=......' and puts me in a maintenance shell. It's absolutely the correct UUID. I can mount the drive from the maintenance shell with "mount /home" no problem. What seems to be happening is that systemd times out before the external drive becomes available.

From reading a bit of the man page I thought I might be able to add "x-systemd.device-timeout=10" to the mount options in the fstab file, but subsequently trying to run "mount /home" I get the following error:

[ 370.649941] EXT4-fs (sda1): Unrecognized mount option "x-systemd.device-timeout=10" or missing value

I'm fairly sure I need to add some sort of rule to systemd that tells it to wait on my external drive, but I have no idea how to do that and google didn't seem to turn up any good results.

I've spent a few hours trying to figure this out and nothing seems to work. Any help would be appreciated. Thanks!

By the way, here's my /etc/fstab file:

proc            /proc           proc    defaults          0       0
/dev/mmcblk0p1  /boot           vfat    defaults          0       2
/dev/mmcblk0p2  /               ext4    defaults,noatime  0       1
UUID=9bbf04b2-d381-41a6-b29b-6220c4048911 /home   ext4    defaults        0       2
#UUID=9bbf04b2-d381-41a6-b29b-6220c4048911 /home   ext4    defaults,x-systemd.device-timeout=10        0       2

3 Answers 3

3

I did it with these instructions and it worked without problems.
http://www.modmypi.com/blog/how-to-mount-an-external-hard-drive-on-the-raspberry-pi-raspian
I hope this helps.

1
  • That's essentially what I've done already. The only real difference is the sixth field is a 0 in that tutorial. I just tried changing it and it still doesn't mount, although it doesn't kick me into a maintenance shell anymore.
    – colton7909
    Jul 10, 2015 at 13:54
2

I feel a little bit foolish. Systemd wasn't the problem, it was the solution! I thought systemd was the default for raspbian. It is not! I followed this tutorial to install it and now everything works fine. It's worth noting that after the change my Pi no longer booted into a console so I ran "sudo update-rc.d -f lightdm remove" to change it back.

0

Looking trough man fstab i see:

   The mountall(8) program that mounts filesystem during boot also recognises additional options that the ordinary mount(8) tool does not.  These are: ``bootwait'' which can be applied to remote filesys‐
   tems  mounted  outside of /usr or /var, without which mountall(8) would not hold up the boot for these; ``nobootwait'' which can be applied to non-remote filesystems to explicitly instruct mountall(8)
   not to hold up the boot for them; ``optional'' which causes the entry to be ignored if the filesystem type is not known at boot time; and ``showthrough'' which  permits  a  mountpoint  to  be  mounted
   before its parent mountpoint (this latter should be used carefully, as it can cause boot hangs).

And as such probably adding the option bootwait will do the trick

1
  • That sounded promising, but still didn't work. I get the same error
    – colton7909
    Jul 10, 2015 at 13:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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