Udiskie: Unterschied zwischen den Versionen
Dirk (Diskussion | Beiträge) |
Dirk (Diskussion | Beiträge) |
||
Zeile 79: | Zeile 79: | ||
{{hc|1=~/.config/udiskie/config.yml|2= | {{hc|1=~/.config/udiskie/config.yml|2= | ||
notifications: | notifications: | ||
timeout: 10 | timeout: 10 # udiskie-Standard-Timeout | ||
device_mounted: -1 | device_mounted: -1 # Partition wird gemountet | ||
device_unmounted: -1 | device_unmounted: -1 # Partition wird wieder getrennt | ||
device_added: false | device_added: false # Gerät wurde erkannt | ||
device_removed: | device_removed: 5 # Erkanntes Gerät wurde entfernt | ||
}} | }} | ||
Version vom 3. März 2025, 16:16 Uhr
„Udiskie“ wurde von Dirk (Diskussion) als in Bearbeitung markiert. Um Bearbeitungskonflikte zu vermeiden, kontaktiere Dirk (Diskussion) bitte, bevor du den Artikel bearbeitest.
Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!
udiskie ist ein in Python geschriebener udisks-Wrapper, der es möglich macht, Userbezogen über automatische und regelbasierte Konfiguration, Befehlszeilen-Tools, oder ein grafisches Menü Wechseldatenträger zu mounten, zu verwalten, und auf diese zuzugreifen.
Installation
udiskie ist als
udiskie
in extra
verfügbar, und kann von dort
mittels Pacman
installiert werden.
pacman -S udiskie
# Für das Tray-Icon unter Wayland notwendig
pacman -S libappindicator-gtk3
Damit udiskie wie vorgesehen benutzt werden kann, muss der Programmaufruf udiskie
in das Autostartsystem der verwendeten grafischen Umgebung aufgenommen werden. Es sollte zudem ein Panel oder sonstiges vorhanden sein, das die Anzeige von Tray-Icons erlaubt.
Verwendung

Standardmäßig ist wird das Tray-Icon nicht angezeigt, sondern muss in der Konfiguration erst aktiviert werden (siehe dort). Bei Anschluss eines durch udiskie verwaltbaren Datenträgers bietet das Icon dann per Rechtsklick ein einfaches Menü an, über das die wichtigsten Optionen der aktuellen Instanz direkt eingestellt werden können.
Über „Abbild einhängen“ können Datenträger-Images (z.B. mittels dd erstellte Dumps, oder ISO-Dateien) gemountet werden. Und sofern ein Datenträger verschlüsselt ist, wird beim mounten automatisch nach dem Passwort gefragt.

Über den Menüpunkt „Verwaltete Geräte“ erreicht man alle Geräte, die über udiskie verwaltet werden können, von dort bekommt man dann je Gerät ein weiteres Menü, über das für alle verwaltbaren Partitionen auf dem Gerät entsprechende Optionen angezeigt werden.
Über „Aushängen“ wird die jeweilige partition ausgehangen, über das allgemeine „Auswerfen“ werden alle Partitionen ausgehangen. Geräte, die es unterstützen, können mittels „Abschalten“ auch stromlos gemacht werden.
Sofern man das Menü nicht benutzen möchte, kann man sich der mitgelieferten Befehlszeilen-Tools udiskie-info
, udiskie-mount
, und udiskie-unmount
bedienen.
udiskie-info --all --output '{ui_label} -> {mount_path}'
/dev/sda: SanDisk Ultra USB 3.0 -> /dev/sda1: CPBA_X64FRE_DE-DE_DV9 -> /run/media/username/CPBA_X64FRE_DE-DE_DV9 /dev/sda2: UEFI_NTFS -> /run/username/username/UEFI_NTFS
Dies listet eine Übersicht aller verwaltbaren Datenträger auf. Durch die Ausgabeanpassung mittels des Parameters --output
werden die Gerätedateien der Partitionen, sowie der Name des Datenträgers angezeigt, und auch direkt, wo diese gemountet sind.
udiskie-umount /run/media/username/UEFI_NTFS
/org/freedesktop/UDisks2/block_devices/sda2 wurde ausgehängt
Damit wurde die Partition UEFI_NTFS
ausgehängt. Analog dazu funktioniert das Einhängen von Datenträgern oder Datenträgerabbildern genau so mittels udiskie-mount /pfad/zur/datei
.
Konfiguration
Die Konfiguration von udiskie wird in der Datei ~/.config/udiskie/config.yml
in YAML vorgenommen. Optional kann eine entsprechend umformatierte Konfiguration auch in
JSON in der Datei
~/.config/udiskie/config.json
vorgenommen werden
Es können viele Optionen direkt beim Programmaufruf mittels udiskie
übergeben werden. Mittels udiskie --config=/pfad/zur/datei.yml
kann eine alternative Konfigurationsdatei benutzt werden, mittels udiskie --no-config
wird udiskie in der Standardkonfiguration geladen.
Die folgenden Beispiele gehen auf die Konfiguration mittels Standard-Konfigurationsdatei ~/.config/udiskie/config.yml
in YAML, und einem Aufruf von udiskie
ohne weitere Parameter ein. Die ausführliche Manpage von udiskie listet alle möglichen Befehlszeilenoptionen für udiskie und seine Zusatztools auf.
Generelle Programmkonfiguration
udiskie verfügt bereits über eine sinnvolle Standardkonfiguration, von daher muss für das Programm selbst nicht mehr viel eingestellt werden.
Zum einen wäre da das ganz sinnvolle Tray-Icon, ohne das udiskie nur per Befehlszeile zu bedienen wäre, und der Vorteil eines für Anwender leicht zu benutzenden Menüs damit entfallen würde. Zum anderen ist da die Möglichkeit, schnell und einfach ein Terminalfenster oder den Dateimanager im Mountverzeichnis der Partition zu öffnen.
Dies lässt sich im Abschnitt program_options
entsprechend definieren.
~/.config/udiskie/config.yml
program_options: tray: auto # Tray-Icon file_manager: thunar # Programm für den Dateimanager-Menüpunkt terminal: alacritty --working-directory # Programm für den Terminal-Menüpunkt
Bei Verwendung von auto
fürs Tray-Icon wird das Icon automatisch angezeigt, sobald ein verwaltbarer Datenträger erkann wurde. Das Icon wird ansonsten nicht angezeigt. Will man das Icon immer sehen, um zum Beispiel schnell auf „Abbild einhängen“ zugreifen zu können, so kann tray: true
verwendet werden. Will man das Icon nie sehen, lässt man die Konfiguration weg, oder kann der Vollständigkeit halber auch tray: false
setzen.
Wenn der Dateimanager geöffnet wird, wird der Pfad unter dem die Partition gemountet an die Angabe des Dateimanagers angehängt. Es wird also thunar /pfad/zum/mountpoint
ausgeführt. Will man den Dateimanagermenüeintrag nicht anzeigen, so kann man file_manager: false
verweden. Wenn man den Konfigurationseintrag weg lässt, wird xdg-open
benutzt.
Beim Aufruf des Terminals, wird der Pfad ebenfalls am Ende an den Befehl angehängt. Im Beispiel wird Alacritty mit dem --working-directory
-Parameter verwendet, was beim Aufruf dann zu alacritty --working-directory /pfad/zum/mountpoint
wird, wodurch Alacritty den Pfad an die Shell weitergibt, und diese sich damit in diesem Verzeichnis öffnet. Will man den Terminal-Menüpunkt nicht benutzen, so kann man die Konfiguration dazu einfach weg lassen. Standardmäßig wird kein Terminal verwendet.
Datenträger-Optionen
~/.config/udiskie/config.yml
device_config: - device_file: /dev/sda ignore: true - id_label: ARC_* options: [noexec]
Benachrichtigung über Aktivitäten
Da udiskie die FreeDesktop Notifications Specification benutzt, um Benachrichtigungen zu erstellen, können alle Benachrichtigungssysteme Verwendet werden, die dies ebenfalls unterstützen. In der Konfiguration kann man diverse Timeouts für die Anzeigedauer der Benachrichtigungen einstellen. Auch hier sei wieder auf die Manpage verwiesen, in der alle Aktionen gelistet werden.

