creative commons
Le système de fichiers UDF
icone administration-reseau
Signature :
Linux Pratique
Sommaire de l'article :
Les CD utilisent traditionnellement le système de fichiers ISO-9660. Avec l'arrivée des DVD, le système de fichiers UDF (Universal Disk Format) a été créé pour le supplanter, en apportant plusieurs améliorations...

Préliminaires

Le système de fichier UDF propose plusieurs améliorations par rapport à ISO-9660 :
  • support des noms longs et Unicode ;
  • support des permissions et des liens (symboliques et physiques) ;
  • enfin, et surtout, la possibilité d'accéder en écriture à un système UDF.
Cette possibilité d'écrire sur UDF, combinée au mode de gravure par paquets, permet d'utiliser un disque réinscriptible comme une (grosse) disquette. D'ailleurs, vous pouvez aussi vous amuser à formater une disquette ou une partition de disque dur en UDF. Elle sera tout à fait utilisable (uniquement sous Linux ou un autre Unix). Pour pouvoir utiliser UDF, il faut installer les UDF-tools. Il s'agit d'un ensemble d'outils liés au système UDF : création de système de fichiers, gravure... Sous Debian et Ubuntu, il s'agit du paquet udftools.

Graver simplement en UDF

Sans utiliser la gravure par paquets, l'accès en écriture à un système UDF permet déjà d'utiliser une méthode originale pour préparer un disque non réinscriptible :
  • Créer un système de fichiers UDF vide.
  • Le monter en loopback, puis le remplir.
  • Enfin, démonter ce système et le graver sur le disque.
Pour un système ISO-9660, il faudrait créer une image et la remplir en une seule commande. L'avantage de la méthode UDF est donc d'avoir une étape de plus ! En fait, si vous oubliez de placer un document dans votre image, vous n'êtes donc plus obligé de recommencer toute l'étape de création.

Préparer une image UDF

Un disque contient normalement un système de fichiers, qui peut être monté dans l'arborescence Linux pour accéder aux documents qu'il contient. Une image disque est une simple réplique de ce système de fichiers. Nous allons donc créer une image UDF vierge de la taille du disque à graver :
$ mkudffs image.udf $(( 700 * 1024 / 2 ))
UDF utilise par défaut des blocs de 2 Ko, aussi demande-t-on au shell de convertir nos 700 Mo en blocs.

Remplir l'image UDF

Maintenant que vous disposez d'une image UDF, il faut la monter en loopback pour la remplir. Il s'agit en fait d'y associer un périphérique boucle, qui émule un accès par blocs, puis de monter ce périphérique comme s'il s'agissait d'un véritable média. Nous allons également autoriser tout le monde à écrire dans notre image :
# mkdir /media/img
# mount -o loop image.udf /media/img
# chmod 777 /media/img
Vous pouvez maintenant remplir votre système UDF en ligne de commande ou avec votre gestionnaire de fichiers préféré : il suffit d'y copier les fichiers souhaités. Vous pouvez à tout moment vérifier l'espace disponible sur votre image avec le commande df (disk free). Vous pouvez également supprimer des fichiers ou les modifier directement dans le système UDF. Quand vous avez fini de copier vos fichiers, démontez l'image :
# umount /media/img

Graver l'image UDF

Vous pouvez maintenant graver votre image comme vous gravez habituellement une image ISO :
  • En ligne de commande, avec cdrecord (en supposant que votre graveur est le premier disque de votre seconde nappe IDE) :
cdrecord dev=/dev/hdc -dao -data image.udf
  • Avec un logiciel de gravure graphique : demandez à graver une image de disque et sélectionnez votre image UDF. Certains logiciels vous préviennent qu'il ne s'agit pas d'une image ISO, et pour cause... mais cela ne gêne en rien la gravure.

Graver par paquets

Le mode de gravure par paquets permet de créer un disque UDF par ajouts successifs. Contrairement aux modes disk at once et track at once, cela permet d'accéder au contenu d'un disque en lecture et en écriture.

Charger le pilote de gravure par paquets

