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.