Quick tip: User-mounted filesystems with "exec"
Second time I've run into this -- time to write it down.Trying to run debootstrap to install the new Ubuntu beta, I kept hitting a snag right at the beginning: debootstrap kept saying the filesystem was mounted with the wrong permissions, and it couldn't create an executable file or a device.
I have lines for each of my spare filesystems in /etc/fstab, like this:
/dev/sda4 /lucid ext3 relatime,user,noauto 0 0That way, if I'm booted into one OS but I want to check a file from another, I can mount it without needing sudo, just by typing
mount /lucid
.
Not being able to create executable files means it's mounted with
the noexec
flag. I checked another machine and saw
that it was using lines like
/dev/sda4 /lucid ext3 exec,user,noauto 0 0
I added the "exec," to fstab, unmounted and remounted ... and it was
still mounted with noexec
.
Turns out on some Linux versions, making a filesystem user
mountable turns off exec
even if you've specified it
explicitly. You have to add the exec
after the
user
.
But that still didn't make debootstrap happy, because it couldn't
create a device. That's a separate fstab option, dev
,
and user
implies nodev
.
So here's the fstab entry that finally worked:
/dev/sda4 /lucid ext3 relatime,user,exec,dev,noauto 0 0
[ 23:07 Apr 01, 2010 More linux | permalink to this entry | ]