Montage systemd-automount : reset sous Thunar et Gnome-Files

Tags: #<Tag:0x00007f63e517e260> #<Tag:0x00007f63e517df40>

Bonjour à tous,

J’ai un problème : la fenêtre de Nautilus (ou Gnome Fichiers) bouge toute seule et change le fichier que je sélectionne.

Reproduction du symptôme

J’ai un disque dur monté avec systemd-automount (cf. /etc/fstab ci-dessous). Cela fonctionne bien.
Voici comment je reproduis le problème :

  1. J’ouvre thunar (ou Fichiers, alias nautilus).
  2. Je navigue vers le point de montage (/mnt/home-black).
  3. Je navigue vers un sous-répertoire (ex. /mnt/home-black/Partitions/Vivaldi).
  4. Je redescends d’un répertoire dans l’arborescence (/mnt/home-black/Partitions).
  5. Avec la molette ou les touches du clavier, je fais défiler la vue et descends dans la fenêtre qui liste les fichiers et dossiers.

Au bout de quelques secondes, j’entends le disque dur qui grattouille pendant ~0,5 - 1,0s. Alors, la fenêtre bouge toute seule et vient pointer sur le répertoire /mnt/home-black/Partitions/Vivaldi.

Ce problème est particulièrement gênant au quotidien car j’ai besoin de manipuler des fichiers dans le navigateur de fichiers.

Le problème est à peu près le même sous Gnome-Files / Nautilus. Au lieu de pointer sur /mnt/home-black/Partitions/Vivaldi, cela pointe carrément sur /mnt/home-black/Partitions/ en descendant dans l’arborescence.

Ressources

Je me tiens à disposition pour livrer plus d’infos si besoin.

Extrait de Fstab :

# Partitions des autres disques
# /dev/sdc est un WD Black avec des partitions linux. Ancienne méthode de montage :
#UUID=ed5ac6e5-9fc3-4d28-b0b5-0c4833249c71 /mnt/home-black ext4 defaults        0       2
# Systemd-automount :
# Le timeout faible sert à ne pas attendre les liens cassés.
# idle-timeout : Si le périphérique n'a pas été utilisé pendant tant de temps, systemd va tenter de le démonter.
# device-timeout : Lors d'un accès, si le périphérique n'est pas accessible, systemd va attendre ce temps avant d'abandonner.
#
# Après avoir modifié fstab et pour recharger la nouvelle configuration, faire :
# sudo systemctl daemon-reload && sudo systemctl restart local-fs.target
#
# On peut également démarrer ou arrêter un point de montage ainsi :
# # systemctl restart __point-de-montage__
# où __point-de-montage__ est donné par la commande suivante :
# # systemd-escape -p --suffix=automount /mon/point/de/montage
#
# Pour /mnt/home-black, cela donne :
# # systemctl restart "mnt-home\x2dblack.automount"
# (ne pas oublier les guillemets au besoin, \x2d est l'échappement  du tiret)


UUID=ed5ac6e5-9fc3-4d28-b0b5-0c4833249c71 /mnt/home-black ext4  noauto,nofail,x-systemd.automount,x-systemd.idle-timeout=2s,x-systemd.device-t
imeout=30ms

Extrait de # mount lorsque le disque est démonté :

# mount
[...]
systemd-1 on /mnt/home-black type autofs (rw,relatime,fd=58,pgrp=1,timeout=2,minproto=5,maxproto=5,direct,pipe_ino=200925)
[...]

Extrait de # mount lorsque le disque est monté :

# mount
[...]
systemd-1 on /mnt/home-black type autofs (rw,relatime,fd=58,pgrp=1,timeout=2,minproto=5,maxproto=5,direct,pipe_ino=200925)
/dev/sdb8 on /mnt/home-black type ext4 (rw,relatime,x-systemd.automount,x-systemd.idle-timeout=2s)
[...]

D’avance, un grand merci !!
Le Barde

