Vous êtes sur la page 1sur 5

UCD-FS

TP LINUX

TP .1 : SYSTEMES DE FICHIERS LINUX


1. SYSTEMES DE FICHIERS Un systme de fichiers est une faon d'organiser et de stocker une arborescence sur un support (disque, disquette, cd ...). Chaque systme dexploitation propritaire a dvelopp sa propre organisation. On peut installer plusieurs systmes dans des partitions d'un mme disque. Linux possde son systme appel ext2 mais peut en grer d'autres. La liste en est donne dans /proc/filesystems L'utilisateur peut donc accder sous Linux d'autres systmes de fichiers, comme DOS, Vfat, provenant d'un priphrique ou import par le rseau. Comme pour l'utilisateur tout est fichier, tous les systmes de fichiers quels que soient leur emplacement physique doivent tre intgrs dans l'UNIQUE arborescence logique du systme Linux. Cette arborescence peut donc tre construite (et voluer) partir de diverses partitions qui peuvent tre situes sur plusieurs disques. Cela ralise une intgration et une abstraction plus pousse que dans le monde Windows o les partitions et lecteurs auquels sont affectes les lettres A: C: D: ... demeurent des entits spares. Naturellement la partition sur laquelle est situ le rpertoire racine joue un rle particulier. Le processus de montage, avec sa commande mount, dcrite plus loin, est le moyen de faire correspondre parties de l'arborescence et partitions physiques de disque. Il permet de plus d'affecter tout systme extrieur (disquette, cdrom, dk zip, rp. rseau ...) un rpertoire cr pour cela dans l'arborescence. Il suffira ensuite de se dplacer ce rpertoire, appel point de montage, en fait un rpertoire "d'accrochage", pour accder ses fichiers (bien sr, conformment aux permissions que possde lutilisateur) 2. LES DIFFERENTES CATEGORIES DE FICHIERS fichier texte fichier excutables fichiers rpertoires courrier, sources des programmes, scripts, configuration, etc programmes en code binaire ce sont des fichiers conteneurs qui contiennent des rfrences d'autres fichiers. Vritable charpente de l'arborescence, ils permettent d'organiser les fichiers par catgories situs dans /dev, ce sont les points d'accs prpars par le systme aux priphriques. Le montage va raliser une correspondance de ces fichiers spciaux vers leur rpertoire "point de montage". Par exemple, le fichier /dev/hda permet l'accs et le chargement du 1er disque IDE ce sont des fichiers qui ne contiennent qu'une rfrence (un pointeur) un autre fichier. Cela permet d'utiliser un mme fichier sous plusieurs noms sans avoir le dupliquer sur le disque.

fichiers spciaux

fichiers symboliques

liens

3. ARBORESCENCE DU SYSTEME LINUX La racine est le sommet de la hirarchie des rpertoires. Il s'agit d'une arborescence logique, indpendante de l'implantation physique des divers sous-rpertoires, qui peut s'tendre sur plusieurs partitions incluses sur un ou plusieurs disques, et mme sur des disques rseaux. Sa structure est standard, avec des extensions imposes par les distributions. Toute modification est de la comptence exclusive de l'administrateur, l'exception des rpertoires personnels situs dans /home. Il est recommand de respecter cette architecture standard. 3.1. LISTE DES REPERTOIRES PRINCIPAUX ET LEUR ROLE / /bin /boot /dev Le rpertoire racine les fichiers excutables (en binaire) (initialisation du systme + commandes "essentielles") le noyau vmlinuz et les fichiers de dmarrage rpertoire de fichiers spciaux, qui servent de canaux de communication avec les priphriques (disques, adaptateur rseau, cartes son etc...) 1

UCD-FS

TP LINUX

/etc

/home /lib /mnt /opt /root /sbin /tmp /usr /var /proc

