Monter deux disques dur externes sur le même répertoire

Bonjour,

Je début un peu en Raspberry et mon problème est le suivant :
Je souhaiterais monter deux disques dur sur le même chemin « /media/HD » mais pas simultanément.
Est-ce que c’est possible?

Pour expliquer le contexte, j’ai un code python qui enregistre des données sur le disque dans ce directory.
L’idée serait qu’une fois le disque plein je puisse le retirer, en brancher un nouveau à la place et cela de manière automatique sans avoir besoin de se reconnecter à la Pi en ssh (les conditions techniques ne le permettant pas).

J’ai donc rajouté deux lignes pour le montage dans le fichier /etc/fstab avec les bons UUID et paramètres.
Le soucis c’est que les disques ne se montent pas toujours automatiquement.
Séparément et en commentant la ligne inutile cela fonctionne donc je peux retirer l’hypothèse que les lignes soient fausses.

Merci de votre aide

Théoriquement c’est possible mais il ne faut pas utiliser le UUID, qui est unique a l’appareil (disque dur ici). Il faudrait plutot que tes disques dur utilise toujours le même chemin soit « /dev/sdb » par exemple et avoir une structure de partition (genre /dev/sdb1 dispo sur les deux) et système de fichier identique.

Il ne devront jamais être connecté en même temps.

Le problème que tu risque de rencontrer est que si tu démarre avec un, le débranche et connect l’autre, tu n’aurauras pas le chemin unique, le premier sera le « sdb » et le second disque, même si le premier est déconnecté, sera « sdc » dans cette session.

Dans ce cas, je te suggère de travailler avec une redirection selon le disque dur qui va créé un lien symbolik vers le chemin.

  • Tu charge le disque dur et le monte, par exemple /mnt/hdd1.
  • A la détection du disque dur (je te laisse le plaisir de chercher comment détecter la connexion sur Google) et un script va supprimer le lien symbolique actuel pour recréer avec le nouveau point de montage. Ton lien symbolic serait par exemple /home/pi/hdd qui pointerais sur le /mnt/hdd1
  • Lors d’une déconnection, tu peux laisser le lien symbolic ou le supprimer (ce que je conseil pour ainsi indiqué son absence.)
  • Lorsque tu branchera le disque dur #2, tu le monte en /mnt/hdd2, et refait la démarche du deuxième point de cette liste.

L’idée est que le script va détecter le hdd, le monter (si il n’est pas monté auto, selon ta config) et créer un lien symbolic qui fait que /home/pi/hdd va pointer vers /mnt/hdd1 ou /mnt/hdd2 selon celui qui est présent.

Attention, je te déconseille fortement d’utiliser le répertoire /media pour créer un point de montage, c’est un dossier système, le dossier /mnt ou dans le /home serait que tes seul place viable pour le faire, que ce soit un point de montage ou un lien symbolic.

Les dossiers /etc /dev /media /bin /sbin /usr /var sont des dossiers système, éviter de les utiliser sauf si c’est clairement leur place (par exemple le /var/www pour l’espace de Apache pour les documents internet). Le dossier /dev est pour tout le matériel connecté et /media est les clés USB, Disque dur et CD/DVD Drive connecté, géré par le système de base.

Tes dossiers ou tu peux travailler « publiquement » pour tes utilisateurs et /mnt pour le montage et /opt pour des options et applications (un fourre tout de tes codes accessibles entre les utilisateurs)

1 « J'aime »

Merci beaucoup pour toutes ces informations c’est vraiment très clair.
Je vais me pencher dessus et faire toutes les recherches et les modifications en conséquences.

Bonjour,

Je penses que pour palier au problème des UID ou au nom de périphériques qui change, tu peux utiliser par label ce qui sera plus simple dans un sens.

Chaque disque dur aura le même LABEL ce qui donnera la même commande concrètement

Le binaire e2label est pour les partitions ext4 par exemple. (J’ai que testé sur EXT4)