montage automatique de tout lecteur externe sous / media avec accès en lecture / écriture à tout le monde

9

Voici mon problème:

Mon ordinateur possède 4 ports USB et exécute Ubuntu 12.10. Chaque jour, je reçois des clés USB différentes, je me branche sur mon ordinateur, je leur lis / écris des données, puis je les renvoie .

Ce que je veux, c'est monter automatiquement tout USB que je branche sur mon ordinateur. Le premier USB détecté ira à /media/HDD1, le second ira à /media/HDD2et ainsi de suite. Ou ce serait bien si USB branché sur port1 va /media/HDD1, USB branché sur port2 va /media/HDD2, et ainsi de suite.

Le chemin /median'est pas important mais j'aimerais que les répertoires HDD1-4 soient au même endroit afin que je puisse y accéder facilement.

Les clés USB sont normalement ext2 mais parfois j'obtiens également des clés USB FAT32, NTFS.

Je veux également que l'USB soit monté sans me connecter à Ubuntu car j'accède souvent à /media/HDD..partir d'un autre ordinateur Windows.

Comment puis je faire ça? Quel changement de udevrègles fstabdois-je faire? Les suggestions sont grandement appréciées.

kiwi
la source

Réponses:

7

Eh bien, ici, nous pouvons utiliser la même astuce que celle utilisée fstabpour les supports optiques (alias CD et DVD):

/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0

La première colonne indique le système de fichiers, je suis sûr que la vôtre USB auront des valeurs fixes, laisse supposer que tout ce qui suit sdaest un USB, et puisque vous ne pouvez avoir 4 de USB en même temps, la liste va de sdb, sdc, sddet sde.

$ ls /dev/sd*
/dev/sda   /dev/sdb   /dev/sdb3  /dev/sdb6  /dev/sdc  /dev/sdf
/dev/sda1  /dev/sdb1  /dev/sdb4  /dev/sdb7  /dev/sdd
/dev/sda2  /dev/sdb2  /dev/sdb5  /dev/sdb8  /dev/sde

(Dans mon cas, j'utilise un lecteur de mémoire, donc mes pilotes USB commencent sdgmais permettent de continuer.)

Maintenant, nous supposons que chaque USB disposent d' un seul une partition, les lignes dont nous avons besoin, pour notre fstab, sont:

/dev/sdb1
/dev/sdc1
/dev/sdd1
/dev/sde1

Ensuite, vous avez dit que vos points de montage devaient être fixes, donc après avoir créé vos répertoires, ajoutons-les:

/dev/sdb1 /media/HDD1
/dev/sdc1 /media/HDD2
/dev/sdd1 /media/HDD3
/dev/sde1 /media/HDD4

Étant donné que vous pouvez avoir presque tous les types de systèmes de fichiers, utilisons le autoso fstab devinez le type de fichier à utiliser:

/dev/sdb1 /media/HDD1 auto
/dev/sdc1 /media/HDD2 auto
/dev/sdd1 /media/HDD3 auto
/dev/sde1 /media/HDD4 auto

Ok, maintenant résumons les options, qui seront les mêmes pour les CD avec le plus d'autorisations de lecture / écriture:

/dev/sdb1 /media/HDD1 auto rw,users,noauto,allow_other,umask=0
/dev/sdc1 /media/HDD2 auto rw,users,noauto,allow_other,umask=0
/dev/sde1 /media/HDD3 auto rw,users,noauto,allow_other,umask=0
/dev/sde1 /media/HDD4 auto rw,users,noauto,allow_other,umask=0

rwindique que nous voulons une autorisation de lecture et d'écriture, usersautorise tout utilisateur à monter un périphérique, noautoempêche que le pilote soit monté automatiquement lorsqu'il mount -aest appelé, comme il le fait au démarrage, empêchant les ERREURS et les AVERTISSEMENTS de démarrage, allow_otherpermet à d'autres que l'utilisateur qui a monté le pilote de ont les mêmes autorisations et umask=0empêchent les umask par défaut d'être appliqués.

Maintenant, les 2 seuls champs restants sont à peu près juste l' dumpordre et l' fsckordre, qui pourraient être dans les 0deux, nous laissant avec le résultat final:

/dev/sdb1 /media/HDD1 auto rw,user,noauto,allow_other 0 0
/dev/sdc1 /media/HDD2 auto rw,user,noauto,allow_other 0 0
/dev/sdd1 /media/HDD3 auto rw,user,noauto,allow_other 0 0
/dev/sde1 /media/HDD4 auto rw,user,noauto,allow_other 0 0

Avec cela, chaque fois que vous branchez un périphérique USB, il sera automatiquement monté dans le point de montage sans l'intervention de l'utilisateur. Vous devez modifier selon vos besoins.

Braiam
la source
merci Braiam. Je ne sais pas si le changement de fstab peut automatiquement monter des clés USB sans avoir besoin de redémarrer ou d'utiliser la commande "mount". J'ai trouvé une solution simple d'utilisation des autofs. Non seulement il se monte automatiquement, mais il prend également en charge le démontage automatique après un temps prédéfini sans action, ce qui est très utile dans mon cas
Kiwi
Non, non. Comme je l'ai dit au début, j'utilisais la même astuce que fstab utilise pour les CD / DVD qui ne nécessite ni rootni mountni redémarrage.
Braiam
3

Voici la solution que j'ai trouvée:

Tout d'abord, j'installe autofs sur mon PC Linux:

sudo apt-get install autofs

Il créera un fichier auto.master sous /etc/auto.master

Ajoutez la ligne suivante à la fin de ce fichier:

/media/mount /etc/auto.mount --timeout=10 --ghost

/media/mountest un répertoire dans lequel je souhaite monter tous les disques externes. /etc/auto.mountest le fichier à mettre dans les règles de montage. --timeout=10signifie qu'il démontera automatiquement le lecteur après 10 secondes d'inactivité. --ghostsignifie qu'il laisse toujours une image du contenu lorsqu'il est démonté. Modifiez cette ligne en fonction de vos besoins.

Modifiez le /etc/auto.mountfichier et ajoutez les lignes suivantes:

disk1  -fstype=auto,sync  :/dev/sdc1
disk2  -fstype=auto,sync  :/dev/sdd1
disk3  -fstype=auto,sync  :/dev/sde1
disk4  -fstype=auto,sync  :/dev/sdf1
disk5  -fstype=auto,sync  :/dev/sdg1
disk6  -fstype=auto,sync  :/dev/sdh1
disk7  -fstype=auto,sync  :/dev/sdi1
disk8  -fstype=auto,sync  :/dev/sdj1
DVD    -fstype=iso9660,ro :/dev/sr0

Pour les disques normaux tels que USB ou eSATA -fstype=auto,sync. J'ai 8 ports USB + eSATA donc je déclare 8 points de montage ici. Mon PC a déjà sdaet sdbcomme disques locaux donc je mets sdc1-> sdj1pour les périphériques externes. Ce sont en fait des nœuds de périphériques /devlorsque vous branchez vos lecteurs. Une exception à la règle de montage est le montage de DVD comme vous le voyez ci-dessus.

Lorsque j'insère des disques, ils apparaissent sous la forme disk1, disk2, ... dans le /media/mountrépertoire et se démontent automatiquement après 10 secondes. Je n'ai pas besoin de toucher mon PC et je peux y accéder depuis un autre endroit (comme une machine virtuelle)

kiwi
la source