Montage automatique ssd externe usb

Bonjour,

J’ai récemment fait l’acquisition d’un petit ssd externe (samsung portable ssd t5) que j’ai formaté en ext4.

Seulement, comme c’est un ssd je me suis dit:; "ce serait bien de le monter (automatiquement à la connexion usb) avec les options de montage discard, noatime et nodiratime (bien que cette dernière implique cette avant-dernière apparemment).

J’ai donc récupéré l’uuid avec lsblk et ai créé un point de montage dans /etc/fstab qui pointait dans /media/monuser/nomdossiermontagessd/, dossier créé à la main et accessible r+w.

Tout allait bien, j’ai pu m’amuser à tester les débits d’environ 400Mo/s (me rappelle plus les chiffres exacts) via fio:

fio --filename=/dev/sdc --direct=1 --rw=read --bs=64k --ioengine=libaio --iodepth=64 --runtime=120 --numjobs=4 --time_based --group_reporting --name=throughput-test-job --eta-newline=1 --readonly.

Ensuite j’éteinds le pc, je dors (ça m’arrive de temps en temps :stuck_out_tongue:), le lendemain je le rallume et là, patatras, j’explique:

  • j’ai mon son qui sort via le bluetooth (et un petit script maison qui empêche les hps de se mettre en veille)
  • ma connexion internet est uniquement via le wifi
  • mes claviers et souris sont en sans fil (probablement en bluetooth aussi mais via un dongle, ce qui coince si je ne démarre pas les clavier-souris avant de démarrer le pc mais je m’habitue)
  • j’ai vu que le ssd était encore branché, je le débranche avant d’allumer le pc
  • je démarre le pc
  • patatras: message d’erreur du bluetooth (pas compris pourquoi, je vois pas le rapport avec le ssd), le pc refuse de démarrer comme s’il manquait une partition système inaccessible
  • je rebranche le ssd
  • je reboote
  • reboot nickel
  • je supprime mon entrée dans /etc/fstab et le dossier dans /media/monuser/nomdossiermontagessd/
  • je reboote encore
  • reboot nickel, mes modifs ont été annulées mais du coup je monte pas mon ssd avec discard, noatime et nodiratime

Avez-vous une idée de comment faire correctement le montage automatique à la connexion du cable avec les options discard, noatime et nodiratime svp?

Merci d’avance! :wink:

Je propose de faire un montage automatique non pas quand vous connectez le câble USB mais quand vous voulez utiliser le SSD, c’est-à-dire utiliser automount.
Dans cette optique, vous ne touchez pas à /etc/fstab qui contient les montages permanents pour un système fonctionnel, mais vous installez le paquet autofs et vous configurez votre montage.
Je vois que vous êtes parti sur un montage sur /media/$USER/repSSD ce qui est logique dans une optique d’un accès depuis l’expolorateur de fichiers lié à votre environnement de bureau. C’est effectivement très raisonnable en espérant que ledit explorateur de fichiers n’ait pas tendance à vouloir à tout prix monter tout périphérique détecté (dans /media/…) et le démonter que sur demande explicite de l’utilisateur.
Avec autofs le montage est très rapide et le démontage se fait automatiquement après x minutes d’utilisation. Je ne sais pas dans quelle mesure cette logique qui limite au maximum le temps d’utilisation du SSD est bien implémentée dans l’explorateur de fichiers.

Comme de toute évidence, vous n’avez pas encore vraiment utilisé le SSD, je vous suggère (si vous n’avez pas besoin d’accéder aux fichiers depuis un Windows par exemple) de gérer ce genre de stockage avec LVM.
Dans ce cas, vous pouvez mettre tout le SSD dans un seul volume physique qui sera ensuite englobé dans un volume logique ( extern_vg par exemple ). Si vous ajoutez plus tard un autre appareil de stockage vous étendez la capacité de extern_vg très facilement.
Vous pouvez aussi mettre à profit la souplesse de LVM en créant autant de volumes logiques que vous voulez (par exemple photos_lv, videos_lv … ). Toujours prévoir un espace libre à la fin du disque (du pv) pour pouvoir étendre un volume logique et sin système de fichiers associé.
Avec ce système, pas besoin d’aller chercher les UUID la partition cherchée s’appelle /dev/extern_vg/videos_lv par exemple.

