Gravure depuis le terminal
28 Oct. 2006
- Auteur : tonton nestor
- Responsable : TrustRobot
- Score ( voter ) :



- Connexes : Même auteur | Même responsable | Historique
1. Graver un CD de données :
1.1 Création de l'image .iso :
D'une façon générale, pour pouvoir réaliser une gravure de données, il faut au préalable réaliser une image .iso de ces données. C'est celle-ci qui sera gravée. Pour faire une telle image, la commande utilisée est "mkisofs". Avant de l'appliquer, il faut au préalable ranger toutes les données dans un même répertoire que j'appellerai pour le besoin de l'exemple disk. Le déplacement peut se faire à l'aide de la commande mv (on déplace le fichier) ou bien cp (on recopie le fichier). Ainsi nous obtenons :
$ mkdir /répertoire/disk
$ cp /répertoire/donnée /répertoire/disk
Ou
$ mkdir /répertoire/disk
$ mv /répertoire/donnée /répertoire/disk
(en ajoutant l'option -R à la commande cp, on peut copier un répertoire avec son contenu) (Bien sûr, toute cette phase de déplacement de données peut être effectuée à l'aide d'un navigateur de fichiers tel que Konqueror).
Une fois satisfait l'image des données peut être réalisée par :
$ mkisofs -v -R -r -J -V "nom_cd" -o disk.iso /répertoire/disk
Explication sur les options de mkisofs :
-v : mode "verbeux", fournit des informations en temps réel
-R : permet de conserver les noms longs et les extensions sous GNU/Linux (extension Rock Ridge)
-r : permet de rendre l'image lisible par tous malgré la conservation des permissions (-R)
-J : active l'extension Joliet pour les noms longs sous Windows
-V : permet de donner un nom de volume (ici : nom_cd)
-o : permet de spécifier la sortie (ici l'image sera créée dans le répertoire courant avec le nom disk.iso)
Pour créer une image à partir d'un CD source, et non plus du disque dur, il faut saisir la commande suivante :
$ dd if=/dev/cdrom of=disk.iso
Ou
$ cp /dev/cdrom > disk.iso
1.2 Graver l'image .iso :
Avant de graver une image iso, vous avez la possibilité, de la tester, en la montant dans un répertoire et en vérifiant que son contenu correspond bien à ce que vous attendez :
# mount -t iso9660 -o ro,loop=/dev/loop0 disk.iso /mnt/iso
Ceci suppose que /mnt/iso existe, vous pouvez le créer par : mkdir /mnt/iso . Maintenant, vous pouvez vous rendre dans /mnt/iso et vérifier son contenu. Quand vous êtes satisfait, vous pouvez la démonter par :
$ umount /mnt/iso
L'image est créée, l'image est testée il ne vous reste plus qu'à la graver, c'est probablement la partie la plus facile car elle tient en une ligne :
$ cdrecord -v -speed=s -dev=x,y,z -data disk.iso
Explication sur les options de cdrecord :
-v : mode "verbeux"
-speed=s : remplacez s par la vitesse souhaitée et autorisée (4 pour 4X)
-dev=x,y,z : permet de donner l'emplacement du graveur. Vous devez remplacer x, y et z par les valeurs adéquates
-data : décrit que les données gravées sont des fichiers de données (du type data)
Pour connaître le device (option -dev=x,y,z) de son graveur, il suffit de saisir la commande :
$ cdrecord -scanbus
1.3 Copie de CD à la volée :
Vous pouvez réaliser une copie de CD à la volée à la seule condition que le lecteur soit un scsi (ou émulé scsi), le graveur, lui, étant toujours déclaré scsi. Pour cela il faut saisir la commande :
$ cdrdao copy --source-device b,c --device y,z --on-the-fly
Explication sur les options de cdrdao :
--source-device : device du lecteur, ce sont les deux derniers chiffres qui nous intéressent
--device : device du graveur, de même ce sont toujours les deux derniers chiffres qu'il faut choisir
--on-the-fly : à la volée
Pour connaître les devices du graveur et du lecteur, nous pouvons saisir (les 2 premiers chiffres pour chacun):
$ cdrdao scanbus
1.4 Cas particulier des cd-multisessions :
-
Première session:
Rien de particulier à faire, il suffit de créer impérativement votre image au format Rock Bridge:
$ mkisofs -v -R -V "nom_cd" -o disk1.iso /répertoire/disk1vous la gravez cette fois avec l'option -multi :$ cdrecord -v -speed=s -dev=x,y,z -multi -data disk1.iso
-
Sessions intermédiaires:
Ici, mkisofs, a besoin d'informations fournies par cdrecord, mettez le cdrom-multisession dans le lecteur correspondant à dev=x,y,z, puis tapez :
$ cdrecord -msinfo dev=x,y,zCeci vous donne deux nombres séparés par une virgule (par exemple 0,15292). Maintenant, vous pouvez appeler mkisofs avec les options -C et -M qui lui permettent de savoir où va commencer la session et quels sont les éléments déjà présents sur le CD:$ mkisofs -v -R -C 0,15292 -M /dev/scd0 -o diskN.iso /répertoire/diskNToujours avec le cdrom-multisession dans /dev/scd0. Si votre graveur n'est pas /dev/scd0, adaptez ! Finissez la gravure, toujours avec l'option -multi:$ cdrecord -v -speed=s -dev=x,y,z -multi -data diskN.iso
-
La dernière session :
La construction de l'image se déroule comme dans l'étape précédente :
$ cdrecord -msinfo dev=x,y,z $ mkisofs -v -R -C 15292,68700 -M /dev/scd0 -o disk-last.iso /répertoire/diskNotez que je suppose que les 2 nombres renvoyés par msinfo, soient 15292 et 68700. Cette fois, cdrecord est utilisé sans l'option -multi:$ cdrecord -v -speed=s -dev=x,y,z -data disk-last.iso
2. Effacer un CDRW :
Pour effacer totalement un CDRW : $ cdrecord -v -speed=s -dev=x,y,z -blank=all Effacer seulement la table de fichiers : $ cdrecord -v -speed=s -dev=x,y,z -blank=fast Cette dernière façon de procéder permet d'effacer le CDRW très rapidement.3. Graver un CD audio :
3.1 Copie de CD à CD :
Nous pouvons réaliser une copie de CD audio à CD à la volée à la seule condition que le lecteur soit un scsi (ou émulé scsi), le graveur, lui, étant toujours déclaré scsi. Pour cela il faut saisir la commande :
$ cdrdao copy --source-device b,c --device y,z --on-the-fly
Explication sur les options de cdrdao :
- --source-device : device du lecteur, ce sont les deux derniers chiffres qui nous intéressent
- --device : device du graveur, de même ce sont toujours les deux derniers chiffres qu'il faut choisir
- --on-the-fly : à la volée
$ cdrdao scanbus
Si nous ne possédons pas de lecteur scsi, il est toujours possible de passer par le disque dur pour réaliser la copie. Dans un premier temps, introduisez le cd audio dans votre lecteur pour en extraire les pistes. Nous placerons préalablement dans un répertoire que nous viendrions de créer :
$ mkdir cdaudio
$ cd cdaudio
$ cdda2wav -v255 -B -D/dev/hdx
Explication des options de cdda2wav :
-v255 : mode verbeux
-B : pour copier les fichiers du cd sur des fichiers distincts dans le répertoire courant
-D : indique le device du lecteur, x vaudra c ou d selon où il est
Vous pouvez effectuer ici une gravure en mode DAO à l'aide de cdrecord en utilisant la commande :
$ cdrecord -v -dao -speed=s -dev=x,y,z -useinfo -audio_*.wav
3.2 CD audio à partir du disque dur (mp3):
Il va falloir mettre les fichiers au format .wav, ensuite les normaliser si on le souhaite, puis les graver (soit en mode TAO soit DAO). Nous allons voir dans un premier temps une méthode manuelle, puis comment automatiser ces tâches. Les programmes utilisés seront mpg123 (ou mpg321), noramlize. Assurez-vous donc de les avoir installés au préalable.3.2.1 Méthode manuelle :
Au préalable, placer tous les fichiers *.mp3 que vous voulez graver dans un même répertoire et placez-vous dans ce répertoire. Nous allons d'abord les convertir et les renommer en même temps en ajoutant un numéro devant selon la plage où ils seront sur le CD :
$ mpg321 fichier1.mp3 --wav 01-fichier1.wav
Il faut réitérer cette opération pour tout les mp3. Pour normaliser les fichiers au format wav, vous pouvez faire la commande suivante :
$ normalize -m *.wav
Nous pouvons réaliser maintenant une petite gravure en mode TAO à l'aide de cdrecord:
$ cdrecord -v -speed=s -pad -dev=x,y,z -audio *.wav
Si nous tenons à graver en mode DAO, il nous faut utiliser le script generate_toc.sh. Assurez-vous de le posséder et trouver son chemin à l'aide de kfind. Nous saisirons ce dernier dans le terminal :
$ /usr/doc/cdrdao-1.1.5/contrib/generate_toc.sh *.wav
(Ce chemin peut varier d'une distribution à une autre, voir le script peut ne pas être présent dans le dossier de cdrdao (cas de la Mandriva 8.2)). J'en fournis une copie
Et finalement il nous reste plus qu'à graver avec cdrdao :
$ cdrdao write cd.toc
3.2.2 Automatisation des tâches :
Comme vous avez pu le remarquer dans la méthode précédente, bien que cela ne soit pas difficile à faire, c'est tout de même assez long et prend du temps à l'utilisateur. Un moyen de moins travailler serait donc de réussir à automatiser les tâches précédentes. Voici donc les lignes de commandes à saisir (en fait un simple copier/coller devrait suffir ;-) ) avec quelques explications. Ceci est toujours à réaliser dans le répertoire où sont rangés les mp3 D'abord il faut renommer tous les fichiers qui pourraient avoir l'extension .MP3 en extension .mp3 ; puis retirer tous les espaces en les remplaçant par des '_' :
$ for i in *.MP3; do mv "$i" "`basename "$i" .MP3`.mp3"; done
$ for i in *.mp3; do mv "$i" `echo $i | tr ' ' '_'`; done
Pour convertir les fichiers .mp3 en fichiers .wav :
$ for i in *.mp3; do mpg123 -w `basename $i .mp3`.wav $i; done
Puis pour les normaliser :
$ normalize -m *.wav
Il ne vous reste plus qu'à les graver comme indiqué dans la partie précédente avec cdrecord. A partir de là, il vous sera très facile d'en écrire un script.
4. Graver une image .bin :
Il est possible sous Linux de graver les images au format .bin utilisées par le logiciel CDRWIN sous Windows. Les images .bin sont accompagnées d'un fichier .cue qui sert de table des matières. La gravure de tels fichiers s'effectue ainsi sous Linux:
$ cdrdao write --device y,z --speed x /où_est/fichier.cue