Comment effectuer une écriture brute sur mon lecteur de CD ? /dev/scd0
? Je veux écrire un bootloader (qui prend deux secteurs) directement sur un CD, est-ce possible ?
Réponses
Trop de publicités?Les CD n'étant pas des périphériques de bloc traditionnels, l'écriture via dd n'aboutira probablement pas à un CD utilisable. Si vous souhaitez écrire une image sur un CD, utilisez la commande wodim
(ce que l'on appelait autrefois cdrecord
).
wodim dev=/dev/cdrom file.iso
Vous pouvez également utiliser l'outil graphique Brasero Disc Burner
incluse dans l'installation par défaut d'Ubuntu.
Notez également qu'un processus différent est utilisé pour démarrer à partir d'un CD par rapport au démarrage à partir d'un périphérique en bloc tel qu'un disque dur. Plutôt que d'exécuter simplement le code trouvé dans les premiers secteurs de l'image, il utilise un processus appelé Spécification du CD amorçable El Torito . En effet, l'image du CD contient un tableau qui indique où trouver les chargeurs de démarrage pour une ou plusieurs architectures de CPU. Le boot loader existe soit directement sur le CD lui-même, soit à l'intérieur d'une image de disquette. Dans ce dernier cas, le BIOS émule un lecteur de disquette soutenu par cette image et démarre normalement à partir de là.
Si vous souhaitez démarrer Linux à partir du CD, je vous suggère d'utiliser la commande ISOLINUX boot loader. Une copie du boot loader peut être trouvée dans le fichier syslinux
l'emballage.
Si vous souhaitez utiliser un autre code de démarrage personnalisé, le mode d'émulation de disquette peut être un choix plus facile.
Je vois quelques lacunes dans votre approche...
Tout d'abord, il est généralement impossible d'écrire des secteurs arbitraires sur un CD-ROM - contrairement aux disques durs, les supports optiques ne prennent pas en charge les écritures aléatoires. Pensez aux disques CD-R, aux sessions d'ouverture/fermeture et à d'autres choses.
Deuxièmement, la procédure de démarrage à partir d'un CD est très différente de celle du démarrage à partir d'un disque dur - dans certains cas, les cdroms de démarrage utilisent une image d'une disquette ou émulent un disque dur, etc. Voir El Torito pour plus de détails
Ainsi, pour créer un CD amorçable, j'imagine qu'il faut préparer une image ISO amorçable à l'aide du logiciel ISOLINUX ou un autre boot loader. La gravure de cette ISO sur un CDROM à l'aide d'un programme standard tel que Brasero ou K3b produirait un disque amorçable.