les fichiers de configuration du systme et les principaux scripts de paramtrage /etc/rc.d scripts de dmarrage du systme /etc/X11 scripts de configuration du serveur X /etc/sysconfig configuration des priphriques /etc/cron description des tches priodiques effectuer /etc/skel fichiers recopis dans le rp. personnel d'un nouvel utilisateur la racine des rpertoires personnels des utilisateurs les bibliothques et les modules du noyau la racine des points de montage des systmes de fichiers priphriques ou extrieurs (cd, disquette, nfs ..). lieu d'installation d'applications supplmentaires (comme starOffice, java ..) rpertoire personnel du super-utilisateur root les fichiers excutables pour l'administration du systme stockage des fichiers temporaires programmes accessibles tout utilisateur; sa structure reproduit celle de la racine / donnes variables lies la machine (fichiers d'impression, traces de connexions http, smb .. dans /var/log) ce pseudo-rpertoire contient une "image" du systme ( /proc/kcore est l'image de la RAM

4. PARCOURIR ET LISTER LES REPERTOIRES Les commandes indispensables pour visiter l'arborescence. ls ls rep cd chemin cd .. cd file fichier pwd mkdir rep rmdir rep 4.1. PRATIQUE Faire de nombreux essais avec ces commandes. Faire le lien entre la commande file et le 1er caractre affich sur chaque ligne par ls -l Un utilisateur ucd2 peut-il crer des rpertoire? Essayer par exemple dans /etc ou dans /usr 5. MONTER UN SYSTEME DE FICHIERS Comme le systme de fichiers Linux se concentre dans une seule arborescence de fichiers, l'accs et l'utilisation de systmes extrieurs (disques, disquettes, cd ..) doit s'effectuer par intgration de ces systmes de fichiers dans le systme fondamental "racine". Ce mcanisme d'intgration, souple et paramtrable, s'appelle le montage. Techniquement, l'opration de montage consiste mettre en relation : - un fichier de priphrique situ dans /dev (qui permet la communication physique avec les donnes du priphrique) - avec un nud d'insertion dans l'arborescence, appel son point de montage commande gnrale d'accs aux infos des fichiers du rp. courant essayer ls, puis successivement ls -l, ls -a affiche le contenu du rpertoire rep le chemin peut tre absolu (indiqu partir de la racine) ou relatif ( partir du rp. courant) descend au rpertoire parent raccourci vers le rp. personnel renseigne sur la nature du contenu du fichier donne le nom complet du rp. courant pour crer un sous-rep du rep courant pour supprimer un sous-rep vide

UCD-FS

TP LINUX

Le montage fondamental est celui du rpertoire racine. Celui-ci a d tre dclar (obligatoirement) aprs le partitionnement des disques et avant toute installation sur disque ! Il est fondamental de bien comprendre ce concept : il conditionne tout accs une ressource externe, en particulier des ressources rseau d'autres disques Linux. 5.1. COMMANDES DE MONTAGE/DEMONTAGE Il est toujours possible de monter manuellement les systmes de fichiers stocks sur les priphriques disques, cd ... avec la commande interactive mount/umount 5.1. SYNTAXE GENERALE mount -t <type > -o options /dev/rep-spcial /mnt/rep-montage Si cette description est prsente dans le fichier /etc/fstab, la commande peut tre simplifie mount /dev/rep-spcial ou mount /mnt/rep-montage 5.2. LES PRINCIPAUX TYPES ext2 vfat nfs 5.3. LES OPTIONS Les options par dfaut sont: rw suid dev exec 5.4. EXEMPLES mount mount a mount /dev/cdrom umount /mnt/floppy mount -t vfat -o uid=5001,gid=5000,umask=022 /dev/hda1 /mnt/disk-c liste tous les systmes de fichiers actuellement monts monter tous les systmes au dmarrage, excute /etc/rc.d/rc.sysinit monte le systme du cd-rom (si dcrit dans fstab) dmonte le systme de fichiers disquette monter la partition Windows occupant la 1re partition /dev/hda1 dans le rp. /mnt/disk-c, avec les options : l'utilisateur d'uid 5001, et le groupe de gid 5000, seront propritaires de tous les fichiers, la cration d'un fichier s'effectuera avec le umask 022, c'est--dire les permissions 755 (rwxr-xr-x). accs complet les ventuels permissions SUID et SGID des fichiers seront pris en compte permettre l'utilsation des fichiers de priphriques permettre l'excution de fichiers binaires type par dfaut FAT16 ou FAT32 de Win95 ou Win98 systme de fichiers distant situ sur un serveur NFS

6. INSTALLER UNE NOUVELLE PARTITION Dans certains cas il peut s'avrer indispensable d'tendre le systme de fichiers sur un nouveau disque dur, ou une partition rcupre. L'objectif consiste assigner une sous-arborescence du systme de fichiers, cette nouvelle ressource priphrique, par le processus de montage. Soit une nouvelle partition /dev/hda3, jusqu'ici "libre", monter sur /home. Avec fdisk, lui affecter un systme 83 linux La formater mkfs -t ext2 -c -v /dev/hda3 formate en blocs de 1024 en vrifiant les blocs(-c), puis crit la table des inodes. 3

UCD-FS

TP LINUX

effectuer une copie cp -r /home /root le dplacement de /home, dans /root par exemple. En effet /home est prsent actuellement sur hda1, et il va tre ensuite physiquement affect sur hda3 Les rp. personnels sont actuellement dans /root/home monter la partition hda3 en /home mount /dev/hda3 /home

Expliquer les rsultats des commandes : df ll /home rcuprer le contenu de /home mv /root/home/* /home pour automatiser le montage de /dev/hda3 lors d'un redmarrage du systme, ajouter dans la table de montage /etc/fstab la ligne :/dev/hda3 /home ext2 defaults 12 7. COMPLEMENTS 7.1. LE FICHIER /etc/fstab Rappel : Le processus init (excut au dmarrage), aprs chargement du noyau, vrifie les systmes de fichiers dclars dans la table du fichier et effectue leur ventuel montage automatique. Ce fichier /etc/fstab constitue une vritable "table de montage". Il fait l'inventaire des divers systmes de fichiers que le noyau Linux est susceptible de grer, prcise la faon de les monter, s'ils doivent l'tre au dmarrage. 7.2. STRUCTURE DE fstab Sur chaque ligne on trouve la description du montage d'un systme, avec 6 champs : - nom du fichier spcial (ou du systme distant) - nom du point de montage, habituellement un sous-rep (ventuellement crer) de /mnt - le type de fichiers : ext2 (Linux), msdos, vfat (Win9x), ntfs (NT), iso9660 (Cd-rom), nfs - liste d'options de montage, spars par des virgules Les options par dfaut sont rw,suid, dev, exec, auto, nouser - auto/noauto , pour demander/empcher un montage automatique au dmarrage - user/nouser, pour autoriser/interdire un user qq (pas le "root") effectuer le montage - paramtre pour dump (commande de sauvegarde) Une valeur 0 signifie que le systme de fichiers ne sera pas sauvegard lors d'un dump - paramtre pour (commande de vrification des fichiers) Il indique l'ordre dans lequel fsck devra vrifier les fichiers, 1 en priorit (c'est normalement la partition racine /, 2 sinon, et 0 pour ne pas demander de vrification. 7.3. EXEMPLE 1 /dev/hda1 Signifie : /dev/hda1 /mnt/diskc Vfat est le descripteur de priphrique 1re partition du 1er disque IDE est le rpertoire de montage est le type de systme de fichiers (autres ext2, msdos, iso9660, nfs, swap) /mnt/diskc vfat user, auto, rw

7.4. EXEMPLE 2 /dev/hdb1 /mnt/disk_d vfat user, auto au lancement du systme, ou par la commande mount -a, le systme de fichiers Windows 95, install sur la 1re partition du 2me disque (unit D:\), sera mont automatiquement par tous les utilisateurs et accessible dans le rpertoire /mnt/disk_d

UCD-FS

TP LINUX

7.5. REMARQUES Les lignes contenant l'option noauto ne sont pas montes lors du dmarrage du systme, mais sont utiles pour renseigner sur les paramtres appliquer lorsqu'on effectuera le montage. L'option user est ncessaire pour indiquer que n'importe quel utilisateur pourra monter et dmonter le priphrique; sinon cette tche est rserve au root. 7.2. PRATIQUES Editer /etc/fstab et comprendre ses directives Monter et dmonter " la main" le priphrique /dev/cdrom. Peut-on enlever le cd-rom avant de le dmonter ? Faire les mmes manipulations sous X-KDE 7.3. LES INODES Chaque systme de fichiers tient jour une table des descripteurs des fichiers qu'utilise le systme d'exploitation pour accder aux fichiers. Cette table se compose pour chaque fichier, d'une entre appele inode, repre par un index appel le numro d'inode La liste des systmes de fichiers grs par Linux est visible sur /proc/filesystems Il existe un outil de vrification et de rparation des systmes : fsck, qui s'effectue sur un systme ou sous-systmes, un rp. obligatoirement dmont par exemple, pour vrifier le rp. des users : fsck /home Les fichiers spciaux de /dev comporte l'attribut b (mode bloc) ou c (mode caractres) 7.4. LES LIENS (ln) Les liens sont utiles pour faire apparatre un mme fichier dans plusieurs rpertoires, ou sous des noms diffrents. Ils vitent les duplications et assurent la cohrence des mises jour On distingue en fait deux sortes de liens : 7.4.1. LES LIENS DURS Associent deux ou plusieurs fichiers un mme espace sur le disque, les deux fichiers restant indpendants. Exemple : ln linux.txt /home/ucd2/linux-lien-dur.txt Le fichier linux-test-lien-dur est cr dans le rpertoire /home/ucd2. On peut constater que ces 2 fichiers ont la mme taille. Au niveau gestion ils sont indpendants, tout en partageant le mme espace disque et donc la mme inode. Toute modification de l'un, modifie l'autre ! Mais la suppression de l'un, casse le lien, mais ne supprime pas physiquement l'autre. 7.4.2. LES LIENS SYMBOLIQUES [root@p0x /home/httpd/html/LinuxCours] ln -s index.html /home/ahmed/accueil.html La commande ls -F passe dans le rpertoire /home/ahmed montre que le fichier accueil.html pointe sur index.html, ainsi, une requte sur accueil.html, va ouvrir index.html Le lien symbolique fait rfrence un fichier dans un rpertoire. La suppression du fichier source entranera un changement de comportement du fichier lien qui sera considr comme "cass" ("broken"). 7.5. OBSERVATIONS Passez les commandes adduser et useradd : elles semblent identiques, puisqu'on obtient le mme message d'aide ! Pour comprendre : 1) cherchez o elles se trouvent : whereis ... 2) examiner ces 2 fichiers : ls -l add* et ls -l user* 3) comparez les tailles, les droits. Conclusion.