• Aucun résultat trouvé

Lecteurs et systèmes de fichiers

Dans le document Programmation Avancée sous Linux (Page 162-165)

Le système de fichiers/proc contient également des informations sur les lecteurs de disques présents sur le système et les systèmes de fichiers montés qui y correspondent.

7.5.1 Systèmes de fichiers

L’entrée/proc/filesystemsdresse la liste de tous les types de systèmes de fichiers connus par le noyau. Notez qu’elle n’est pas très utile car elle n’est pas complète : des systèmes de fichiers peuvent être chargés et déchargés dynamiquement sous forme de modules noyau. Le contenu de /proc/filesystems ne reflète que les types de systèmes de fichiers liés statiquement au noyau ou actuellement chargés. D’autres types de systèmes de fichiers peuvent être disponibles sous forme de modules mais ne pas être chargés.

7.5.2 Lecteurs et partitions

Le système de fichiers/procdonne également des informations sur les périphériques connec-tés aux contrôleurs IDE ou SCSI (si le système en dispose).

Sur un système classique, le répertoire/proc/idepeut contenir un ou deux sous-répertoires, ide0etide1, relatifs aux contrôleurs primaire et secondaire du système5. Ils contiennent d’autres sous-répertoires correspondants aux périphériques physiques connectés à ces contrôleurs. Les répertoires de chaque contrôleur ou périphérique peuvent être absents si Linux n’a détecté aucun périphérique connecté. Les chemins absolus des quatre périphériques IDE possibles sont présentés dans le Tableau 7.1.

Tab.7.1 – Chemins Absolus des Quatre Périphériques IDE Possibles

Contrôleur Périphérique Répertoire

Primaire Maître /proc/ide/ide0/hda/

Primaire Esclave /proc/ide/ide0/hdb/

Secondaire Maître /proc/ide/ide1/hdc/

Secondaire Esclave /proc/ide/ide1/hdd/

5S’il est correctement configuré, le noyau Linux peut prendre en charge des contrôleurs IDE supplémentaires.

Ils sont numérotés de façon séquentielle à partir deide2.

7.5. LECTEURS ET SYSTÈMES DE FICHIERS 149 Consultez la Section 6.4, « Périphériques Matériels », pour plus d’informations sur les noms des périphériques IDE.

Chaque répertoire de périphérique IDE contient plusieurs entrées donnant accès à des infor-mations d’identification et de configuration sur le périphérique. Voici les plus utiles :

– modelcontient la chaîne d’identification du modèle de périphérique.

– media donne le type de média lu par le périphérique. Les valeurs possibles sont disk, cdrom,tape (cassette),floppy(disquette) et UNKNOWN(inconnu).

– capacity indique la capacité du périphérique en blocs de 512 octets. Notez que pour les lecteurs de CD-ROM, cette valeur sera 2311, et non pas la capacité du disque présent dans le lecteur. La valeur decapacityreprésente la capacité total du disque physique ; la capacité des systèmes de fichiers contenus dans les partitions du disque sera plus petite.

Par exemple, ces commandes vous montrent comment déterminer le type de média et le pé-riphérique primaire connecté au contrôleur IDE secondaire. Dans ce cas, il s’agit d’un lecteur CD-ROM Toshiba.

% cat /proc/ide/ide1/hdc/media cdrom

% cat /proc/ide/ide1/hdc/model TOSHIBA CD-ROM XM-6702B

Si des périphériques SCSI sont présents, /proc/scsi/scsicontient la liste de leurs identifiants.

Par exemple, son contenu peut ressembler à cela :

% cat /proc/scsi/scsi Attached devices:

Host: scsi0 Channel: 00 Id: 00 Lun: 00

Vendor: QUANTUM Model: ATLAS_V__9_WLS Rev: 0230

Type: Direct-Access ANSI SCSI revision: 03

Host: scsi0 Channel: 00 Id: 04 Lun: 00

