====== mount ====== * Objet : mount * Niveau requis : {{tag>débutant avisé}} * Commentaires : //Gérer le montage des partitions systèmes. // * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) * Suivi : {{tag>à-corriger}}(Montage d'un répertoire d'un serveur samba) * Création par [[user>smolski]] le //Pffff// ? * Testé par [[user>smolski]] le 22/09/2013 * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=1023 | c'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) ===== Introduction ===== La commande mount est immédiatement associée à la commande [[:doc:systeme:umount|umount]]. \\ C'est une commande destinée à la recherche et à la manipulation des partitions actives du pc. ===== mount - Lire les partitions montées ===== Lire le type des partitions montées : mount Donnera chez moi ceci : /dev/sda6 on / type ext3 (rw,errors=remount-ro) tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755) proc on /proc type proc (rw,noexec,nosuid,nodev) sysfs on /sys type sysfs (rw,noexec,nosuid,nodev) procbususb on /proc/bus/usb type usbfs (rw) udev on /dev type tmpfs (rw,mode=0755) tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev) devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620) /dev/sda1 on /boot type ext3 (rw) /dev/sda7 on /home type ext3 (rw) /dev/sda10 on /tmp type ext3 (rw) /dev/sda8 on /usr type ext3 (rw) /dev/sda9 on /var type ext3 (rw) /dev/sda5 on /media/stock type ext3 (rw) /dev/sdb2 on /media/disk-11 type ext3 (rw) /dev/sdc1 on /media/disk-1 type ext3 (rw) /dev/sdd1 on /media/disk-2 type ext3 (rw) nfsd on /proc/fs/nfsd type nfsd (rw) ===== Options ===== ==== mount -t [type] ==== Le paramètre à la suite de -t est utilisé pour préciser le type de système de fichiers que vous désirez monter. \\ Pour connaître tous les types qui sont gérés faire un : man mount Exemple de l'utilisation de cette option : mount -t ext3 /dev/sda1 /media/documents mount -t vfat /dev/sda2 /media/video ==== mount -a ==== Vous venez d'éditer votre fichier [[:doc:systeme:fstab|fstab]] afin d'y ajouter une partition que vous voulez voir monter automatiquement au démarrage de votre ordi. Parfait. Mais pour éviter de redémarrer votre machine juste pour cela, vous pouvez monter les partitions indiquées dans votre fichier fstab qui ne le sont pas déjà avec la commande suivante : mount -a Si aucun message d'erreur n'apparaît, vous devez maintenant être en mesure de voir le contenu de votre ou vos partition(s) dans l'arborescence de votre système. ===== Périphériques usb/sata ===== Merveilleusement, une clé usb ou un disque usb/sata qui se branche à chaud trouve également un répertoire autocréé dans ''/media/'', nommé selon l'identification UUID de ses partitions et les monte également sur le bureau, __avec les bons droits__ bien sûr ! \\ **Voir :** * la commande [[:doc:systeme:ls | LS]] pour lister ces droits, \\ * le [[:doc:systeme:droits-unix | À SAVOIR]] sur la notation des droits. ===== Automontage (fstab) ===== Pour un debianneux plus averti, possédant un [[:doc:systeme:fstab]] où une ligne de partition correctement rédigée mais commentée, après l'avoir décommentée (//ôter le// : #) on tape un : mount -a montera automatiquement la partition désignée. 8-) **ATTENTION** ! Dans ce cas, pensez bien à recommenter ensuite la ligne du fstab si ce périphérique ne reste pas connecté en permanence !\\ **Voir le** : [[:doc:systeme:fstab]] Au cas où nous désirons monter des partitions décommentées, une par une... les désigner une à une également ainsi : mount /dev/nomdepartition Ou bien : mount /chemin/de/montage Ou encore : mount -t type-partition /chemin/de/montage Le fera ! ===== Montage manuel ===== Après avoir créé un répertoire-adéquat... Tapez : mount filesystem-à-monter répertoire-adéquat Enfin, la commande : mount -t type-de-filesystem filesystem-à-monter répertoire-de-montage est aussi disponible (et parfois nécessaire !) pour préciser type et autres options... ===== Exemples ===== ==== Montage disque interne avec une partition ext4 - données user ==== Voici un exemple pour monter un disque interne portant des données propre à l'user dans une partition ext4. \\ Il faut d'abord créer le répertoire d'accueil, le mieux est de le mettre dans la racine de l'user : \\ Passer en root : \\ Voir le tuto du superutilisateur : [[doc:systeme:superutilisateur|superutilisateur]] Ici je choisis d'utiliser [[doc:systeme:su|la commande su]] : su - Et validez le passwd root. === Créer un répertoire user === Pour créer le répertoire qui contiendra les données de l'user, je choisis de l'appeler Stock((on peut l'appeler comme on veut bien sûr, sans espace est préférable, par exemple Stok1 et non Stock 1 films((qu'il faudrait alors écrire : Stock_1_films)) et de le mettre dans la racine de l'user : évitez les répertoires /media ou /mnt qui appartiennent par destination à root mkdir /home/user/Stock remplacer //user// par le nom de votre //user//. Ce qui créera un répertoire nommée //Stock// dans l'arborescence de vos ''Dossier personnel''.((Vous pouvez choisir tout autre endroit accessible à l'user..)) ;-) === Montage de la partition === Le montage d'une partition est du domaine de root, donc nous passons/restons en [[doc:systeme:superutilisateur|superadministrateur]] : su - Vous renseignez le passwd de root et validez : passwd root Il nous faut déterminer le disque et sa partition avec [[doc:systeme:fdisk|la commande fdisk]] \\ Par exemple : - fdisk -lQui nous liste les disques présents, où nous identifions le nouveau disque, par exemple //sdb1//((si vous n'aviez qu'un seul disque où vous avez intallé le système debian nommé par conséquent //sda1//...)) - Et on monte la nouvelle partition dans sa niche selon les normes utilisées dans ce tuto avec [[doc:systeme:mount|la commande mount]] ainsi :mount -t ext4 /dev/sdb1 /home/user/StockNous pouvons maintenant accéder aux données user contenus dans la partition //sdb1// du nouveau disque. === Montage permanent === Nous pouvons choisir de rendre ce montage permanent en utilisant [[doc:systeme:fstab|le fichier fstab]] Bingo ! ^_^ ==== Montage d'une partition windows ==== Ouvrir un terminal root((Voir : [[:doc:systeme:su | la commande su]])) Créer un répertoire de montage, par exemple : mkdir /media/Win Dans cet exemple, pour monter une partition (voir : [[:doc:systeme:partition | les partitions en détail]]) je prendrai la partition ''hda1'' Windows en système de fichier FAT (//vais me faire des amis ^^//) mount -t vfat /dev/hda1 /media/Win Pour une partition hda1 de type ntfs, ce sera : mount -t ntfs-3g /dev/hda1 /media/Win Voilà c'est tout simple, maintenant pour aller dans votre dossier, on fera un : cd /media/Win/C/ Et voilà vous pouvez accéder à votre partition $W. ==== Montage d'un CD-Rom ==== Passons au montage d'un cdrom : mount /dev/hdc1 /media/cdrom/ Pareil, pour naviguer dans votre cdrom allez maintenant dans le répertoire ''/media/cdrom'': cd /media/cdrom ==== Montage d'un lecteur de disquette ==== Passons au montage d'un lecteur de disquette : mount /dev/fd0 /media/floppy/ Pareil (encore !), pour naviguer dans votre disquette allez dans le répertoire /media/floppy. //Passons aux choses un peu plus sérieuse...// ==== Montage d'un répertoire nfs ==== Voir : * [[:doc:reseau:nfs | Configuration d'un serveur nfs]] ==== Montage d'un répertoire d'un serveur samba $W - SAMBA ==== Faisons un montage d'un répertoire $W sur un ordinateur distant. - Il faut avoir le serveur samba en fonctionnement pour pouvoir utiliser cette commande. - Il faut en connaître le login et le passwd pour l'utiliser. S'te blague... mount -t smbfs -o username=mattux //kameleon-facile/logs /media/logs/ Où : \\ - **kameleon-facile** est le nom du serveur samba. Ce nom peut être remplacé par l'adresse IP. - **username=mattux** mattux étant l'user sur windows. //Une p'tite s'plication s'impose ici, pour les débutants comme moi, petite main rédactionnelle...// La ligne de commande se rédige textuelle : mount -t smbfs -o username=mattux //kameleon-facile/logs /media/logs/ Un [ENTER] au clavier pour l'envoyer, puis vous écrivez votre //passwd// : ...... **** mot de passe (pas d'étoiles hein ! Ici c'est seulement pour faire action //virtuelle//..)[ENTER] //et crac ! le bazard est monté dans le répertoire !// Ou comme dit tux (le chef...) : \\ Voilà donc le répertoire **logs** du serveur kameleon-facile est monté dans le répertoire **/media/logs**. Vous voyez que je n'ai pas mis dans la commande l'option ''passwd'' car si je la mets __il enregistra le passwd__ dans les logs de votre ordinateur et cela peut créer une faille de sécurité, voilà pourquoi l'on maintient l'//invite// du passwd. ==== Partage de type Synology ==== Passons au montage d'un partage de disque réseau de type Synology. La commande est similaire à la précédente, sauf à deux exceptions : * la première : le type de système de fichiers doit être “cifs”, * et la seconde : le disque réseau devra être appelé par son adresse ip (de préférence une adresse ip fixe) mount -t cifs -o username=mattux //192.168.1.10/web /media/web/ Maintenant un peu plus compliqué : ==== Montage d'un ISO ==== Vous avez un fichier de type **.iso** mais vous voulez //vérifier le répertoire// avant de le graver. Je vous conseille de le monter pour ensuite y naviguer sans problème. mount -t iso9660 -o loop /home/mattux/debian4.iso /media/iso/ //Et voilà plus simple, tu peux pas !// :-) Pour monter un fichier **.iso** n'oubliez surtout pas de mettre : - **iso9660** - **loop** Sinon vous aurez des erreurs ^^. Bon ben voilà tout est dit, euhhh nan manque encore des choses : * N'oubliez pas de démonter le fichier .iso avant de le graver * N'oubliez pas de démonter le répertoire distant avant de quitter la session. ==== Montage par UUID ==== Créez un répertoire de montage auparavant. Par exemple, pour expliquer ce tuto : mkdir /home//test Remplacer par le pseudo de votre session //user//. Voir : * [[:doc:systeme:ls#option_recherche_uuid_des_disk_ls_-lh_dev_disk_by-uuid | la commande ls, recherche de l'UUID d'une partition]] * [[:doc:systeme:mkdir | La commande mkdir]] * [[:doc:systeme:blkid | La commande blkid]] Par exemple, tu remplaces le placement de la partition **racine** : ''/dev/sda1'' par son ''UUID''. \\ Soit : /dev/sda1 /home//test ext3 defaults,errors=remount-ro 0 1 devient : UUID=xxxxxxx-xxxxxxxxxxx-xxxxx /home//test ext3 defaults,errors=remount-ro 0 1 Voilà ! \\ Tous ces montages peuvent se démonter avec [[:doc:systeme:umount | la commande umount]] ! ==== mount -o remount,[droits] ==== Cette option permet de remonter une partition //à la volée// en modifiant temporairement les droits. \\ Par exemple, pour remonter le répertoire de montage d'une partition située dans /media/test en lecture seule, tapez : mount -o remount,ro /media/test ===== option BIND ===== === Attention, ça s'complique ! === Pour Débianeux aguerris... Y'a du réseau dans l'air ! Utiliser l’option **bind** avec la commande **mount** Après avoir monté un disque, par exemple dans /media/disque-test, il peut être intéressant de monter l'intégralité du contenu, ou un répertoire seulement, de ce disque dans un autre répertoire sans démonter /media/disque-test. Cela permet par exemple de « recopier » ce contenu dans un répertoire tout spécialement destiné à un partage FTP. Un utilisateur qui n'a pas accès au disque-test par le répertoire de montage peut ainsi se voir conférer des droits d'accès à un sous-répertoire du disque-test s'il a accès au répertoire lié (le répertoire lié et les fichiers qu'il contient doivent autoriser cet accès). Cela est possible avec l'option "bind" (bind signifie lier en anglais) qui s'utilise ainsi : mount --bind /media/répertoire-à-lier /home/user/répertoire-lié Ou : mount --bind /media/disque/répertoire /home/user/répertoire-lié Soyez attentif ! **DANGER** !!! \\ Attention : l'utilisateur du répertoire lié peut aussi modifier les données auxquelles il a accès, si les droits qui lui sont conférés par le répertoire lié et les fichiers qu'il contient le lui permettent. On peut démonter le répertoire lié par la commande : umount /home/user/répertoire-lié Lors d'un redémarrage les montages vont disparaître. Pour faire perdurer ces montages, il faut spécifier ce montage dans le fichier [[:doc:systeme:fstab]]. ===== Opérations de partage de sous arborescences. ===== Depuis Linux 2.6.15, il est possible de marquer un montage et ses sous-montages comme partagés, privés, esclaves, ou non-liables. * Un montage partagé permet de créer des miroirs de ce montage, ainsi les montages et les démontages dans n'importe quel miroir seront propagés aux autres miroirs. * Un montage esclave se propage seulement depuis le montage maître. * Un montage privé ne peut se propager. * Un montage non-liable est un montage privé qui ne peut pas être cloné lors d'une opération de bind. La sémantique de ces options est détaillée dans le fichier **Documentation/sharedsubtree.txt** des sources du noyau. mount --make-shared point_de_montage mount --make-slave point_de_montage mount --make-private point_de_montage mount --make-unbindable point_de_montage Les commandes suivantes permettent de changer //récursivement// le type de tous les montages dans un point de montage donné. mount --make-rshared point_de_montage mount --make-rslave point_de_montage mount --make-rprivate point_de_montage mount --make-runbindable point_de_montage