Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 412377 - sys-fs/udisks:2: Volumes fail to mount with gnome-base/gvfs-1.12.0 due to enforced acl (setfacl) usage
Summary: sys-fs/udisks:2: Volumes fail to mount with gnome-base/gvfs-1.12.0 due to enf...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Freedesktop bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-17 17:12 UTC by Martin Wegner
Modified: 2014-03-13 20:32 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Wegner 2012-04-17 17:12:55 UTC
After upgrading to gnome-base/gvfs-1.12.0 volumes fail to mount e. g. in nautilus with this error message:

Unable to mount <volume>
Failed to execute child process "setfacl" (No such file or directory)

The obvious cause of this is that I do not have sys-apps/acl installed as ACLs are not compiled into the filesystems in my kernel.

gvfs should not use ACL utilities if not present or at least support USE="-acl".

Downgrading to gnome-base/gvfs-1.10.1 solves this (for now).

Reproducible: Always

Steps to Reproduce:
1. emerge =gnome-base/gvfs-1.12.0
2. Open nautilus
3. Click a mountable volume that is not mounted yet
Actual Results:  
Volume is not mounted, fails with error message as stated above.

Expected Results:  
Should not depend on ACLs being available.

$ emerge --info
Portage 2.1.10.56 (default/linux/amd64/10.0/desktop/gnome, gcc-4.5.3, glibc-2.14.1-r3, 3.3.1-gentoo-vidar-amd x86_64)
=================================================================
System uname: Linux-3.3.1-gentoo-vidar-amd-x86_64-AMD_Phenom-tm-_II_X6_1090T_Processor-with-gentoo-2.1
Timestamp of tree: Tue, 17 Apr 2012 16:15:01 +0000
distcc 3.1 x86_64-pc-linux-gnu [disabled]
app-shells/bash:          4.2_p24
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.3, 3.2.2-r1
dev-util/cmake:           2.8.7-r5
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1
sys-apps/openrc:          0.9.9.3
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.10.3, 1.11.5
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.3-r2
sys-devel/gcc-config:     1.7
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.3 (virtual/os-headers)
sys-libs/glibc:           2.14.1-r3
Repositories: gentoo x-portage lordvan hacking-gentoo multimedia
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles news parallel-fetch protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="ftp://gentoo.imj.fr/pub/gentoo/         ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://ftp.tu-clausthal.de/pub/linux/gentoo/"
LANG="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j8 -l8"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /var/lib/layman/lordvan /var/lib/layman/hacking-gentoo /var/lib/layman/multimedia"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac acpi alsa amd64 amr avahi berkdb bluetooth branding bzip2 cairo cdda cdr cli colord consolekit cracklib crypt cups cxx dbus dirac divx dri dts dvb dvd dvdr emboss encode exif faac faad fam ffmpeg firefox flac fuse gdbm gdu gif gnome gnome-keyring gnome-online-accounts gstreamer gtk iconv idn ipv6 jpeg lame lcms libnotify lirc mad mmx mmxext mng modules mp3 mp4 mpeg mudflap multilib nautilus ncurses networkmanager nls nptl nptlonly ogg opengl pam pango pcre pdf png policykit ppds pppd pulseaudio readline realmedia samba schroedinger sdl session socialweb spell sse sse2 ssl startup-notification svg sysfs syslog tcpd theora tiff truetype udev udisks unicode usb v4l v4l2 vim-syntax vorbis wmp wxwidgets x264 xcb xinerama xml xorg xulrunner xv xvid zlib zsh-completion" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIRC_DEVICES="devinput" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Rafał Mużyło 2012-04-17 17:37:53 UTC
For one, it's not a gvfs requirement, it's inherited for udisks2.
Also, it's not that unreasonable.
Comment 2 Samuli Suominen (RETIRED) gentoo-dev 2012-04-17 19:38:53 UTC
Reported to upstream here:

http://bugs.freedesktop.org/show_bug.cgi?id=48842

And missing sys-apps/acl RDEPEND committed to Portage:

http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-fs/udisks/udisks-1.94.0.ebuild?r1=1.1&r2=1.2
Comment 3 Samuli Suominen (RETIRED) gentoo-dev 2012-04-17 19:42:58 UTC
Does it still fail after installing sys-apps/acl (even if kernel has the mentioned options disabled) ?
Comment 4 Martin Wegner 2012-04-17 20:39:34 UTC
Yes, it still fails with another error message, setfacl reports missing ACL support in the filesystem.