~/.config/udiskie/config.yml
notifications: timeout: 10 # udiskie-Standard-Timeout device_mounted: -1 # Partition wird gemountet device_unmounted: -1 # Partition wird wieder getrennt device_added: false # Gerät wurde erkannt device_removed: 5 # Erkanntes Gerät wurde entfernt
Das Beispiel setzt zuerst einen Stnadardtimeout für alle Benachrichtigungen von udiskie, die nicht explizit konfiguriert sind, hier 10 Sekunden. Danach werden für verscheidene Aktivitäten andere Timeouts gesetzt. Mit -1
wird definiert, dass der Standard-Timeout des Benachrichtigungsdienstes genutzt werden soll. Mittels false
wird angegeben, dass für diese aktion keine Benachrichtigung verwendet werden soll.
Will man die Benachrichtigungen gar nicht benutzen, muss man nicht überall false
eintragen, sondern kann diese in der Programmkonfiguration generell ausschalten.
~/.config/udiskie/config.yml
program_options: notify: false
Hier muss man allerdings aufpassen: Wenn man ein Gerät trennt, und noch Daten auf das Gerät geschrieben werden oder die Snychronisierung des Schreibcaches mit dem Datenträger länger dauert, ist nicht offenbar, dass man den Datenträger entfernen kann. Die Benachrichtigung für device_unmounted
würde dies erkennbar machen, weil diese erst erscheint, wenn das Dateisystem ausgehangen wurde.
Troubleshooting
Flaches Menü unter Wayland

Die Konfigurationsoption menu: flat
erlaubt es eigentlich, ein verflachtes Menü (die Partitionsoptionen pro Partition alle in einem Menü, unabhängig des Datenträgers von dem sie kommen) über Linksklick auf das Icon zu öffnen.
Unter Wayland benutzt udiskie AppIndicator, dieses unterstützt die standardmäßige Variante des flachen Menüs jedoch nicht (#270: Flat menu style not working ).
Man kann udiskie mittels des Parameters --no-menu-update-workaround
starten, dies entfernt das Zwischenmenü „Verwaltete Geräte“ und listet alle verwaltbaren Datenträger direkt im Hauptmenü.
Checkboxposition anpassen/korrigieren
Standardmäßig werden die Checkboxen für die Benachrichtigungen und das automatische Einhängen eingerückt angezeigt, was es laut dem Entwickler ermöglicht, individuelle Icons für die Echeckboxen zu verwenden.
In den Issues #215 und #251
wird dies thematisiert, und auch der Workaround sowie die Gründe besprochen.
Will man die „normalen“ GTK-Checkboxen in der Checkboxspalte des Menüs haben, so kann man dies mittels --no-menu-checkbox-workaround
einstellen.