Le pilote d'écriture par paquets s'appelle pktcdvd. Vérifiez qu'il est disponible avec votre noyau en utilisant la commande :
modprobe pktcdvd
S'il n'est pas disponible, il vous faudra sans doute recompiler un noyau en activant cette option, qui se trouve dans Device Drivers -> Block devices -> Packet writing on CD/DVD media. Avant de pouvoir graver un disque, il faut initialiser le périphérique d'écriture par paquets. Le paquetage udftools, que vous avez normalement déjà installé, contient un script d'initialisation qui va s'en charger pour vous. En tant que root, éditez le document /etc/default/udftools pour qu'il contienne la ligne suivante (en supposant que votre graveur s'appelle toujours /dev/hdc) :
DEVICES="/dev/hdc"
Relancez ensuite le script d'initialisation (et rassurez-vous : vous n'aurez plus jamais à effectuer ces opérations) :
/etc/init.d/udftools restart

Préparer le disque

Votre système est prêt à écrire par paquets sur un disque, mais ce disque n'est pas prêt, lui. Il faut donc l'initialiser avec la commande :
cdrwtool -d /dev/hdc -q

Écrire sur le disque

Vous pouvez maintenant monter votre disque en lecture-écriture :
#mkdir /media/cdrw
# mount /dev/pktcdvd /media/cdrw
# chmod 777 /media/cdrw0
Pour éviter de devoir effectuer ces opérations en tant que root à chaque fois, vous pouvez rajouter une ligne à votre fichier /etc/fstab :
/dev/pktcdvd/0  /media/cdrw0  udf,iso9660  user,noauto  0  0
Enfin, vous pouvez copier directement des fichiers sur votre disque, en ligne de commande ou avec votre navigateur de fichiers préféré. Vous pouvez également supprimer des documents, les renommer... comme sur une disquette. Cela reste tout de même plus lent qu'un disque dur.

Finaliser la gravure

Pour terminer la gravure, il suffit de démonter le disque :
# umount /media/cdrw0
Cela peut prendre pas mal de temps, mais moins longtemps tout de même que s'il fallait tout graver... Pour modifier le contenu de votre disque, il vous suffit de le monter à nouveau de la même façon (sans l'initialiser, ce qui l'effacerait). Il est ainsi possible de réaliser des sauvegardes sur CD avec des outils comme RSync !
Il y a : 0 commentaire(s)

Donnez votre avis

Vous devez avoir ouvert une session pour écrire un commentaire.

Brèves
Édito : Linux Pratique Essentiel N°24
Édito : Linux Pratique HS N°23
Édito : GNU/Linux Magazine 146
Édito : GNU/Linux Magazine HS N°58
Édito : Open Silicium N°5
Communication
Linux Pratique HS 23 – Communiqué de presse
Linux Pratique Essentiel N°24 – Communiqué de presse
Gnu/Linux Magazine sponsor et partenaire de PROLOGIN
Linux Essentiel partenaire des Rencontres du Libre de Lion sur Mer (Normandie)
GNU/Linux Magazine HS 58 – Communiqué de presse
prochainement moteur de recherches des articles
 
:
:
Jours heures minutes secondes
En kiosque
Le tout nouveau Linux Pratique Essentiel est disponible dès maintenant chez votre marchand de journaux et sur notre site...

Lire la suite...

Le tout nouveau Linux Pratique est disponible dès maintenant chez votre marchand de journaux et sur notre site...

Lire la suite...

Le tout nouveau GNU/Linux Magazine est disponible dès maintenant chez votre marchand de journaux et sur notre site...

Lire la suite...

Le tout nouveau GNU/Linux Magazine HS est disponible dès maintenant chez votre marchand de journaux et sur notre site...

Lire la suite...

Le tout nouveau Open Silicium est disponible dès maintenant chez votre marchand de journaux et sur notre site...

Lire la suite...

Le tout nouveau Linux Pratique est disponible dès maintenant chez votre marchand de journaux et sur notre site...

Lire la suite...

Le tout nouveau Misc est disponible dès maintenant chez votre marchand de journaux et sur notre site...

Lire la suite...

Le tout nouveau GNU/Linux Magazine est disponible dès maintenant chez votre marchand de journaux et sur notre site...

Lire la suite...