I will provide the exact error message as soon as I'm home again.
Comment 5 Small_Penguin 2012-04-17 20:53:27 UTC
Same problem here. ACLs for USB sticks reasonable? No way. Downgrading to gnome-base/gvfs-1.10.1 is a good workaround.
Comment 6 Brian Beardall 2012-04-17 20:59:41 UTC
I had acl installed prior and the acl support isn't working yet. A user will get the error message of "no such file or directory" because the devices are being mounted in "/run/media/$user". The user directories aren't being created automatically and so I have had to manually add needed user directories before mounting works for udisks.
Comment 7 Rafał Mużyło 2012-04-17 21:04:10 UTC
(In reply to comment #5)
> Same problem here. ACLs for USB sticks reasonable? No way.

ACLs are for mount points, not for the content.

(In reply to comment #6)
Does /run exist ? If so, is that a permission problem ?
What's the exact error ?
Comment 8 Brian Beardall 2012-04-17 23:02:57 UTC
The exact error is:

Command-line `setfacl -m "u:brian:rx" "/run/media/brian"' didn't exit normally: setfacl: /run/media/brian: Operation not supported
Comment 9 Brian Beardall 2012-04-17 23:29:45 UTC
I got the problem resolved. ACL support needs to be enabled in the kernel for tmpfs.
Comment 10 Samuli Suominen (RETIRED) gentoo-dev 2012-04-18 06:52:28 UTC
Quoting from NEWS of udisks-1.94.0:

------------
udisks 1.92.0
------------

[ .. ]

Changes since udisks 1.91.0:

[ .. ]

 David Zeuthen (6):
       Avoid using $XDG_RUNTIME_DIR/media for now
       Use /run/media/$USER for mounting

So that would require us to check for:

CONFIG_TMPFS_POSIX_ACL=y

From udisks ebuild and warn the user if the option is missing.
Comment 11 Samuli Suominen (RETIRED) gentoo-dev 2012-04-18 07:48:06 UTC
(In reply to comment #10)
> Quoting from NEWS of udisks-1.94.0:
> 
> ------------
> udisks 1.92.0
> ------------
> 
> [ .. ]
> 
> Changes since udisks 1.91.0:
> 
> [ .. ]
> 
>  David Zeuthen (6):
>        Avoid using $XDG_RUNTIME_DIR/media for now
>        Use /run/media/$USER for mounting
> 
> So that would require us to check for:
> 
> CONFIG_TMPFS_POSIX_ACL=y
> 
> From udisks ebuild and warn the user if the option is missing.

Now the ebuild will warn if that option is missing:

http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-fs/udisks/udisks-1.94.0.ebuild?r1=1.2&r2=1.3

From ebuild point of view, this bug should now be done. If you wish for sys-apps/acl and CONFIG_TMPFS_POSIX_ACL to become optional in udisks, go to the upstream bug and make your case there. It's not me who you have to convince.

http://bugs.freedesktop.org/show_bug.cgi?id=48842
Comment 12 Rafał Kłys 2013-04-01 17:55:06 UTC
Here is a bug in udisks bugzilla, about removing hard dependency on ACLs: https://bugs.freedesktop.org/show_bug.cgi?id=61162. It have patch attached, it looks like it's just a matter of doing fallback to behavior from previous udisks when acls are not present.
Comment 13 Samuli Suominen (RETIRED) gentoo-dev 2013-04-01 18:02:24 UTC
(In reply to comment #12)
> Here is a bug in udisks bugzilla, about removing hard dependency on ACLs:
> https://bugs.freedesktop.org/show_bug.cgi?id=61162. It have patch attached,
> it looks like it's just a matter of doing fallback to behavior from previous
> udisks when acls are not present.

See bug 458568.   Of course we will support non-ACL kernels soon as upstream does too, but not before.
Comment 14 Rafał Kłys 2013-04-01 18:13:15 UTC
Yes, I just wanted to leave here note for all those who will find this bug from udisks ebuild comment. Didn't spot the other bug, thanks.
Comment 15 David Heidelberg (okias) 2014-03-13 20:32:40 UTC
As udisks-2.1.x is lastest package in my ACL-less system, I send patch to mailing list, with --disable-acl build option, to avoid compiling with ACL support.