Unter Debian 13 mit GNOME kann der Standard-Dateimanager Nautilus bei vielen Dateien, Netzwerkfreigaben oder zahlreichen Mountpoints deutlich langsamer reagieren.
Die Geschwindigkeitseinbußen werden durch ein Zusammenspiel von GLib und GLibc verursacht. Bei Aufrufen von g_file_query_info() mit bestimmten Attributen führt GLib interne statfs()-Aufrufe durch. Schlägt dieser Aufruf fehl – was bei Netzwerkdateisystemen oder bei vielen Einträgen in /proc/mounts vorkommt –, initiiert GLibc einen aufwendigen Fallback-Mechanismus. Dies führt zu messbaren Verzögerungen bei Dateioperationen.
Betroffen sind häufig:
- große Verzeichnisse
- SMB-, NFS- oder SSHFS-Freigaben
- Systeme mit vielen Mountpoints (Docker, Flatpak, Snap)
Nemo verwendet eine ältere GLib-Versionierung und eine eigene Thumbnail-Factory, wodurch dieses Problem nicht auftritt.
Nemo installieren und als Standard-Dateimanager setzen
|
1 2 3 4 |
sudo apt update sudo apt install nemo nemo-fileroller nemo-preview nemo-share xdg-mime default nemo.desktop inode/directory xdg-mime query default inode/directory |
Prüfen:
|
1 |
xdg-mime query default inode/directory |
Ausgabe:
|
1 |
nemo.desktop |
Desktop-Icons an Nemo übergeben
GNOME verwendet normalerweise Nautilus für die Desktopverwaltung. Diese Funktion wird nun Nemo zugewiesen.
|
1 2 |
gsettings set org.gnome.desktop.background show-desktop-icons false gsettings set org.nemo.desktop show-desktop-icons true |
Nautilus-Hintergrunddienst deaktivieren (optional)
Nautilus läuft standardmäßig dauerhaft als D-Bus-Dienst im Hintergrund. Der Dienst wird wie folgt deaktiviert
|
1 |
systemctl --user mask --now org.gnome.Nautilus.servic |
Firefox und moderne Dateidialoge auf Nemo umstellen
Firefox, Chromium und andere moderne Anwendungen nutzen das XDG Desktop Portal für Dateiauswahldialoge. Standardmäßig wird das GNOME-Portal (und damit Nautilus) verwendet. Die Installation und Umleitung auf das GTK-Portal kann folgendermaßen umgesetzt werden:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# Benötigtes Paket installieren sudo apt install xdg-desktop-portal-gtk # Konfigurationsverzeichnis anlegen mkdir -p ~/.config/xdg-desktop-portal # Portal-Konfiguration erstellen cat > ~/.config/xdg-desktop-portal/portals.conf << 'EOF' [preferred] default=gtk org.freedesktop.impl.portal.FileChooser=gtk EOF # Portal-Dienst neu starten systemctl --user restart xdg-desktop-portal |
Firefox-Konfiguration
In Firefox wird die Nutzung der Portal-Schnittstelle aktiviert:
about:configöffnen- Nach folgendem Eintrag suchen:
|
1 |
widget.use-xdg-desktop-portal.file-picker |
- Wert auf
1setzen - Firefox neu starten
Danach verwendet Firefox Nemo-basierte GTK-Dateidialoge.
Optional: Nautilus-Aufrufe automatisch auf Nemo umleiten
Einige Programme starten weiterhin direkt nautilus. Dafür kann ein Wrapper eingerichtet werden:
|
1 2 3 4 5 6 7 8 9 10 |
mkdir -p ~/.local/bin cat > ~/.local/bin/nautilus << 'EOF' #!/bin/bash exec nemo "$@" EOF chmod +x ~/.local/bin/nautilus echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.profile |
Nach erneutem Einloggen werden direkte Nautilus-Aufrufe automatisch an Nemo weitergeleitet. Das kann wie folgt überprüft werden:
|
1 2 3 4 5 6 7 8 |
# Standard-Dateimanager prüfen xdg-mime query default inode/directory # Nautilus-Prozesse prüfen ps aux | grep nautilus # Portal-Status prüfen systemctl --user status xdg-desktop-portal |
- Der Wrapper kann u.U. Systemfehler verursachen, da alle Nautilus Aufrufe über den Wrapper an Nemo weitergeleitet werden.
Rückkehr zu Nautilus
Die ursprüngliche Konfiguration kann einfach wieder aktiviert werden:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<span class="token comment"># Nautilus als Standard setzen</span> xdg-mime default nautilus.desktop inode/directory <span class="token comment"># Desktop-Icons zurück an Nautilus</span> gsettings <span class="token builtin class-name">set</span> org.gnome.desktop.background show-desktop-icons <span class="token boolean">true</span> gsettings <span class="token builtin class-name">set</span> org.nemo.desktop show-desktop-icons <span class="token boolean">false</span> <span class="token comment"># Nautilus-Dienst reaktivieren</span> systemctl <span class="token parameter variable">--user</span> unmask org.gnome.Nautilus.service systemctl <span class="token parameter variable">--user</span> start org.gnome.Nautilus.service <span class="token comment"># Wrapper-Skript entfernen (falls vorhanden)</span> <span class="token function">rm</span> ~/.local/bin/nautilus <span class="token comment"># Portal-Konfiguration zurücksetzen</span> <span class="token function">rm</span> ~/.config/xdg-desktop-portal/portals.conf systemctl <span class="token parameter variable">--user</span> restart xdg-desktop-portal |
Firefox: about:config – widget.use-xdg-desktop-portal.file-picker auf 0 oder 2 zurücksetzen.
by Speefak