Le 04/04/2019 à 23:21, Étienne Mollier a écrit : > Vous l'avez demandé ; vous l'aurez. :)
Merci beaucoup. C'est exactement le genre de commentaires qui me permettent de progresser. > Ensuite, j'aurais un peu ventilé pour éclaircir le propos, par > exemple comme suit : > […] > Cette manière de présenter le script est très aérée, et me > semble très lisible. Par contre il est moins facile de tester les commandes qu'on met dans le script en les copiant/collant dans un terminal. > Ceci étant, quand on a des liens symboliques, c'est un peu > dommage de ne pas s'en servir, il est tout à fait possible > d'appliquer le `tune2fs` directement sur le disque par UUID. Le > système se charge de résoudre le lien symbolique vers le fichier > bloc correspondant pour l'opération : > > homedevice="/dev/disk/by-uuid/$homeUUID" HAHAHA ! En effet, celle la elle est belle… > Mais finalement, peut-être qu'on pourrait directement utiliser > le fichier bloc stockant /home tel que rapporté par la commande > `df`, plutôt que d'aller voir dans le fichier fstab, si > d'aventure il devait ne pas être à jour ? (À moins bien sûr que > ce ne soit à dessein.) > > #!/bin/bash > set -e > homedevice="$( > df /home \ > | grep -v '^Filesystem' \ > | cut -f1 -d' ' > )" > tune2fs -m 0 "$homedevice" > > Attention, si le /home n'est pas sur une partition séparée, > alors c'est la partition de / qui va se voir supprimer les blocs > réservés à root. Avec le premier script, si le /home n'est pas > dans le fstab, et que `set -e` est présent, alors le script > s'arrête. Il y a en effet un problème de savoir quelle est la référence a consulter. Je n'avais pas songé a l'éventualité que le montage fait selon le fstab au démarrage puisse etre changé ensuite. D'un autre coté utiliser la sortie de df risque de faire agir sur / comme tu l'a si bien dit. Peut-etre la bonne référence est-elle le fichier /etc/mtab ? #!/bin/bash set -e homedevice="$( grep "/home" /etc/mtab \ | cut -d" " -f1 )" tune2fs -m 0 "$homedevice" > Pour aller plus loin, l'Advanced Bash Scripting guide est pour > moi un incontournable : > > http://www.tldp.org/LDP/abs/html/index.html Je note le lien. J'ai déjà fait des recherches de tutos pour faire des scripts shell mais comme souvent je me suis perdu dans la profusion. Trop de tutos tuent les tutos et les liens vers les références de qualité deviennent un bien précieux.