web-dev-qa-db-fra.com

Utilisation de la commande 'dd' pour créer une clé USB amorçable

Pourquoi les images ISO de certains types d’Ubuntu peuvent être placées sur une clé USB avec la commande dd et démarrer correctement, alors que d’autres types ne le sont pas? De plus, il semble que cela dépende d'une clé USB particulière aussi. J'ai essayé avec Ubuntu standard:

$ Sudo dd if=./ubuntu.iso of=/dev/sdd bs=8129

Et cela fonctionne comme un charme, je veux dire: démarrez et installez ou exécutez Ubuntu en direct. Mais lorsque j'utilise une autre clé USB préparée de la même manière, elle ne parvient pas à démarrer avec Système d'exploitation introuvable erreur du BIOS.

Lorsque j'essaie Ubuntu GNOME, il ne démarre tout simplement pas avec la même erreur que dans l'exemple précédent, quelle que soit la clé USB que j'utilise.

Je sais qu’il existe une application Startup Disk Creator dans Ubuntu, mais j’ai été convaincu que c’est seulement une façade graphique pour une simple commande dd, et je peux toujours utiliser dd pour créer une clé USB amorçable, au moins pour Linux. Ai-je tort?

10
user280493

Si vous exécutez Startup Disk Creator, vous remarquerez qu'il effectue trois (quatre) opérations:

  1. Formater le lecteur
  2. Copier les données de l'ISO sur le lecteur
  3. (Ajouter un casper supplémentaire1 fichier de persistance, si sélectionné. ddne vous donne pas la persistance.)
  4. Installer un chargeur de démarrage

Ce n'est pas une interface graphique pour dd(il existe des interfaces graphiques pour ddname__, mais le SDC n'en fait pas partie). Vous pouvez penser que cela équivaut aux méthodes manuelles Arch Linux ou Gentoo . Vous devriez être capable de créer une clé USB amorçable en utilisant la plupart des ISO d'installation (généralement assez populaires) des distributions. Ce n'était pas vrai il y a trois ou quatre ans, quand j'ai regardé Arch. C’est seulement en 2010 que toutes les images ISO Arch ont obtenu cette fonctionnalité (vous pouvez l’écrire directement sur une clé USB). De 2008 à 2010, elles possédaient des images USB spéciales.

De plus, si vous ddun lecteur directement, ce lecteur est en lecture seule jusqu'à ce que vous le formatez ou que vous utilisiez l'espace restant. Un disque créé par SCD est toujours utilisable en tant que clé USB, même si le contenu n'est pas facilement accessible depuis l'environnement en direct. Donc, si vous ddun ISO de 1 Go sur un lecteur USB de 8 ou 16 Go, vous perdez réellement l’espace restant à moins que des mesures supplémentaires ne soient prises.


1Généralement, la plupart des images en direct utilisent un fichier SquashFS pour la partition racine . SquashFS est en lecture seule. Par conséquent, pour la persistance, un fichier casper-rw est créé dans /casper. Je ne suis pas sûr des origines de caspername__. D'après ce que j'ai compris, lorsqu'il a été démarré avec l'option boot=casper, le noyau recouvre le fichier casper (en créant un s'il n'en existe pas) au-dessus du fichier squashfs, de sorte qu'il gagne en écriture. casperne doit pas nécessairement être un fichier, il peut également s'agir d'une partition .

4
muru

Vous pouvez même créer une clé USB amorçable avec cp (cela me semble beaucoup plus simple que dd ou une interface graphique):

Sudo cp path/to/ISO /dev/sdX


N'oubliez pas que /dev/sdX doit être remplacé par le nom de votre périphérique de blocage (par exemple, /dev/sdb, /dev/sdc).

1
Luis Lavaire

essayez d'abord:

su -c 'mkfs.vfat /dev/sdc -I'

Pour créer un disque USB amorçable à partir d’un fichier ISO à l’aide de la commande dd , le disque ne peut pas comporter de partitions du type / dev/sdc1 (un à partir de quatre partitions principales possibles du disque / dev/sdc). Vous ne pouvez pas cloner des blocs de fichier iso sur une partition principale, car le dvd ou le disque cd ne l’a pas aussi. C'est pourquoi vous devez créer un système de fichiers exactement sur le disque / dev/sdc, pas dans la partition primaire.

De plus, vous avez commis quelques erreurs en tapant la commande dd .

Essaye ça:

su -c 'dd if=/home/user/debian.iso of=/dev/sdc bs=4M;sync;eject /dev/sdc'

votre commande ne corrige pas sans mkfs.vfat en premier. peut être si vous installez aussi bootloader et rendez la partition active. Les autres lecteurs USB ne fonctionnent pas car votre port USB peut être partagé avec un autre votre port USB ou vous n’avez pas le pouvoir de travailler avec un système d’exploitation USB en direct, probablement avec un lecteur de disque dur et un autre disque USB nécessitant plus de puissance que d’habitude. Que la consommation électrique moyenne de ce type de périphériques (comme les disques durs en boîtier externe avec usb de l'adaptateur sata)

1
gr8b8