Si je copie un lecteur USB amorçable sur un autre périphérique USB, créera-t-il un lecteur amorçable en double?

37

Je pensais que c'était un peu une question idiote, mais une recherche avec Google semble indiquer qu'il n'est même pas possible de copier / coller des données sur un lecteur amorçable sur une autre clé USB? Mais même si nous pouvions le copier, pourquoi cela ne fonctionnerait-il pas? (qui crée un lecteur amorçable en double)

zar
la source
2
Qu'entendez-vous par "copier / coller"? De toute évidence, vous devez copier les parties qui en font un lecteur amorçable (tel que le chargeur de démarrage, etc.), mais il n'y a aucune raison pour que cela ne fonctionne pas.
Jörg W Mittag

Réponses:

56

Copier simplement les fichiers ne fera pas un lecteur amorçable. Ce ne sont pas seulement les fichiers sur un lecteur flash USB qui le rendent amorçable, mais la configuration de la table de partition , les métadonnées relatives à l'organisation du contenu du lecteur, indiquent au PC s'il est amorçable et s'il s'agit d'un MBR ou d'un GPT .

Comme indiqué sur cyberciti.biz :

Chaque disque et partition possède une sorte de signature et de chaînes de métadonnées / magie. Métadonnées utilisées par le système d'exploitation pour configurer des disques ou attacher des pilotes et monter des disques sur votre système.

Cependant, vous pouvez cloner le lecteur flash avec un certain nombre d'outils, tels que dd , EaseUS Todo Backup et l'excellent et open source Clonezilla et Rufus . (Merci à Alex pour les rappels sur dd et Rufus).

Il existe même des appareils électroniques qui répliquent automatiquement les lecteurs flash .

K7AAY
la source
15
En fait, vous n’avez même pas besoin de dd: Simple cpfera le travail - assurez-vous simplement de l’utiliser sur le nœud du périphérique au lieu du contenu du système de fichiers.
Ruslan
Euh, c'est surprenant. Ou peut être pas. Mais pour moi au moins.
Jörg W Mittag
1
'cat <source> destination' marchera bien si la destination n'est pas un tireur que la source.
Ysdx
@JoL vous n'avez pas vu le commentaire (maintenant supprimé) de Jörg. Le mien était une réponse à son assertion qui cpcopierait simplement le noeud de périphérique. Pour éviter toute confusion, j'ai également supprimé mon commentaire.
Ruslan
21

La copie ne fait que copier des fichiers dans des partitions formatées. Vous ne pourrez pas effectuer des tâches spéciales nécessaires au processus de démarrage, telles que définir les indicateurs de démarrage, écrire le chargeur de démarrage ou même parfois copier des fichiers normaux à l'emplacement correct (lire: secteur) de la partition et définir les attributs des fichiers. / autorisations. Sauf si vous avez de la chance de disposer de ces éléments, en raison d'une création antérieure du disque de démarrage, d'un outil de formatage qui écrit le chargeur de démarrage sur le MBR, etc., vous devrez effectuer davantage d'étapes pour rendre le disque amorçable.


Spécifiquement lors du démarrage en mode BIOS , le BIOS recherche le premier secteur (MBR) pour voir s’il existe une signature de démarrage valide 0xAA55 . Si c'est le cas, il charge ce secteur et transfère le contrôle au chargeur de démarrage dans le MBR. Le MBR décrit la configuration de la partition. Par conséquent, il ne peut pas se trouver à l’intérieur de la partition et ne peut pas être copié avec des outils normaux.

De plus, comme le MBR est trop petit pour être utile, la plupart des chargeurs de démarrage modernes divisent le processus de démarrage en plusieurs étapes , le code de démarrage dans le MBR charge alors la prochaine étape. Les autres étapes intra sont à nouveau souvent placés dans des régions en dehors des partitions . Certains le placent peut-être dans la CDE , mais grub place généralement sa deuxième étape dans la zone vide située entre la première partition et le MBR, appelée intervalle post-MBR. C'est pourquoi si vous n'alignez pas les partitions correctement, il n'y a plus d'espace pour que grub puisse mettre son code de démarrage, ce qui entraîne une erreur d'intégration.

De nombreux chargeurs de démarrage tels que LILO ou les anciens chargeurs de démarrage Windows / DOS contiennent également des informations de code codé dans le MBR, telles que la position de la prochaine étape ou des fichiers système. Ils ne fonctionnent pas en lisant les données de la partition mais en lisant plutôt un secteur codé en dur, car il faudra trop de code pour analyser le système de fichiers, ce qui est très difficile à compresser dans de minuscules espaces tels que le MBR ou le post-MBR. Même grub supporte un tel codage difficile . Cela signifie que certains fichiers système doivent se trouver exactement à l'emplacement exact , secteur par secteur, ce que vous ne pouvez pas obtenir avec une copie normale. C'est la raison pour laquelle vous voyez des "fichiers système non amovibles" lors de l'exécution du défragmenteur Windows ou de la réduction des systèmes de fichiers, ce qui n'est parfois pas correct, c'est simplement que Windows a trop peur de déplacer ces fichiers, même si les chargeurs de démarrage modernes sont beaucoup plus intelligents et ne se soucient pas de ce genre de choses.

Et après tout, vous devez également définir la partition de démarrage comme active pour que le chargeur de démarrage sache quoi démarrer. Cela doit être fait par un outil de partitionnement ou par l'édition hexadécimale manuellement, car il est également placé en dehors de la zone de partition.


En UEFI, les choses sont beaucoup plus faciles. Il connaît les systèmes de fichiers FAT (et même davantage de systèmes de fichiers sur des implémentations non standard), c'est pourquoi les fichiers de démarrage sont stockés dans la partition système EFI, AKA ESP . L'UEFI charge les applications * .efi dans l'ESP, qui charge ensuite les systèmes d'exploitation.

