DDext liaison SATA : un coup 'B', un coup 'C' :-(

Tout est dans le titre mais je voudrais savoir s’il y a un moyen de lui intimer l’ordre d’être toujours pareil :unamused:
:017 :017 :017

Peut-être en écrivant des règles udev, mais ça me paraît bien compliqué pour aucun bénéfice (et accessoirement je ne saurais pas te dire précisément comment faire).
C’est beaucoup plus simple et standard d’utiliser les UUID.

Oui mais ce (ces) DDext ne sont pas montés en permanence, seulement lors de mes sauvegardes.
Mon script n’aime pas les UUIDs, on avait déjà essayé.

EDIT :
ni les labels

J’ai pas suivi ce problème spécifique, mais je ne vois pas ce qui pourrait être bloquant.
Au pire tu peux toujours utiliser les liens symboliques créés par udev (/dev/disk/by-uuid/…), ils sont 100% compatibles avec la syntaxe /dev/sdXY habituelle.

Je ne sais pas quel est ton script, mais utiliser l’UUID est vraiment un jeu d’enfant et te ferait gagner bien du temps.

[list=]1. Obtenir l’UUID du disque. Pour cela, brancher le disque, puis taper la commande # blkid
Repérer la ligne correspondante au disque.

  1. Créer le point de montage : Par exemple, créer un dossier /media/mon_DD_externe : # mkdir /media/mon_DD_externe

  2. Recopier le numéro UUID dans le fichier /etc/fstab de façon similaire :

# Mon disque dur externe : UUID=29187662-06e4-4837-b686-18b8a85f4ab1 /media/mon_DD_externe ext3 defaults,noauto,user 0 0

  1. Monter le disque avec simplement la commande $ mount /media/mon_DD_externe. Pas besoin d’être root :slightly_smiling:
    [/list]

Je répète que mes DDext ne sont pas (et je ne veux pas qu’il soient) montés en permanence.
Voilà la partie de mon script de sauvegarde qui n’accepte pas les UUIDs à la place des /dev/sdxy

J’ai deux DDext différents et le script choisit lequel est connecté, selon le label trouvé dans /dev/disk/by-label/

[code]if [ -e “/dev/disk/by-label/TRUC1” ]

then
ddext=(’’ ‘/dev/sdbw’ ‘/dev/sdbq’ ‘/dev/sdbs ‘/dev/sdbd’)
systeme_fich=(’’ ‘ext3’ ‘ext3’ ‘ext3’ ‘ext3’)
elif [ -e “/dev/disk/by-label/TRUC2” ]
then
ddext=(’’ ‘/dev/sdbx’ ‘/dev/sdby’ ‘/dev/sdbz’ ‘/dev/sdba’)
systeme_fich=(’’ ‘ext4’ ‘ext4’ ‘ext4’ ‘ext4’)
fi[/code]

J’ai essayé plusieurs fois de remplacer cette ligne :
ddext=(’’ ‘/dev/sdbw’ ‘/dev/sdbq’ ‘/dev/sdbs ‘/dev/sdbd’)
par
ddext=(’’ ‘UUID= 1234etc.’ ‘/dev/sdbq’ ‘/dev/sdbs ‘/dev/sdbd’)
ou par
ddext=(’’ ‘LABEL=MACHINetc.’ ‘/dev/sdbq’ '/dev/sdbs ‘/dev/sdbd’)
Mais ça ne fonctionne pas

EDIT :
D’ailleurs, là n’est pas le problème car tout fonctionne quand j’ai un des deux Ddext connecté SI et seulement SI fdisk -l retourne sdb
S’il trouve sdc, label, UUID ou sdxx ne seront pas plus trouvés

Essaye comme je t’ai dit : remplace simplement chaque /dev/sdXY par le /dev/disk/by-uuid/1234… correspondant. :wink:

Leur présence dans le fstab n’entraîne pas systématiquement leur montage permanent à partir du moment où l’option noauto est utilisée (ce que thuban a bien pris soin de faire).
Mes deux disques externes (station d’accueil USB) sont bien renseignés dans mon fstab, et pourtant je ne les monte qu’à la demande.

J’ai édité le msg du dessus.

[quote=“ricardo”]D’ailleurs, là n’est pas le problème car tout fonctionne quand j’ai un des deux Ddext connecté SI et seulement SI fdisk -l retourne sdb
S’il trouve sdc, label, UUID ou sdxx ne seront pas plus trouvés
[/quote]
Ouhla oui là c’est un autre problème, autrement plus sérieux (et totalement anormal). :confused:
Une merde au niveau de tes règles udev peut-être ? Là je passe la main à quelqu’un à quelqu’un de plus compétent dans ce domaine, udev et moi on est pas super copains.

As-tu des infos spécifiques dans kernel.log / dmesg etc quand tu branches le disque et qu’il se retrouve à déconner ?

Je regarde ptet ce soir … tard.
Ce que je peux dire, c’est qu’en reboutant, DDext étant branché, je me retrouve bien en sdB et tout fonctionne, bien sûr.
Il me reste à intégrer les commandes dont on a discuté dans program ce matin mais ça ne devrait pas poser trop de problème car ça fonctionne bien en ligne à ligne.
Bon app !

[quote=“ricardo”]Je répète que mes DDext ne sont pas (et je ne veux pas qu’il soient) montés en permanence.
[/quote]
Je ne suis pas compétent concernant la suite de cette discussion, mais je voulais juste réagir à ce propos : Avec l’option “noauto” dans le fichier /etc/fstab, le disque ne sera monté que à la demande. Avec en plus l’option “user”, il n’y a pas besoin des droits root pour lancer mount/unmount sur ces disques.

[quote=“thuban”][quote=“ricardo”]Je répète que mes DDext ne sont pas (et je ne veux pas qu’il soient) montés en permanence.
[/quote]
Je ne suis pas compétent concernant la suite de cette discussion, mais je voulais juste réagir à ce propos : Avec l’option “noauto” dans le fichier /etc/fstab, le disque ne sera monté que à la demande. Avec en plus l’option “user”, il n’y a pas besoin des droits root pour lancer mount/unmount sur ces disques.[/quote]
Merci de me le rappeler, tu as raison mais si je fais, je vais me trouver avec le problème suivant :
J’utilise deux DDext différents pour mes sauvegardes (alternées) et quand je les monte (c’est le script qui le fait), c’est au même endroit /mnt/autre.
comment je vais écrire mes lignes dans fstab ?
deux lignes avec UUIDs différents, systèmes de fichier différents (ext3/ext4) MAIS avec le même chemin /mnt/autre
:017
Il acceptera ça Mr fstab :question:

EDIT : sinon, mon script a été modifié et, après un reboute et un gentil retour à SDB, les tests sont OK mais ça c’est pour la section program.

Je n’ai pas testé ce genre de manoeuvre, mais je ne vois pas de problèmes possibles, tant que tu ne montes pas les deux disques en même temps.

Oui, tu n’as pas tort et comme je n’ai qu’une seule prise SATA, il m’est matériellement impossible de les monter en même temps.
Je ferai le test dans la journée et je donnerai la réponse ici.
:006

Je viens de tenter en mettant mes deux disques externes sur le même point de montage dans le fstab, et de les monter à la suite.
Je pensais que lorsque je monterais le deuxième il me sortirait une erreur (au moins “le point de montage n’est pas vide”), mais non… En fait le dernier monté prend la place du premier, qui reste “caché” jusqu’à que je démonte le deuxième. C’est plutôt confusionnant… :confusion-questionmarks:

[quote=“syam”]Je viens de tenter en mettant mes deux disques externes sur le même point de montage dans le fstab, et de les monter à la suite.
Je pensais que lorsque je monterais le deuxième il me sortirait une erreur (au moins “le point de montage n’est pas vide”), mais non… En fait le dernier monté prend la place du premier, qui reste “caché” jusqu’à que je démonte le deuxième. C’est plutôt confusionnant:confusion-questionmarks:[/quote]
J’le connaissais pas cui-là mais y m’plait bien, j’le r’pass’rai. (ça fait drôle de retrouver mon accent parisien :laughing: )

Je reprends la question initiale après différents essais.
J’ai la réponse au “pourquoi” :
Départ après contrôle où tout est bon : DDmachine = sdA ; DDext = sdB
je branche DDext-1 (alim et sata)
je monte une partition – fdisk -l = sdB = OK
J’éteins DDext-1 en oubliant de démonter la partition
Je rebranche DDext-2 – fdisk -l = sdC = KO
J’essaie de réinitialiser udev -service udev restart- puis essai de nouveau = sans effet, toujours sdC.
Seule solution que j’ai trouvée pour retrouver un état normal ( sdB) = hibernation ou, a fortiori, reboute.
Voyez-vous un moyen pour ne pas aller jusqu’à cette extrémité ?
En dehors, bien entendu, de mettre un peu d’engrais au pied de mon neurone, de façon à ne pas oublier de démonter la partoche AVANT de déconnecter le DDext.
Cela ne m’arrive pas avec mon script de sauvegarde car le démontage se fait auto en fin de course. C’est seulement un oubli quand je monte une partoche pour une consultation diverse.