Si l’explorateur de fichiers (truc que je n’utilise pas) vous empêche de démonter automatiquement vos disques externes sous le prétexte qu’il s’occupe de tout ce qui est sous /media et qu’il monte toujours tout ce qui est détecté, vous pouvez contourner en créant $HOME/disques_extet des sous-répertoires qui seront montés et démontés automatiquement ce qui limite drastiquement l’utilisation (et donc l’usure) des disques externes.
En ce qui concerne l’option discardil y aurait beaucoup à dire. Je ne me rappelle plus du nom que ce qu’il faut activer pour configurer la gestion de l’usure d’un disque SSD fixe mais cela fonctionne bien.

mon fstab (pas de disque externe)

fp2@debpacha:~$ tail -11 /etc/fstab 
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
/dev/mapper/pacha_vg-root_lv /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
UUID=6b25f8fd-780e-4be5-bcf4-e121061b3b60 /boot           ext4    defaults        0       2
/dev/mapper/pacha_vg-data_lv /data           ext4    defaults        0       2
/dev/mapper/pacha_vg-home_lv /home           ext4    defaults        0       2
/dev/mapper/pacha_vg-tmp_lv /tmp            xfs     defaults        0       0
/dev/mapper/pacha_vg-var_lv /var            xfs     defaults        0       0
/dev/mapper/pacha_vg-swap_lv none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0
fp2@debpacha:~$

Certaine « partitions » sont sur un disque dur, d’autres sont sur un SSD.

Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة


F. Petitjean
Ingénieur civil du Génie Maritime.

« Celui qui, parti de rien, n’est arrivé nulle part n’a de merci à dire à personne !! »
Pierre Dac

« Je préfère le vin d’ici à l’au-delà »
Pierre Dac

LVM sur un support amovible ? C’est une plaisanterie ?

LVM sur plusieurs supports amovibles ? Oui, c’est forcément une plaisanterie.

Ne vous (décapitez? :stuck_out_tongue:) disputez pas…

Je précise quand même que mon ssd sera utilisé comme une grosse clé usb et ne doit pas faire partie des dossiers système donc branché ou pas ça n’empêche en rien le bon fonctionnement du système.

Bonjour,

Est-ce que l’on peut voir la ligne du fstab en question ?
As-tu bien pensé à mettre l’option nofail pour le cas où le disque n’est pas disponible ?

Sinon tu peux faire cela avec deux unités systemd mount et automount

@DarkGagan
Assez déroutant ces échanges.
Pour détendre un peu tout ça, je t’aurai bien demandé la marque de tes haut-parleurs et leur impédance. J’aurai en fait été plus curieux de voir le contenu du fstab que tu évoques, avant de savoir si le bluetooth fonctionne ou pas.
Je vais juste donner une piste, et tu pourras faire des recherches externes éventuellement plus sereinement.

Si ton objectif est d’utiliser ton SDD externe comme une clef USB, oublie le fstab.
Pour moi, le fstab, c’est du système (c’est ma règle).
Brancher/débrancher une clef, c’est du user. C’est donc le système de montage de la session utilisateur qui doit s’en occuper (analysez ce que font par défaut ou KDE, ou gnome, ou XFCE etc).

Je serais toi (ce qui est impossible, c’est juste une expression), je me pencherais du côté des options de montage à écrire à l’aide de tune2fs.
# tune2fs -o <....> /dev/sdXY

Pour commencer,

# tune2fs -l /dev/sdXY
man tune2fs

~-~
Ambiance générale:
« Il est plus facile de tromper les gens, que de les convaincre qu’ils ont été trompés »
Marc Twain

Ben je l’ai effacée sans la noter…
C’était quelquechose du style

UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx none           ext4    discard,noatime,nodiratime 0       2

il me semble

