Différences entre versions de « Gravure CD-ROM »
imported>SylvainBeucler m (import depuis tiki interne (à mettre en page)) |
imported>SylvainBeucler m (parle de Gnome) |
||
(28 versions intermédiaires par 4 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
− | + | Note: ceci est la méthode manuelle. Pour une méthode simple, utilisez Gnome et son créateur de CD/DVD). | |
− | + | Paquets considérés: | |
− | + | aptitude install mkisofs cdrecord cdda2wav cdparanoia | |
− | + | == Outils simples == | |
− | + | Sous Gnome, insérez un CD vierge dans le lecteur: la fenêtre de gravure apparaît. Glissez-déposez des fichiers (ou copiez/collez) des fichiers à l'intérieur, puis cliquez sur ''Fichier->Graver un CD...''. C'est tout :) | |
+ | |||
+ | La suite de l'article indique comment graver en ligne de commande. Utilise pour aller plus loin (graver des image .iso téléchargées) et lancer des gravures via une connexion SSH à distance. | ||
− | + | Il y a également l'outil Xcdroast qui fournit une interface graphique pour tout ces outils. | |
− | |||
− | + | == Créer l'ISO d'un ou de plusieurs fichiers == | |
− | |||
− | + | mkisofs -R -r -J --hide-rr-moved -V "SauvHome" -o backup.iso /home/toto/ | |
− | + | Explication des options utilisées dans mkisofs: | |
− | |||
− | + | * <code>-R</code> : rajoute l'extension Rock Ridge qui permet de conserver les noms longs et les permissions sous Linux | |
+ | * <code>-r</code> : permet de générer une image qui soit lisible par tout le monde malgré les permissions activées par l'extension Rock Ridge | ||
+ | * <code>-J</code> : active l'extension Joliet pour avoir les noms longs sous Windows | ||
+ | * <code>--hide-rr-moved</code> : renomme le répertoire RR_MOVED (dû aux extensions Rock Ridge) en un répertoire caché .rr_moved | ||
+ | * <code>-V</code> : spécifie un nom de volume (ici "SauvHome") | ||
+ | * <code>-o</code> : spécifie le nom et l'emplacement du fichier ISO (ici backup.iso dans le répertoire courant). | ||
− | + | Créer une ISO contenant le répertoire <code>/home/toto/</code>, le fichier <code>/etc/X11/XF86Config-4</code>, et le contenu du répertoire <code>/mnt/win/toto/</code> qui devra apparaître sur le CD dans un répertoire win-toto: | |
− | |||
− | + | mkisofs -R -r -J --hide-rr-moved -V "SauvHome" \ | |
− | /etc/X11/XF86Config-4 | + | -o backup.iso -graft-points \ |
− | + | /home/toto/ /etc/X11/XF86Config-4 win-toto/=/mnt/win/toto/ | |
− | + | == Récupérer une image ISO à partir d'un CD existant == | |
− | + | dd if=/dev/cdrom of=backup.iso | |
− | + | Note: ne pas monter le CD-ROM | |
− | |||
− | |||
− | + | Note2: pour les purs et durs, <code>cat /dev/cdrom > backup.iso</code> fonctionne aussi ;) | |
− | |||
− | + | == Vérifier une ISO == | |
− | + | En tant que root: | |
− | + | mkdir /tmp/test-iso | |
− | + | mount -t iso9660 -o loop fichier.iso /tmp/test-iso | |
+ | cd /tmp/test-iso | ||
+ | ls -ail | ||
+ | # ... | ||
+ | umount /tmp/test-iso | ||
− | + | Vous pouvez aussi utiliser la somme de contrôle fournie avec l'image ISO: | |
+ | $ md5sum -v -c MD5SUMS | ||
+ | debian-testing-i386-netinst.iso OK | ||
+ | == Graver une ISO (noyau 2.6) == | ||
− | + | Tout d'abord, dire à cdrecord quel est l'identifiant SCSI virtuel: | |
− | + | $ cdrecord dev=ATA: -scanbus | |
− | + | # Si problème, essayer ATAPI: | |
− | + | # cdrecord dev=ATAPI -scanbus | |
− | + | scsibus1: | |
1,0,0 100) 'HL-DT-ST' 'DVD-RW GCA-4080N' '0W33' Removable CD-ROM | 1,0,0 100) 'HL-DT-ST' 'DVD-RW GCA-4080N' '0W33' Removable CD-ROM | ||
1,1,0 101) * | 1,1,0 101) * | ||
Ligne 61 : | Ligne 68 : | ||
1,7,0 107) * | 1,7,0 107) * | ||
− | De là, modifier /etc/default/cdrecord : | + | De là, modifier <code>/etc/default/cdrecord</code>: |
− | CDR_DEVICE= | + | CDR_DEVICE=ATA:1,0,0 |
− | |||
Ensuite, pour retrouver les infos : | Ensuite, pour retrouver les infos : | ||
− | + | cdrecord -prcap | |
+ | [...] | ||
+ | Number of supported write speeds: 3 | ||
+ | Write speed # 0: 4234 kB/s CLV/PCAV (CD 24x, DVD 3x) | ||
+ | Write speed # 1: 2822 kB/s CLV/PCAV (CD 16x, DVD 2x) | ||
+ | Write speed # 2: 1764 kB/s CLV/PCAV (CD 10x, DVD 1x) | ||
− | + | Pour tester sans graver (pas de laser) : <code>-dummy</code> | |
+ | $ cdrecord -v -dummy -data sarge-i386-netinst.iso | ||
+ | [...] | ||
+ | Starting to write CD/DVD at speed 24 in dummy TAO mode for single session. | ||
+ | Last chance to quit, starting dummy write 0 seconds. Operation starts. | ||
+ | Turning BURN-Free off | ||
+ | Track 01: Total bytes read/written: 109338624/109338624 (53388 sectors). | ||
− | $ cdrecord -v | + | Dans /etc/default/cdrecord on n'a pas spécifié de vitesse; commme il s'agit d'un lecteur compatible MMC, |
− | + | il prend dans ce cas la plus élevée possible. Parallèlement, si l'on spécifie <code>speed=1</code> il prend la plus basse possible, soit ici 10x. | |
+ | $ cdrecord -v -data sarge-i386-netinst.iso speed=1 | ||
− | + | Note: si vous obtenez: | |
− | + | cdrecord: Cannot allocate memory. Cannot get SCSI I/O buffer. | |
− | + | passez en utilisateur root, ou mettez les permissions setuid (<code>chmod u+s</code>) sur <code>/usr/bin/cdrecord</code>. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Quand tout est OK, on grave en réel, sans l'option dummy : | Quand tout est OK, on grave en réel, sans l'option dummy : | ||
− | + | cdrecord -v -data sarge-i386-netinst.iso | |
+ | == CD-RW == | ||
+ | Si le CD est un RW : le remettre à blanc au préalable | ||
− | |||
− | |||
- CD RW neuf : | - CD RW neuf : | ||
− | + | cdrecord -v -blank=all | |
- CD RW déjà utilisé : | - CD RW déjà utilisé : | ||
− | + | cdrecord -v -blank=fast | |
− | |||
+ | == CD Audio == | ||
− | |||
− | |||
1°) Extraire les pistes du CD audio vers le disque dur : | 1°) Extraire les pistes du CD audio vers le disque dur : | ||
− | + | cdda2wav -B -s -x -D /dev/cdrom | |
− | + | ||
− | + | * x: qualité maxi | |
− | + | * B: toutes les pistes avec les fichiers d'information de chaque piste (si vous utilisez les fichiers d'information) | |
− | + | * s: extrait les pistes en stereo | |
− | + | * D chemin du périphérique. | |
− | |||
− | + | Ou : | |
− | + | cdparanoia -B -d /dev/cdrom | |
− | |||
2°) Graver le CD proprement dit | 2°) Graver le CD proprement dit | ||
− | + | cdrecord speed=2 -dao -eject -useinfo *.wav | |
− | + | ||
− | + | * dao: Disk at Once | |
− | + | * eject: ejecte le CD lorsque la gravure est terminée | |
+ | * useinfo:utilise les fichiers d'information. | ||
+ | |||
+ | === CUE === | ||
+ | |||
+ | Cf. [http://en.wikipedia.org/wiki/Cue_sheet CUE sur Wikipedia] | ||
+ | |||
+ | Avec cdrecord: | ||
+ | |||
+ | cdrecord speed=1 cuefile=CDImage.cue -dao -verbose -eject | ||
+ | |||
+ | Alternativement (paquet <code>cdrdao</code>): | ||
+ | |||
+ | cdrdao write --device /dev/cdrom --speed 1 --eject CDImage.cue | ||
+ | |||
+ | Encore alternativement (paquet bchunk) | ||
+ | |||
+ | bchunk CDImage.wav CDImage.cue moncd # raw | ||
+ | bchunk -w CDImage.wav CDImage.cue moncd # wav | ||
+ | |||
+ | puis graver moncd*.raw ou moncd*.wav avec cdrecord comme décrit ci-dessus, avec -tao: | ||
+ | |||
+ | cdrecord speed=1 -audio -tao -eject -verbose *.cdr | ||
+ | |||
+ | Sur mon système, les deux modes semblent écrire chaque piste par-dessus la précédente en mode disc-at-once (dao, solution 1 et 2), et fait des sautes de vitesse en track-at-once (tao, solution 3). Bon, mon graveur a des soucis... | ||
+ | |||
+ | = Pour les DVD = | ||
+ | |||
+ | Gravure d'une image ISO: | ||
+ | |||
+ | growisofs -dvd-compat -Z /dev/dvd=image.iso | ||
+ | |||
+ | (-dvd-compat verrouille le DVD en écriture après gravure pour plus de compatibilité) | ||
+ | |||
+ | ToDo: compléter la création de l'ISO avec growisofs, expliquer les différences avec mkisofs s'il y a lieu. |
Version actuelle datée du 4 mai 2007 à 11:16
Note: ceci est la méthode manuelle. Pour une méthode simple, utilisez Gnome et son créateur de CD/DVD).
Paquets considérés:
aptitude install mkisofs cdrecord cdda2wav cdparanoia
Outils simples
Sous Gnome, insérez un CD vierge dans le lecteur: la fenêtre de gravure apparaît. Glissez-déposez des fichiers (ou copiez/collez) des fichiers à l'intérieur, puis cliquez sur Fichier->Graver un CD.... C'est tout :)
La suite de l'article indique comment graver en ligne de commande. Utilise pour aller plus loin (graver des image .iso téléchargées) et lancer des gravures via une connexion SSH à distance.
Il y a également l'outil Xcdroast qui fournit une interface graphique pour tout ces outils.
Créer l'ISO d'un ou de plusieurs fichiers
mkisofs -R -r -J --hide-rr-moved -V "SauvHome" -o backup.iso /home/toto/
Explication des options utilisées dans mkisofs:
-R
: rajoute l'extension Rock Ridge qui permet de conserver les noms longs et les permissions sous Linux-r
: permet de générer une image qui soit lisible par tout le monde malgré les permissions activées par l'extension Rock Ridge-J
: active l'extension Joliet pour avoir les noms longs sous Windows--hide-rr-moved
: renomme le répertoire RR_MOVED (dû aux extensions Rock Ridge) en un répertoire caché .rr_moved-V
: spécifie un nom de volume (ici "SauvHome")-o
: spécifie le nom et l'emplacement du fichier ISO (ici backup.iso dans le répertoire courant).
Créer une ISO contenant le répertoire /home/toto/
, le fichier /etc/X11/XF86Config-4
, et le contenu du répertoire /mnt/win/toto/
qui devra apparaître sur le CD dans un répertoire win-toto:
mkisofs -R -r -J --hide-rr-moved -V "SauvHome" \ -o backup.iso -graft-points \ /home/toto/ /etc/X11/XF86Config-4 win-toto/=/mnt/win/toto/
Récupérer une image ISO à partir d'un CD existant
dd if=/dev/cdrom of=backup.iso
Note: ne pas monter le CD-ROM
Note2: pour les purs et durs, cat /dev/cdrom > backup.iso
fonctionne aussi ;)
Vérifier une ISO
En tant que root:
mkdir /tmp/test-iso mount -t iso9660 -o loop fichier.iso /tmp/test-iso cd /tmp/test-iso ls -ail # ... umount /tmp/test-iso
Vous pouvez aussi utiliser la somme de contrôle fournie avec l'image ISO:
$ md5sum -v -c MD5SUMS debian-testing-i386-netinst.iso OK
Graver une ISO (noyau 2.6)
Tout d'abord, dire à cdrecord quel est l'identifiant SCSI virtuel:
$ cdrecord dev=ATA: -scanbus # Si problème, essayer ATAPI: # cdrecord dev=ATAPI -scanbus scsibus1: 1,0,0 100) 'HL-DT-ST' 'DVD-RW GCA-4080N' '0W33' Removable CD-ROM 1,1,0 101) * 1,2,0 102) * 1,3,0 103) * 1,4,0 104) * 1,5,0 105) * 1,6,0 106) * 1,7,0 107) *
De là, modifier /etc/default/cdrecord
:
CDR_DEVICE=ATA:1,0,0
Ensuite, pour retrouver les infos :
cdrecord -prcap [...] Number of supported write speeds: 3 Write speed # 0: 4234 kB/s CLV/PCAV (CD 24x, DVD 3x) Write speed # 1: 2822 kB/s CLV/PCAV (CD 16x, DVD 2x) Write speed # 2: 1764 kB/s CLV/PCAV (CD 10x, DVD 1x)
Pour tester sans graver (pas de laser) : -dummy
$ cdrecord -v -dummy -data sarge-i386-netinst.iso [...] Starting to write CD/DVD at speed 24 in dummy TAO mode for single session. Last chance to quit, starting dummy write 0 seconds. Operation starts. Turning BURN-Free off Track 01: Total bytes read/written: 109338624/109338624 (53388 sectors).
Dans /etc/default/cdrecord on n'a pas spécifié de vitesse; commme il s'agit d'un lecteur compatible MMC,
il prend dans ce cas la plus élevée possible. Parallèlement, si l'on spécifie speed=1
il prend la plus basse possible, soit ici 10x.
$ cdrecord -v -data sarge-i386-netinst.iso speed=1
Note: si vous obtenez:
cdrecord: Cannot allocate memory. Cannot get SCSI I/O buffer.
passez en utilisateur root, ou mettez les permissions setuid (chmod u+s
) sur /usr/bin/cdrecord
.
Quand tout est OK, on grave en réel, sans l'option dummy :
cdrecord -v -data sarge-i386-netinst.iso
CD-RW
Si le CD est un RW : le remettre à blanc au préalable
- CD RW neuf :
cdrecord -v -blank=all
- CD RW déjà utilisé :
cdrecord -v -blank=fast
CD Audio
1°) Extraire les pistes du CD audio vers le disque dur :
cdda2wav -B -s -x -D /dev/cdrom
- x: qualité maxi
- B: toutes les pistes avec les fichiers d'information de chaque piste (si vous utilisez les fichiers d'information)
- s: extrait les pistes en stereo
- D chemin du périphérique.
Ou :
cdparanoia -B -d /dev/cdrom
2°) Graver le CD proprement dit
cdrecord speed=2 -dao -eject -useinfo *.wav
- dao: Disk at Once
- eject: ejecte le CD lorsque la gravure est terminée
- useinfo:utilise les fichiers d'information.
CUE
Avec cdrecord:
cdrecord speed=1 cuefile=CDImage.cue -dao -verbose -eject
Alternativement (paquet cdrdao
):
cdrdao write --device /dev/cdrom --speed 1 --eject CDImage.cue
Encore alternativement (paquet bchunk)
bchunk CDImage.wav CDImage.cue moncd # raw bchunk -w CDImage.wav CDImage.cue moncd # wav
puis graver moncd*.raw ou moncd*.wav avec cdrecord comme décrit ci-dessus, avec -tao:
cdrecord speed=1 -audio -tao -eject -verbose *.cdr
Sur mon système, les deux modes semblent écrire chaque piste par-dessus la précédente en mode disc-at-once (dao, solution 1 et 2), et fait des sautes de vitesse en track-at-once (tao, solution 3). Bon, mon graveur a des soucis...
Pour les DVD
Gravure d'une image ISO:
growisofs -dvd-compat -Z /dev/dvd=image.iso
(-dvd-compat verrouille le DVD en écriture après gravure pour plus de compatibilité)
ToDo: compléter la création de l'ISO avec growisofs, expliquer les différences avec mkisofs s'il y a lieu.