Komisches .gvfs Verzeichnis unter Linux

Eine Kollegin ist drüber gestolpert. Sie konnte ein df -h unter root problemlos ausführen, unter einem anderen User bekam sie folgende Fehlermeldung:

df: `/root/.gvfs`: Permission denied

Erst mal nicht so schlimm, es sei denn, der Aufruf erfolgt in einem Script und dieses bricht dadurch ab. Das Löschen des Verzeichnisses war nicht möglich. Ich konnte auch nicht reinsehen und es auch nicht unmounten 🙁

Nach ein wenig googeln konnte ich in Erfahrung bringen, dass dieses Verzeichnis Bestandteil eines virtuellen Filesystem, dem früheren GnomeVFS, ist. Eine kurze Info dazu findet sich auf Wikipedia.
In den Buglists der einschlägigen Distributionen wurde das Problem auch schon häufiger diskutiert.

Ich habe mir diesen Mount angesehen:

#  mount|grep gvfs
gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)

Und dann auch mal den fuse-daemon:

# ps ax|grep fuse
6180  pts/0    S+     0:00 grep fuse
11515 ?        Ssl    0:00 /usr/lib64/gvfs//gvfs-fuse-daemon /root/.gvfs

Was ist denn schon dabei, diesen Prozess jetzt einfach mal zu killen? Also habe ich das einfach mal ausprobiert und das Ergebnis war zufrieden stellend. Als „normaler“ User konnte das df-Kommando wieder ohne Fehlermeldung abgesetzt werden.

Das konnte jetzt aber noch nicht die langfristige Lösung sein. Da der FUSE-Daemon bei der Arbeit mit dem Gnome-Desktop dieses Verzeichnis immer wieder erstellt, musste es eine andere Lösung geben. in der Gnome Documentation Library bin ich dann fündig geworden. Die Umgebungsvariable GVFS_DISABLE_FUSE muss gesetzt werden. Aber wo und wie und für welchen User?
Ein gewisser `Ron` auf der Fedora-Mailing-Liste hatte dann die passende Lösung:

Er hat folgendes File erstellt:

/etc/X11/xinit/xinitrc.d/00-gvfs-disable-fuse.sh

und die Umgebungsvariable gesetzt:

GVFS_DISABLE_FUSE=1
export GVFS_DISABLE_FUSE

Wichtig ist der richtige Dateiname, da die Variable gesetzt sein muss, bevor das Script 00-start-message-bus.sh den DBUS startet.

Mit dieser Methode funktioniert die Interprozesskommunikation unter Gnome auch ohne das .gvfs-Verzeichnis.
Abschließend noch zwei Links auf die Bugliste von Gnome und Novell zu dem Thema.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Bitte folgende kleine Aufgabe lösen: * Time limit is exhausted. Please reload CAPTCHA.