Hélàs non… (2e! mais quel boulet! :p)

C’est une barre de son LG SL6Y: https://www.lg.com/fr/lg-soundbar/lg-SL6Y-barre-de-son

Je pense comme toi mais j’avais réussi à y mettre une entrée pour une clé usb sur une précédente version de Debian, me rappelle plus ce que j’y avait mis (y’a eu beaucoup de dodos depuis…)

vaut mieux pas! :rofl:

Pour recentrer ce que je cherche à faire, et donc ce ne sera pas dans /etc/fstab (je vais suivre ton conseil, merci @Verner!), je vais utiliser mon ssd comme une grosse clé usb (formattée en ext4) mais je veux qu’au branchement à l’usb les options discard, noatime et nodiratime soient passées pour le montage de la partition (il n’y en a qu’une sur tout le ssd). Idéalement sans devoir à chaque fois taper des commandes. Peut-être un petit script lancé automatiquement au démarrage qui tente de détecter régulièrement l’uuid de la partition et s’il le trouve, la monte « tout comme il faut bien que je veux »?

Demander la marque des haut-parleurs, c’était une grosse blague en fait… J’essayais de m’introduire dans le contexte quelque-peu embrouillé de ton message.
L’humour est un vrai métier (…).

Pour tune2fs, regarde aussi les options -u et -g.
En ext4 monté en user, tu vas probablement avoir des problèmes de droit d’écriture.

Il y a plein d’autres possibilités, mais autant commencer par le plus simple.
Ensuite, il est possible de faire un service systemd (une sorte de script bien placé), ou une règle udev qui reconnaîtra parfaitement ton device SSD, et saura ce qu’il faut faire avec.

J’oubliais: si tu as créé toi-même des répertoires de point de montage sous /media, supprime les.

Comme dirait Kev Adams: « Pas compris. » :stuck_out_tongue:

Je serais jamais embauché là-dedans alors :smiley:

Je sais, du fait que j’ai formaté avec Gparted, donc en root, j’ai du faire un chown -R monuser:monuser '/media/monuser/nomdossiermontagessd'

« none » comme point de montage, ça ne va pas le faire. On réserve ça pour le swap, qui n’est pas un système de fichiers et se monte pas. Il faut mettre un vrai répertoire qui existe.

As-tu au moins vérifié avec un montage manuel par mount que l’option discard était supportée avec ce disque USB dans les logs du noyau ?

Les permissions d’un système de fichiers ext4 sont indépendantes du montage en user. Ce n’est pas du FAT, exFAT ou NTFS.

Non, je pars du principe que tous les ssd d’il y a moins de 10ans le supportent, mais maintenant je pense que je me trompe :face_with_raised_eyebrow:

Je ne sais pas si quand l’option n’est pas supportée cela crée des problèmes genre plantages ou problèmes d’écriture voire lecture mais j’en n’ai pas eu.

Les SSD récents avec interface SATA ou NVMe, oui. Mais un SSD avec interface USB doit supporter le protocole UAS (USB Attached SCSI, pilote uas) et pas seulement le protocole USB Mass Storage (pilote usb-storage) pour pouvoir lui transmettre les commandes TRIM/discard.

Si l’option discard n’est pas supportée, cela ne provoque pas d’erreur mais seulement un message dans les logs du noyau.

D’après cette page: https://www.anandtech.com/show/11719/samsung-portable-ssd-t5-review-64layer-vnand-debuts-in-retail et cette page: https://www.techradar.com/reviews/samsung-portable-ssd-t5 et cette page: http://www.cdrlabs.com/reviews/samsung-t5-500gb-portable-solid-state-drive/all-pages.html

Il est dit que « the drive supports UASP (USB-attached SCSI Protocol) that should provide increased performance for sequential transfers » et « the support for TRIM via the UASP (USB attached SCSI) protocol ».

Donc logiquement on est bons de ce côté, c’est un coup de chance :stuck_out_tongue:

Pas forcément de la chance, c’est peut-être très courant mais je n’ai aucune expérience avec les SSD USB d’où ma réserve.