Un système de fichiers résidant sur un périphérique SATA/PATA ou SCSI doit être monté manuellement pour y accéder. La commande mount permet à l'utilisateur root de monter manuellement un système de fichiers. Le premier argument de la commande mount spécifie le système de fichiers à monter. Le deuxième argument spécifie le répertoire cible dans lequel le système de fichiers est rendu disponible après son montage. Le répertoire cible est appelé point de montage.
La syntaxe générale pour monter un système de fichiers avec mount est :
# mount [-t file_system_type] [-o mount_options] device mount_point_directory
En utilisant mount, vous pouvez remplacer les paramètres par défaut dans /etc/fstab. Par exemple, la saisie de ce qui suit monte la partition /dev/sdd1 dans le répertoire /data :
# mount /dev/sdd1 /data
Vous ne spécifiez généralement pas le type de système de fichiers car il est reconnu automatiquement (en utilisant des nombres magiques dans le superbloc, ou simplement en essayant différents types de système de fichiers; voir man mount pour plus de détails).
Voici quelques-unes des options que vous pouvez utiliser lors du montage d'un système de fichiers avec la commande mount ou en les saisissant dans /etc/fstab.
- remonter . Cette option entraîne le montage à nouveau des systèmes de fichiers déjà montés. Lorsque vous modifiez les options dans /etc/fstab, vous pouvez utiliser remount pour incorporer les modifications.
- rw, ro . Ces options indiquent si un système de fichiers doit être inscriptible (rw) ou uniquement lisible (ro).
- synchronisé, asynchrone . Ces options définissent l'entrée et la sortie synchrones (sync) ou asynchrones (async) dans un système de fichiers. Le paramètre par défaut est asynchrone.
- une heure, pas une heure . Ces options définissent si le temps d'accès d'un fichier est mis à jour dans l'inode (atime) ou non (noatime). L'option noatime devrait améliorer les performances.
- nodev, développeur . L'option nodev empêche les fichiers de périphérique d'être interprétés comme tels dans le système de fichiers.
- noexec, exec . Vous pouvez interdire l'exécution de programmes sur un système de fichiers avec l'option noexec.
- nosuid, suid . L'option nosuid garantit que les bits suid et sgid du système de fichiers sont ignorés.
Certaines options n'ont de sens que dans le fichier /etc/fstab. Ces options incluent les éléments suivants :
- auto, pas d'auto . Les systèmes de fichiers définis avec l'option noauto dans le fichier /etc/fstab ne sont pas montés automatiquement au démarrage du système.
- utilisateur, nouser . Cette option permet aux utilisateurs de monter le système de fichiers. Normalement, c'est un privilège de l'utilisateur root.
- valeurs par défaut . Cette option entraîne l'utilisation des options par défaut rw, suid, dev, exec, auto, nouser et async.
Les options noauto et utilisateur sont généralement combinés pour les supports amovibles tels que les lecteurs de disquettes ou de CD-ROM.
Démonter un système de fichiers
Une fois qu'un système de fichiers est monté, vous pouvez utiliser la commande umount (sans « n ») pour démonter le système de fichiers. Vous pouvez démonter le système de fichiers en utilisant umount avec le périphérique ou le point de montage.
Par exemple, pour démonter un système de fichiers (dev/sdd1) monté sur /data, vous pouvez saisir l'une des commandes suivantes :
# umount /data
ou
umount /dev/sdd1
Afin de démonter le système de fichiers, aucune application ou utilisateur ne peut utiliser le système de fichiers. S'il est utilisé, Linux considère le système de fichiers comme étant "occupé" et refusera de démonter le système de fichiers et produira l'erreur ci-dessous.
# umount /data umount: /data: target is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))
Le démontage n'est pas possible si le point de montage est accédé par un processus. Pour que umount réussisse, le processus doit arrêter d'accéder au point de montage.
Le lsof La commande répertorie tous les fichiers ouverts et les processus qui y accèdent dans le répertoire fourni. Il est utile d'identifier les processus qui empêchent actuellement le système de fichiers de se démonter correctement.
# lsof /data COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 1160 root cwd DIR 253,1 180 4194369 /root rsyslogd 566 root cwd DIR 253,1 224 64 / ...
Vous pouvez également utiliser la commande fuser pour obtenir les ID de processus des processus en cours d'exécution sur le point mpunt que vous souhaitez démonter.
# fuser -cu /data
Vous pouvez également tuer tous les processus sur le point de montage à l'aide de la commande fuser.
# fuser -ck /data
Une fois les processus identifiés, une action peut être entreprise, comme attendre que le processus se termine ou envoyer un signal SIGTERM ou SIGKILL au processus. Dans ce cas, il suffit de démonter le point de montage.
# umount /dataRemarque :une cause courante d'occupation du système de fichiers sur le point de montage est que le répertoire de travail actuel d'une invite de shell se trouve sous le point de montage actif. Le processus accédant au point de montage est bash. Le passage à un répertoire en dehors du point de montage permet de démonter le périphérique.
Forcer le démontage des systèmes de fichiers
Il peut y avoir des moments où le système (noyau) voit le système de fichiers comme occupé, peu importe ce que vous essayez de faire. Dans ces cas, vous pouvez entrer umount -f pour forcer le système de fichiers à se démonter. Cependant, nous vous recommandons de ne l'utiliser qu'en dernier recours, car il y a probablement une raison pour laquelle le noyau pense que le système de fichiers est toujours monté.
# umount -f /mount_point
Afficher les systèmes de fichiers actuellement montés
Vous pouvez afficher les systèmes de fichiers actuellement montés en saisissant la commande mount. Des informations similaires aux suivantes s'affichent :
# mount sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel) proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=487424k,nr_inodes=121856,mode=755) /dev/vda1 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota) ...
Vous pouvez également afficher ces informations dans le fichier /proc/mounts .
Comprendre le fichier /etc/fstab sous Linux