====== 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