Page précédente Page suivante Table des matières

5. Disquettes et CD-ROM

5.1 CD-ROM: monter un support amovible

Ce paragraphe concerne surtout les CD-ROM. La plupart de ce que je vais écrire reste valable pour les disquettes à quelques rectifications près, mais ce n'est pas la façon la plus simple de procéder.

Méthode générale

Pour effectuer les manipulations décrites dans ce paragraphe, vous devez être root. Nous verrons par la suite comment autoriser les autres utilisateurs à en faire autant.

Pour lire le contenu d'un CD-ROM, il faut d'abord le monter au moyen de la commande mount. Puisque je vous en parle, lisez la page de manuel correspondante en tapant man 8 mount ou en utilisant TkMan.

Nous voulons monter un CD-ROM, c'est à dire un système de fichiers de type ISO-9660. Le fichier spécial correspondant au lecteur de CD-ROM s'appelle /dev/cdrom (ou plus précisément, /dev/cdrom est un lien symbolique vers ce fichier spécial). Nous voulons le monter dans le répertoire /mnt/cdrom. Enfin, il faut préciser à mount que le CD est en lecture seule; ce n'est pas obligatoire, mais ça évite un message d'erreur.

Pour cela, tapez la commande suivante:

mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom

Le contenu de votre CD-ROM est maintenant accessible dans le répertoire /mnt/cdrom.

Lorsque vous aurez fini d'utiliser le CD, démontez-le par:

umount /mnt/cdrom

Puis éjectez-le:

eject

Simplifions un peu les choses!

En tant que root, éditez le fichier /etc/fstab. Il doit contenir une ligne comme:

/dev/cdrom        /mnt/cdrom       iso9660      noauto,ro        0 0
Si elle n'existe pas, rajoutez-la.

Cette ligne permet de monter le CD-ROM en précisant juste l'endroit où vous voulez le monter. La ligne de commande pour monter le CD devient:

mount /mnt/cdrom
Déjà plus simple à retenir. Mais il faut toujour être root pour monter les CD. Si vous voulez que tous les utilisateurs puissent le faire, il faut rajouter l'option user dans /etc/fstab; la ligne qui nous intéresse devient:
/dev/cdrom        /mnt/cdrom       iso9660      noauto,ro,user   0 0

Maintenant, tout le monde peut monter et démonter le CD-ROM; reste à autoriser l'éjection du CD pour tous. Pour cela, placez-vous dans le répertoire /dev et regardez vers quel fichier pointe le lien symbolique cdrom:

cd /dev
ls -l cdrom
Chez moi, cela donne:
lrwxrwxrwx   1 root     root             3 Jul  7 13:53 cdrom -> hdc
C'est la fin de la ligne qui nous intéresse: chez moi, le CD-ROM est hdc. Je change donc les permissions de hdc pour permettre à tout le monde d'y lire et d'y écrire:
chmod 666 hdc

automount et autofs

Les noyaux Linux récents supportent le système de fichiers autofs, qui permet de se dispenser de monter manuellement les CD-ROM. En fait, il permet même de se dispenser de monter manuellement quoi que ce soit.

Pour l'utiliser, vous aurez besoin du démon automount. Je vous renvoie au document Automount mini-HOWTO, traduit en français par Mathieu Arnold. Vous le trouverez au même endroit que les autres HOWTO.

5.2 Disquettes

Les mtools

Les disquettes sont gérées par les mtools: mdir, mcd, mcopy, mformat... Ils s'utilisent de la même façon que les commandes MS-DOS, si ce n'est qu'ils reconnaissent les noms de fichiers de plus de 8+3 caractères.

Par exemple, pour formater une disquette:

mformat a:
Pour lister les fichiers d'une disquette:
mdir a:
Pour copier un fichier toto sur une disquette:
mcopy toto a:
Pour copier tous les fichiers du répertoire courant sur une disquette:
mcopy * a:
L'opération inverse:
mcopy a:* .

Les gros fichiers

Il arrive fréquemment qu'un fichier soit trop gros pour tenir sur une disquette. Il faut alors le découper en fichiers plus petits, en utilisant la commande split. Par exemple, pour couper un fichier toto.tar.gz en fichiers de 1400 Ko:

split -b 1400k toto.tar.gz toto
Les fichiers résultant de l'opération s'appelleront totoaa, totoab, totoac... Il suffit ensuite de copier ces petits fichiers sur des disquettes.

A l'autre bout, pour rassembler nos fichiers:

cat totoaa totoab totoac totoad totoae > toto.tar.gz
Si vous avez vraiment beaucoup de petits fichiers, vous pouvez éviter de taper tous les noms en utilisant les caractères de substitution * et ?:
cat toto?? > toto.tar.gz
Dans ce cas, vérifiez simplement que toto?? ne désigne que vos fichiers, et par un toto15 qui se trouverait là par hasard.


Page précédente Page suivante Table des matières