Vendor: QUANTUM Model: QM39100TD-SW Rev: N491

Type: Direct-Access ANSI SCSI revision: 02

Cet ordinateur contient un contrôleur SCSI simple canal (appeléscsi0), auquel sont connectés deux disques Quantum, avec les identifiants de périphérique SCSI 0 et 4.

Le fichier /proc/partitions contient des informations sur les partitions des lecteurs de disque reconnus. Pour chaque partition, il décrit les numéros de périphérique majeur et mineur, le nombre de blocs de 1024 octets qu’elle contient et le nom du périphérique correspondant à cette partition.

L’entrée/proc/sys/dev/cdrom/infodonne diverses informations sur les fonctionnalités des lecteurs CD-ROM. Les informations n’ont pas besoin d’explication.

% cat /proc/sys/dev/cdrom/info

CD-ROM information, Id: cdrom.c 2.56 1999/09/09 drive name: hdc

drive speed: 48 drive # of slots: 0 Can close tray: 1 Can open tray: 1 Can lock tray: 1 Can change speed: 1 Can select disk: 0

Can read multisession: 1 Can read MCN: 1

Reports media changed: 1 Can play audio: 1

7.5.3 Points de montage

Le fichier /proc/mounts donne un aperçu des systèmes de fichiers montés. Chaque ligne correspond à undescripteur de montageet donne le périphérique monté, le point de montage et d’autres informations. Notez que /proc/mounts contient les mêmes informations que le fichier traditionnel /etc/mtab, qui est automatiquement mis à jour par la commande mount.

Voici les différents éléments d’un descripteur de point de montage :

– Le premier élément de la ligne est le périphérique monté (consultez le autorefchap :per-ipheriques).

– Le second élément est le point de montage, l’emplacement dans le système de fichiers racine où le contenu du système de fichiers apparaît. Pour le système de fichiers racine lui-même, le point de montage est /. Pour les espaces d’échange, le point de montage est noté swap.

– Le troisième élément est le type de système de fichiers. Actuellement, la plupart des systèmes GNU/Linux utilisent le système de fichiers ext2 (ou ext3) pour les lecteurs de disques, mais des disques DOS ou Windows peuvent être montés et seront alors de type fat ou vfat. La plupart des CD-ROM sont au format iso9660. Consultez la page de manuel de la commande mountpour une liste des types de systèmes de fichiers.

Les deux derniers éléments des lignes de /proc/mounts sont toujours à 0 et n’ont pas de signification.

Consultez la page de manuel de fstab pour plus de détail sur le format des descripteurs de point de montage6. GNU/Linux dispose de fonction destinées à vous aider à analyser ces descripteurs ; consultez la page de manuel de la fonction getmntent pour plus d’informations sur leur utilisation.

7.5.4 Verrous

La Section 8.3, «fcntl: Verrous et opérations sur les fichiers », décrit l’utilisation de l’appel système fcntl pour manipuler des verrous en lecture ou en écriture sur les fichiers. Le fichier /proc/locks décrit tous les verrous de fichiers actuellement en place sur le système. Chaque ligne correspond à un verrou.

Pour les verrous créés avec fcntl, la ligne commence par POSIX ADVISORY. Le troisième champ vautWRITEouREAD, selon le type de verrou. Le nombre qui suit correspond à l’identifiant du processus possédant le verrou. Les trois chiffres suivants, séparés par deux-points, sont les numéros majeur et mineur du périphérique sur lequel se trouve le fichier et le numéro d’inode, qui situe le fichier dans le système de fichiers. Le reste de la ligne est constitué de valeurs utilisées en interne par le noyau et qui ne sont généralement d’aucune utilité.

6Le fichier/etc/fstabdécrit la configuration des points de montage statiques d’un système GNU/Linux.

7.6. STATISTIQUES SYSTÈME 151

Dans le document Programmation Avancée sous Linux (Page 162-165)