Frage Ein eingehängtes Gerät in Nautilus verstecken


Ich benutze Ubuntu Precise. In meinem /etc/init.d habe ich ein Bash-Skript, das beim Start folgendes macht:

  1. Loop mountet ein Image auf einem NTFS-Laufwerk. Dieses Image enthält ein ext2-Dateisystem mit einem angegebenen Verzeichnis Zuhause

  2. Es macht dann ein mount mit einer Option --rind, die das mount Zuhause innerhalb der Bilddatei auf /Zuhause.

Funktioniert bisher gut, obwohl offene Dateien in /Zuhause verhindert nicht, dass die Loop-Mount-Bereitstellung aufgehoben wird.

Leider zeigt Nautilus das Loop-Mount in der Liste der Wechsellaufwerke mit einem Symbol an, das es einem Benutzer ermöglicht, das Loop-Mount zu deaktivieren. Das Entfernen des Laufwerks, auf dem / home installiert ist, ist für ein gut funktionierendes System nicht förderlich.

Wie kann ich Nautilus davon abhalten, dieses Gerät anzuzeigen?

Mann udisk (7) sagt, dass eine der 'Einflussreichen Geräteeigenschaften in der udev-Datenbank' ist:

UDISKS_PRESENTATION_HIDE

Wenn dieser Wert auf 1 gesetzt ist, ist dies ein Hinweis für die Software auf Präsentationsebene, dass das Gerät dem Benutzer nicht angezeigt werden soll.

Ich nehme an, dass das Festlegen dieser Eigenschaft in der / dev / loop Nautilus mitteilen würde, das Gerät nicht anzuzeigen.

Wie würde ich UDISKS_PRESENTATION_HIDE in einem Bash-Skript einstellen?


5
2018-06-18 23:43


Ursprung


Antworten:


Die Antwort sollte nun aktualisiert werden (zumindest für Ubuntu 12.10). Sie müssen das nicht mehr schreiben (wie ursprünglich in der anderen Antwort geschrieben):

KERNEL=="sda1", ENV{UDISKS_PRESENTATION_HIDE}="1"
KERNEL=="sdb2", ENV{UDISKS_PRESENTATION_HIDE}="1"

Stattdessen sollten Sie dies schreiben:

KERNEL=="sda1", ENV{UDISKS_IGNORE}="1"
KERNEL=="sdb2", ENV{UDISKS_IGNORE}="1"

Der Rest ist der gleiche :)


6
2018-04-14 14:09



Sie müssen folgendes schreiben /etc/udev/rules.d/99-hide-disks.rules:

KERNEL == "sdxy", ENV {UDISKS_PRESENTATION_HIDE} = "1"

Woher sdxy ist die Partition innerhalb /dev. Sie können die Partition leicht finden, indem Sie sie ausführen mount (Aber ich denke, du weißt es schon).


4
2017-07-05 18:14



Ein anderer Ansatz besteht darin, das Gerät an einem anderen Ort als unter / media zu installieren. Ich habe unter / run gewählt, wodurch / mnt für temporäre Mounts verwendet werden kann.


0
2017-07-09 19:13



Entsprechend der udisk Seite auf Archlinux Wiki und um die anderen Antworten zusammenzufassen:
Fügen Sie eine Datei mit dem Namen hinzu /etc/udev/rules.d/99-hide-disks.rules 

Für udisk:

# hide the device sda1
KERNEL=="sda1", ENV{UDISKS_PRESENTATION_HIDE}="1"

Für udisk2:

# hide the device sda1
KERNEL=="sda1", ENV{UDISKS_IGNORE}="1"

# hide the device sda2 using UUID
# use: blkid /dev/sda2    to get the UUID of /dev/sda2
ENV{ID_FS_UUID}=="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXX", ENV{UDISKS_IGNORE}="1"

0
2018-04-05 14:56