8

When I open the Gtk file dialog, there is a box called “Places” on the left-hand side which lists “Search”, “Recently Used”, a bunch of directories, and several things that appear to be volumes. I don't care about any of these entries, but for the most part I don't mind, except for one.

One of the volumes is on an external hard disk that spends most of its time spun down. Opening the Gtk file dialog makes this disk wake up (presumably because the application reads the disk size or label and that information isn't in the cache). I want this to stop.

Places screenshot

etch200808 is the label of a mounted filesystem. I have two 500MB filesystems mounted, one of them is on the external disk that I don't want to spin up. I'm not sure what the 412 GB one is: I have no filesystem anywhere near this size; I do have an LVM physical volume that's the right size. I have no idea why these are displayed and not any other volume of various types on this system.

How can I force this volume (or all volume, or all directories) off the “Places” box? Note that this isn't just about not being listed, this is about the mount point not being accessed, so that my disk doesn't spin up just because I wanted to open or save a file from a Gtk application.

I'm running Debian wheezy, but I want to know the answer for other distributions and generations as well — if only because this machine will be upgraded to jessie soon.

4

The GVFS documentation has a file about Controlling What is Shown in the User Interface. In short, you have two ways to do this:

  1. If it's in /etc/fstab, add x-gvfs-hide as one of the options (or, for older versions of udisks2, comment=gvfs-hide).
  2. Configure udev to set the $ENV{UDISKS_IGNORE}="1" for the relevant device. For example, here is how I hide logical volumes on my system (which are all things I don't want to mount via the GUI):

    ENV{DM_VG_NAME}=="Zia", ENV{UDISKS_IGNORE}="1"
    

    For a partition on a disk, reasonable things to match on would include $ENV{ID_WWN} or $ENV{ID_SERIAL} along with $ENV{ID_PART_ENTRY_NUMBER}. So, for example:

    ENV{ID_WWN}=="0x5000c5001c33a889", ENV{ID_PART_ENTRY_NUMBER}=="1", ENV{UDISKS_IGNORE}="1"
    

    should match the first partition on one of my disks and set it ignored. ID_FS_UUID would be another possibility.

If you're running udisks v. 1 (e.g, in Debian Wheezy), the udev environment variable to set is ENV{UDISKS_PRESENTATION_HIDE}="1". and it appears from Gilles' testing that the /etc/fstab method does not work reliably. Note that it's possible to be running both v. 1 and v. 2, in which case you'll have to set both.

  • I added KERNEL=="sd*", ENV{UDISKS_PRESENTATION_HIDE}="1", and after a udevadm trigger on one of the volumes, it's gone. Now to identify the others to remove them. I got nowhere with /etc/fstab; on another account, the Gtk application reads it and displays the non-mounted non-loop noauto entries, but ignores x-gvfs-hide and comment=gvfs-hide; but on my account the Gtk application communicates with udisks-daemon and I get this completely different set. – Gilles Apr 28 '15 at 21:25
  • @Gilles sounds like you're on udisks1 (that's the version that uses that presentation udev ENV entry). Odd that different users are acting differently. – derobert Apr 28 '15 at 21:29
1

Try to add comment=x-gvfs-hide option in fstab to hide mount points.

  • Where? As a mount option? I can't do that, mount complains of a bad option. – Gilles Apr 27 '15 at 23:48
  • @Gilles sorry, edited answer – user3417815 Apr 27 '15 at 23:54
  • From 'man fstab' comment or x-<name> for use by fstab-maintaining programs – user3417815 Apr 27 '15 at 23:55
  • No more error from mount, but it doesn't make any difference in the open dialog. I fear I made a mistake in my question though: what the dialog is showing may not be refering to mount points, but to volumes. I'll add a screenshot. – Gilles Apr 28 '15 at 0:00
  • @Gilles newer versions switched from comment=gvfs-hide to just an x-gvfs-hide option. mail.gnome.org/archives/commits-list/2012-January/msg10210.html That might work... Other than that, I think there is a udev solution I can post. – derobert Apr 28 '15 at 15:00

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.