Comment graver sous Linux avec un lecteur IDE ?

graver un cd sous linux

Les programmes de gravure sous Linux ne savent gérer que les périphériques SCSI. Mais rassurez vous. Pour faire fonctionner les graveurs IDE, le noyau linux a recours à une petite astuce : émuler le graveur IDE en graveur SCSI. Il faut d’abord vérifier si les bonnes options sont activées dans le noyau :

SCSI Support -> SCSI support = M
SCSI Support -> SCSI generic support = M
SCSI Support -> SCSI CDROM support = M
ATA/IDE/MFM/RLL support -> IDE, ATA and ATAPI Block devices -> SCSI emulation support = M

Si ces options ne sont pas activées, alors il faut les activer et recompiler le noyau. Normalement sous Mandrake 8.0+ ces options sont activées par défaut et le graveur a de fortes chances d’être préconfiguré.
Ensuite il faut configurer le chargeur de boot pour qu’il dise au noyau quel périphérique émuler en SCSI, pour cela il faut lui passer l’option hdx=ide-scsi , où hdx désigne le lecteur IDE à émuler.

Avec lilo

Il suffit de modifier /etc/lilo.conf et d’ajouter la ligne suivante : append=” hdx=ide-scsi”. Si vous avez déjà append, il suffit de rajouter juste hdx=ide-scsi à la suite.
N’oubliez pas de relancer lilo pour qu’il réenregistre sa configuration en tapant /sbin/lilo.
La ligne append doit être ajoutée dans la section relative de votre noyau par exemple juste après le label.
Cela donne quelquechose de similaire a ceci :

image=/boot/vmlinuz
label=linux
root=/dev/sdb1
append=” hdc=ide-scsi”
read-only

Encore une fois seule la ligne en gras importe. Le reste dépend de votre configuration.

Avec Grub

Il suffit de modifier /boot/grub/menu.lst et de passer en paramètre au noyau en l’ajoutant directement à la ligne kernel l’option : hdx=ide-scsi”
Cela donne par exemple :

kernel (hd2,0) /boot/vmlinuz root=/dev/sdb1  hdc=ide-scsi

Encore une fois seul ce qui est gras importe. Le reste dépend de votre configuration.

Comme je l’ai dit, hdx désigne le lecteur de CDROM IDE que vous voulez émuler en SCSI. Pour information je rapelle la nomenclature des lecteurs IDE sous Linux :
hda = primary master
hdb = primary slave
hdc = secondary master
hdd = secondary slave

Si vous ne le savez vraiment pas (bien qu’il suffit d’ouvrir au pire sa tour), voici une méthode empirique pour le retrouver :

$> grep -r CD /proc/ide/

Et exceptionellement sous Linux, il faut rebooter pour que les changement soient pris en compte.
Ensuite on vérifie si tout est ok :

$> lsmod | grep ide-scsi<- on vérifie si le module d’émulation scsi est bien chargé
$> cdrecord -scanbus<- on vérifie si cdrecord (programme de base de gravure sous Linux) le détecte

Si cdrecord le détecte, alors c’est ok.

Avant de commencer la gravure, il convient de modifier /etc/fstab. En effet, le lecteur étant émuler en SCSI, son nom de device à changer.
Pour nous y retrouver on va créer un répertoire pour monter le graveur, par exemple /mnt/graveur. Puis tester le device.
Le CDROM IDE est émulé en SCSI donc il faut tester les devices SCSI. Les CDROM SCSI sont nommés scdx (Scsi CDrom). Pour cela on met un CD de donnés dans le graveur ou le lecteur IDE qui a été émuler en SCSI et on essaie les commandes suivantes :

$> mount -t iso9660 /dev/scdx /mnt/graveur<-  avec x = 0, 1, 2, 3, ….

Dès que cela marche, vous avez trouvé le graveur. Souvent c’est /dev/scd0.
Ensuite il faut faire votre lien. Faites :

$> ls -l /dev/cdrom*

Prenez le lien qui pointe vers votre ex cdrom IDE et effacer le. Supposons que ce lien est /dev/cdrom, cela donne :

$> rm /dev/cdrom

Ensuite faites le pointer vers le le nouveau lecteur IDE émuler en SCSI :

$> ln -s /dev/scdx /dev/cdrom

Ensuite vous rajouter la ligne suivante dans /etc/fstab :

/dev/cdrom /mnt/cdrom iso9660 ro,nosuid,noauto,exec,user,nodev   0 0

ou

/dev/cdrom /mnt/cdrom auto ro,nosuid,noauto,exec,user,nodev   0 0

Les utilisateurs d’une Mandrake préféront peut être utilisé supermount :

/mnt/cdrom /mnt/cdrom supermount dev=/dev/cdrom,fs=iso9660,ro 0 0

Note : Ce cas ne s’applique bien sûr que lorsque le lien vers le lecteur émulé en SCSI s’apelle /dev/cdrom.

Vous pouvez aussi remplacer /mnt/cdrom qui est le point de montage pour accéder au graveur par le nom que vous voulez : /mnt/cdrom1 , /mnt/graveur , … Bien sûr il ne faut pas oublier de créer le répertoire correspondant.

Ensuite il ne reste plus qu’a configurer les programmes de gravure.
Les plus connus ayant une interface graphique sont : xcdroast, eroaster, k3b, konCD. Vérifier si ces programmes ne sont pas déjà dispobnibles sur les CD de votre distribution.
Une fois le programme de gravure choisi et configurer il ne vous reste plus qu’a graver. Nul besoin de redémarrer à ce stade.

Note : Si voulez faire de la Copie de CD à CD direct, il vous faudra aussi configurer votre lecteur de CD en l’émulant en SCSI pour avoir le graveur et le lecteur en SCSI.

Si vous voulez faire des pochettes de CD sachez qu’il existe des programmes comme cdlabelgen, gtkcdlabel, kcdlabel.
Faites un tour sur http://rpmfind.net pour éventuellement récupérer la version en rpm adaptée à votre distribution.