Le problème se produite qu’avec le disque ajouté, tu ne reproduis pas ce problème avec l’arborescence de ton home par exemple ?

Si oui peut-être une incidence avec les temps d’accès et un timeout quelque pars qui te ferais reprendre la navigation de ce file système en ignorant certaines commandes reçues (cf les coup de molette).

PS : le disque monté sur /mnt, j’aurai plutôt choisi /media/ mais ça n’est pas lié au problème actuel.

Bonjour @Clochette, merci de ta réponse !

Du coup je viens de vérifier. Avec un autre disque ça fait pareil.

Voici ma configuration : ma tour contient un unique SSD pour faire tourner le système. J’ai une configuration fanless, donc c’est silencieux. Ensuite, pour avoir plus de place disponible j’ai un dock branché à ma tour en USB3, que j’allume quand j’ai besoin (films, rushes vidéo, etc.).

Avec systemd-automount, j’ai configuré trois disques dur de 1 To. Home-Black était l’un d’entre eux (un WD black).

Et donc, avec la même configuration, le WD Blue que j’ai fait tout pareil.

NB : Effectivement, mon /mnt est un résidu de mes antiques configurations, à l’époque on mettait tout là je crois.

J’ai l’impression que c’est udisksd qui est à l’origine du disque qui gratte. Je vais investiguer ça :

~$ ps aux | grep udisks
root          636  0.0  0.1 395496 16800 ?        Ssl  oct.26   0:03 /usr/libexec/udisks2/udisksd
lebarde      1770  0.0  0.1 499016 16912 ?        Ssl  oct.26   0:00 /usr/libexec/gvfs-udisks2-volume-monitor
lebarde      6309  0.0  0.0   6396  2244 pts/2    S+   11:25   0:00 grep udisks

Bonjour,

Pourquoi passer ce paramètre ?

x-systemd.idle-timeout=2s

J’ai l’impression que c’est cela qui cause tes problèmes…

Configures an idle timeout. Once the mount has been idle for the specified time, systemd will attempt to unmount. Takes a unit-less value in seconds, or a time span value such as « 5min 20s ». Pass 0 to disable the timeout logic. The timeout is disabled by default.

Salut @anon70622873,

Merci de ta réponse !
Effectivement, on dirait que c’est ça qui pose souci. Cependant, le x-systemd.idle-timeout sert justement à démonter automatiquement les systèmes de fichiers qui ne sont plus utilisés. Automount permet de les monter dès que ceux-ci ont besoin d’être utilisés.

Actuellement j’allume mon dock USB quand j’en ai besoin. Lorsque j’ai fini d’utiliser les données des disques, j’éteins le dock, tout simplement. Si le démontage n’est pas automatique, alors je ne peux plus faire ça.

Est-ce que tu penses qu’il existe un moyen de démonter automatiquement sans utiliser un idle-timeout ?

Bon, si je ne veux pas utiliser un idle-timeout, j’ai l’impression qu’il faut utiliser un StopWhenUnneeded.

Comme dit ici, j’ai essayé StopWhenUnneeded=true. Pour cela, j’ai créé deux fichiers /etc/systemd/system/mnt-blackhome.mountet /etc/systemd/system/mnt-blackhome.automount, que voici :

/etc/systemd/system/mnt-blackhome.mount
#####################################
[Unit]
Description=WD Black : Mount

[Mount]
What=/dev/disk/by-uuid/ed5ac6e5-9fc3-4d28-b0b5-0c4833249c71
Where=/mnt/blackhome
Type=ext4

[Install]
WantedBy=multi-user.target
/etc/systemd/system/mnt-blackhome.automount
[Unit]
Description=WD Black : Automount
StopWhenUnneeded=true

[Automount]
Where=/mnt/blackhome

[Install]
WantedBy=multi-user.target

J’ai fait systemctl daemon-reload && systemctl restart local-fs.target && systemctl status mnt-blackhome.automount && systemctl start mnt-blackhome.automount.

Ça marche pour monter, mais ça ne démonte pas…