web-dev-qa-db-fra.com

Pourquoi dd n’est pas une commande fiable pour écrire des fichiers .iso amorçables sur une clé USB?

Une réponse ici indique que Ubuntu .iso s ne devrait pas s’amorcer s’il est copié avec dd sur une clé USB.

Pourquoi certaines distributions Linux ont-elles la possibilité d'écrire directement leur fichier bootable .iso sur une clé USB avec dd, alors que d'autres (Ubuntu?) N'en ont pas?

Dans Ubuntu, je pense qu’il doit d’abord être converti en .img. Est-ce vrai?

Est-ce une différence architecturale dans .isos? Ou est-ce dû à une limitation de dd lui-même?

Je ne sais pas si c'est hors sujet ici. Je peux le déplacer à un endroit plus approprié si la communauté le pense ou le suggère. Une explication serait appréciable.

18
Samik

Avec Ubuntu 12.04, il est possible de dd le fichier .iso sur un disque pour créer un disque amorçable. Il ne fonctionne qu'avec certaines normes ISO (y compris Ubuntu 12.04, mais pas avec les versions antérieures d’Ubuntu), car l’initialisation à partir d’un CD et celle à partir d’un disque sont gérées différemment sur les systèmes BIOS.

Entre autres choses, pour qu'un disque dur soit amorçable, il doit contenir code d'amorçage dans le premier secteur , pour qu'un CD soit amorçable, il doit contenir le code d'amorçage " à secteur 11 (17 décimales) dans la dernière session du CD "selon le spécification El Torito . Etant donné que le code de démarrage, au moins la partie initiale chargée par le BIOS, est stocké à des emplacements différents pour les CD et les disques durs, une image de disque peut comporter un code de démarrage aux deux emplacements, de sorte que le chargeur de démarrage est chargé si l'image est démarrée en tant que disque dur. lecteur ou comme un CD.

La plupart des fichiers ISO ne sont conçus que pour pouvoir être démarrés sous forme de CD. Ils ne contiennent donc pas de code de démarrage dans le premier secteur de l'image. Ainsi, un disque dur contenant une telle image n'aura pas de code de démarrage dans son premier secteur et ne le sera pas. bootable.

31
Jordan Uggla

Les ISOs actuels d'Ubuntu sont ddname __- capable et le sont depuis un certain temps. Ce sont des ISO "hybrides": ils ont un secteur de démarrage MBR. Utiliser correctement ddcréera un lecteur USB entièrement amorçable.

L'article cité, btw, ne contient qu'une seule réponse affirmant que les ISO d'Ubuntu ne sont pas ddname __able, et ce n'est pas vrai.

S'il vous plaît voir ma réponse ici: Comment convertir un ISO iso9660 en USB ISO

Cette réponse permet de déterminer si une iso est hybridée (vous pouvez le vérifier pour les ISO Ubuntu), comment l'hybrider si ce n'est pas le cas (et dans les autres cas), et comment utiliser correctement ddpour créer un lecteur de démarrage.

0
quest