Le micrologiciel UEFI prend en charge le démarrage à partir de périphériques de stockage amovibles tels que des clés USB. Pour cela, un périphérique amovible doit être formaté avec un système de fichiers FAT12, FAT16 ou FAT32, tandis qu'un chargeur de démarrage doit être stocké conformément à la hiérarchie de fichiers ESP standard ou en fournissant un chemin d'accès complet du chargeur de démarrage au système. gestionnaire de démarrage.

En résumé, il vous suffit de copier le (s) fichier (s) * .efi sur l’ESP et de placer les fichiers système dans le bon dossier. Cependant, il y a toujours un petit problème car la partition FAT contenant le fichier * .efi doit être marquée comme ESP dans la table MBR ou GPT en dehors des partitions, ce qui ne peut pas être fait en effectuant une copie comme ci-dessus. En particulier, le type de partition doit être changé de 0Ch / 0Bh / quel que soit EFh dans le MBR et C12A7328-F81F-11D2-BA4B-00A0C93EC93B dans un GPT, car l'ESP n'est pas réellement FAT12 / 16/32 mais un système de fichiers indépendant basé sur la famille de système de fichiers FAT


Et il existe encore de nombreux schémas de partitionnement, tels que l'étiquette de disque BSD ou l'APM, qui doivent être modifiés différemment pour pouvoir démarrer. Ou bien, les clés USB ont peut-être été formatées sans table de partition (AFAIK Windows le fait par défaut), ce qui rend son amorçage différent. Mais la même limite s'applique: vous devez modifier des zones non partitionnées.

phuclv
la source
1
C'est la bonne réponse.
Margaret Bloom
C'est la réponse la plus complète , oui, mais je ne pense pas qu'elle soit plus exacte que la réponse acceptée, à laquelle l'OMI répond de manière simple à une question simplement posée.
Ian Kemp
@IanKemp le problème avec la réponse acceptée n'est pas que c'est simple (c'est bon) mais que c'est techniquement au mieux ambiguë :)
Margaret Bloom
Si vous marquez un volume de clé USB comme étant actif (à l'aide de l'utilitaire "diskpart" de la ligne de commande Windows et de tout autre gestionnaire de partition tiers), en copiant le contenu d'une image ISO Windows vista / 7/8/10, la clé devient une clé de démarrage Windows. aucune chose de ramdrive ou de furthur montage ne se produit au démarrage. Donc, évidemment, après avoir marqué un bâton comme actif, tout ce dont vous avez besoin est un petit fichier image de démarrage (bootmgr et bootmgr.efi sous Windows, je suppose) sur le bâton; pas besoin d'outils complexes. Je m'attendrais à une simple procédure de ligne de commande sous Linux, bien plus simple que Windows.
Red.Wave
3

Traditionnellement, le démarrage du BIOS nécessitait un marqueur invisible spécial. Voici quelques exemples :

  • Si partitionné MBR ("disque dur"), dans la table de partition
  • Si disquette / super-disquette ("lecteur ZIP"), l’ensemble du lecteur est formaté sans table de partition, puis dans les premiers octets
  • Si CD, alors El Torito

Dans ces cas, vous ne pouvez pas simplement copier des fichiers. Le lecteur résultant ne pourra plus démarrer car il manque ces marqueurs spéciaux.

Cependant , le démarrage de UEFI est spécial, plus intelligent et répond spécifiquement à ces problèmes. Comme toujours, je vous recommande de lire ce billet de blog pour une introduction simplifiée à UEFI. Prenez note de la section de démarrage de secours. Ceci est également discuté plus en détail ici .

Tout ce dont vous avez besoin pour que cela fonctionne est un fichier dans un chemin spécifique de la partition dans laquelle le micrologiciel va rechercher. Pour une compatibilité optimale 1 , il devrait s'agir d'une partition au format FAT32 marquée en tant que partition système EFI sur un disque partitionné en GPT. Cependant, la plupart des microprogrammes recherchent également des partitions (simples) sur des disques partitionnés et non partitionnés (superfloppés).

Cela signifie que tout ce dont vous avez besoin pour démarrer UEFI est une partition unique au format FAT32 1 contenant une entrée de démarrage de secours. Sur une architecture x86_64, cela signifie que vous n’avez besoin que d’un \EFI\BOOT\BOOTx64.EFIfichier. Vous pouvez simplement copier d'un lecteur flash à un autre, y compris ce fichier, et tout devrait fonctionner.


1 FAT32 et GPT sont requis par la norme. MBR et superfloppy ne sont pas, autant que je sache, mais leur support est assez universel parmi le matériel de bureau. Laptop est un peu plus ésotérique; les tablettes sont un mélange, et Mac EFI est unique.

2 Le standard UEFI nécessite la prise en charge de FAT32. Certains microprogrammes peuvent également prendre en charge NTFS (bien que loin d'être garanti) et vous pouvez en fait intégrer un pilote NTFS dans un ESP FAT32.

Bob
la source
0

Cela dépend de ce que vous entendez par «copier».

Copier et coller dans l'interface graphique de votre système d'exploitation? Non, cela ne fonctionnera pas - certains fichiers nécessaires à une clé USB amorçable seront considérés comme "cachés" / invisibles et non copiés.

Il existe plusieurs types de copie qui va travailler. Ceci est souvent appelé "imagerie" d'une nouvelle clé USB, afin de se différencier de la "copie" de son contenu. La méthode la plus courante consiste à utiliser un outil de ligne de commande, mais des options graphiques sont disponibles si vous en avez besoin.

Cela devrait être assez de fond pour que votre recherche soit sur la bonne voie!

Saphon
la source