====== Montage de données ====== Cette page explique : * Comment monter des données * Monter des répertoires vituels * Monter des partages samba * Faire en sorte d'avoir les accents Pour installer un serveur samba, voir [[linux:Samba]] ===== Monter des données ===== La commande //mount// : gandalf:~# mount --help Usage: mount -V : print version mount -h : print this help mount : list mounted filesystems mount -l : idem, including volume labels So far the informational part. Next the mounting. The command is `mount [-t fstype] something somewhere'. Details found in /etc/fstab may be omitted. mount -a [-t|-O] ... : mount all stuff from /etc/fstab mount device : mount device at the known place mount directory : mount known device here mount -t type dev dir : ordinary mount command Note that one does not really mount a device, one mounts a filesystem (of the given type) found on the device. One can also mount an already visible directory tree elsewhere: mount --bind olddir newdir or move a subtree: mount --move olddir newdir A device can be given by name, say /dev/hda1 or /dev/cdrom, or by label, using -L label or by uuid, using -U uuid . Other options: [-nfFrsvw] [-o options] [-p passwdfd]. For many more details, say man 8 mount . gandalf:~# Donc en pratique cela donne : mount -t ext3 /dev/hda5 /home/ Si vous voulez ajouter des options mount -t ext3 -o [options] /dev/hda5 /home/ Pour enregistrer le montage automatique des répertoires, il faut renseigner ///etc/fstab// : gandalf:~# cat /etc/fstab # /etc/fstab: static file system information. # # proc /proc proc defaults 0 0 /dev/hda2 / ext3 defaults,errors=remount-ro 0 1 /dev/hda1 none swap sw 0 0 /dev/scd0 /media/cdrom0 iso9660 ro,user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 /dev/hda5 /home ext3 defaults 0 2 /dev/hda6 /space ext3 defaults 0 2 /dev/hdc1 /space2 ext3 defaults 0 2 /dev/hdd1 /ftp ext3 defaults 0 2 /dev/hdb2 /backup/hdb2 ext3 defaults,ro 0 0 /dev/hdb3 /backup/hdb3 ext3 defaults,ro 0 0 /dev/hdb5 /backup/hdb5 ext3 defaults,ro 0 0 /dev/hdb6 /backup/hdb6 ext3 defaults,ro 0 0 gandalf:~# Les champs sont les suivants : - file system : la source - mount point : la destination - type : le type de données : ext3, smbfs, iso9660 ... - options : les eventuelles options - dump : si à 1 indique que le système doit être sauvegardé lorsqu'on utilise la commande //dump// - pass : indique l'ordre de vérification des systèmes (fsck), le sytème de base doit avoir la valeur 1, les autres la valeurs 2, 0 indique de ne pas vérifer le système au démarrage ===== Utiliser des labels ===== Il est possible d'utiliser des labels plutôt que le device absolu de la partition. C'est très pratique car l'ordre de détection des device peut changer, le label garantit de monter la bonne partition. Pour attribuer un label à une partition ext2 ou ext3, il suffit d'utiliser tune2fs : # tune2fs -L nom_label /dev/sda1 Pour voir les infos d'une partition # tune2fs -l /dev/sdb2 tune2fs 1.40-WIP (14-Nov-2006) Filesystem volume name: rootlinux Last mounted on: Filesystem UUID: 27aa1e9a-aa8d-4862-8cea-635cb613f487 Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal resize_inode dir_index filetype needs_recovery sparse_super large_file Filesystem flags: signed directory hash Default mount options: (none) Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 1831424 Block count: 3662820 Reserved block count: 183141 Free blocks: 2949142 Free inodes: 1763544 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 894 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 16352 Inode blocks per group: 511 Filesystem created: Tue Sep 11 12:17:02 2007 Last mount time: Fri Apr 3 21:31:52 2009 Last write time: Fri Apr 3 21:31:52 2009 Mount count: 13 Maximum mount count: 39 Last checked: Sun Feb 8 20:06:59 2009 Check interval: 15552000 (6 months) Next check after: Fri Aug 7 21:06:59 2009 Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 128 Journal inode: 8 First orphan inode: 1144671 Default directory hash: tea Directory Hash Seed: cfd5e9ed-f112-4a25-8442-379fac956e5e Journal backup: inode blocks # Pour modifier le nom de la partition de swap : # swapoff -a # mkswap -L swap /dev/sda1 # swapon -a Monter manuellement grâce aux labels en utilisant l'option -L : mount -L nom_label /mnt Dans ///etc/fstab// : LABEL=data /data ext3 defaults 0 2 ===== Utiliser les UUID ===== Debian utilise désormais les UUID par défaut. Pour lister les associations UUID et /dev/sdxy, utiliser la commande : ls -l /dev/disk/by-uuid/ Exemple d'utilisation dans ///etc/fstab// : # / was on /dev/sda1 during installation UUID=1ea62bb7-371d-4185-b193-cbddf9bb95ca / ext4 errors=remount-ro 0 1 ===== Monter des répertoires vituels ===== Il est possible de monter des répertoires dans d'autres répertoires. Le but de cette action est de disposer d'une pseudo arborescence répartie sur plusieurs disques. Contrairement à des liens symboliques l'utilisateur reste dans l'arborescence du répertoire racine, cela est très pratique dans le cas d'un FTP réparti sur plusieurs disques : * l'utilisateur est chrooté dans /ftp * grâce aux répertoires virtuels l'utilisateurs a accès aux autres disques sans avoir accès à / La commande permettant de monter des répertoires virtuels est : mount --bind [source] [destination] Par exemple : mount --bind /home/matthieu/photo /ftp/photo Il n'est malheureusement pas possible de mettre un bind dans ///etc/fstab///. Il faut donc ajouter les commandes au [[automation|script de démarrage]] ===== Monter des partages samba ===== ==== Packages ==== Sous [[linux:Debian]] il faut installer smbfs et smbclient qui fournissent respectivement : * le type smbfs pour mount * la suite d'outils samba dont smbclient ==== Smbclient ==== Cet utilitaire permet de diagnostiquer si les partages windows fonctionnent : livetux:/etc# smbclient -L gandalf Password: Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.20b-Debian] Sharename Type Comment --------- ---- ------- ftp Disk FTP data cdrom Disk CDROM de gandalf floppy Disk Disquette de gandalf IPC$ IPC IPC Service (gandalf server (Samba 3.0.20b-Debian)) ADMIN$ IPC IPC Service (gandalf server (Samba 3.0.20b-Debian)) Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.20b-Debian] Server Comment --------- ------- ALF-9CE262CF645 GANDALF gandalf server (Samba 3.0.20b-Debian) Workgroup Master --------- ------- WORKGROUP GANDALF livetux:/etc# ==== Smbfs ==== Afin d'utiliser les partages comme des répertoires classique, il faut les monter. Dans un premier temps, nous allons expliquer les montages manuels avec l'utilisateur root. Nous expliquerons ensuite comment les automatiser. Pour monter un répertoire il suffit d'utiliser la commande suivante : livetux:/# mount -t smbfs //gandalf/ftp /ftp Password: livetux:/# ll /ftp total 37 dr-xr-xr-x 1 root root 4096 2005-11-11 11:17 Appz dr-xr-xr-x 1 root root 4096 2005-11-11 11:17 BD dr-xr-xr-x 1 root root 4096 2005-11-11 11:17 Games dr-xr-xr-x 1 root root 4096 2004-01-11 08:43 lost+found dr-xr-xr-x 1 root root 4096 2005-11-11 11:17 MP3 dr-xr-xr-x 1 root root 4096 2005-11-11 11:17 OnDemand dr-xr-xr-x 1 root root 4096 2005-11-11 11:17 Series-Anime drwxr-xr-x 1 root root 4096 2005-11-11 11:22 upload dr-xr-xr-x 1 root root 4096 2005-11-11 11:17 Video -r-xr-xr-x 1 root root 453 2005-11-11 10:09 welcome.msg livetux:/# Les options utiles sont : * guest : monte un partage en tant qu'invité (pas de mot de passe) * username : nom d'utilisateur utilisé pour la connexion * password : mot de passe associé * uid : uid des fichiers montés * gid : gid des fichiers montés * fmask : Important : pour obtenir les caractères accentués : * iocharset=iso8859-1 ou utf8 (mettre le même que locales) * codepage=cp850 Exemple de configuration ///etc/fstab// correspondante : //bender/ftp /bender/ftp smbfs defaults,username=leela,password=***,iocharset=utf8,codepage=cp850,auto 0 0 ===== Bien gérer la langue française ===== Pour avoir des accents dans les noms de fichiers, certaines options sont parfois nécessaires. Il y a deux modes de configuration de Linux, avec iso8859-1 ou UTF8, cela se configure avec les locales (voir [[Linux Français]]). Il faut indiquer cette configuration à samba. Pour samba, il est important d'avoir les deux options : iocharset=iso8859-1,codepage=cp850 ou iocharset=utf8,codepage=cp850 Pour les cdrom (iso9660), il est important d'avoir l'option : iocharset=iso8859-1 ou utf8 ===== Links ===== * [[linux:]] * [[linux:config:]] * http://www.debian-resources.org/node/9