J'ai essayé d'installer Arch Linux. Après l'installation, il affiche l'écran du BIOS et après cela vient juste un message qui dit "Aucun périphérique de démarrage trouvé".
J'ai réessayé tout le scénario maintenant quelques fois, il montre toujours le même message ...
Lors de l'installation, j'ai suivi le Guide du débutant non officiel du wiki ArchLinux.
Voici ce que j'ai fait:
Tout d'abord, j'ai effacé le disque dur (sur lequel, avant l'effacement, Windows Vista était installé) et j'ai mis GPT dessus en utilisant gdisk. Ensuite, j'ai mis en place quelques partitions, qui ressemblent maintenant à ce qui suit (sortie de parted):
Model: ATA ST9160310AS (scsi)
Disk /dev/sda: 160GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB BIOS boot partition bios_grub
2 2097kB 107MB 105MB ext2 Linux filesystem
3 107MB 21.6GB 21.5GB ext4 Linux filesystem
4 21.6GB 30.2GB 8590MB linux-swap(v1) Linux swap
5 30.2GB 160GB 130GB ext4 Linux filesystem
Ensuite, j'ai monté la partition racine (sda2) sur / mnt, après cela également le démarrage et la partition d'accueil (sda3 et sda5) sur / mnt / boot et / mnt / home et à la fin formaté et activé la partition de swap (sda4) .
Maintenant, j'ai commencé à installer le système de base. Après avoir sélectionné les miroirs, j'ai installé la base et la base-devel.
À la fin de l'installation, j'ai généré un fstab.
Ensuite, j'ai finalement chrooté dans / mnt, mis en place des paramètres régionaux, défini un mot de passe root, puis installé et configuré Grub2, exactement comme cela est expliqué ici .
À la fin, je suis sorti de l'environnement chroot, démonté les partitions et redémarré. Vous connaissez le reste ... Cela a juste montré le message qu'il ne pouvait trouver aucun périphérique amorçable.
Au fait, j'ai essayé de l'installer sur cet ordinateur.
dd if=/dev/sda bs=1 skip=510 count=2 2>&- | hexdump
(ou xxd au lieu de hexdump) est-elle égale à 55aa? Sinon, le MBR est mauvais.0000000 aa55 0000002
si le MBR est mauvais, comment dites-vous, y a-t-il quelque chose que je puisse faire pour le rendre à nouveau bon?aa55
est une signature MBR correcte (55aa
sur le petit système endian).Réponses:
J'ai eu le même problème et en recherchant j'ai trouvé que l'uuid de la racine / partition est incorrect dans grub.cfg, vous pouvez essayer ceci:
mount /dev/sdxx /mnt
(sdxx est votre partition racine)arch-chroot /mnt
grub-mkconfig -o /boot/grub/grub.cfg
grub-install
terminer.
la source
grub-install
: il a dit qu'il n'y aurait pas de partition de démarrage Bios/dev/sda
, alors qu'il y en a une.D'ACCORD. Est devenu un peu long pour commenter. Ce n'est pas directement lié, mais seulement pour expliquer le
aa55
commentaire.Lorsque le système d'entrée / sortie de base (BIOS) démarre, il effectue un auto-test de mise sous tension (POST), vérifie le matériel, etc. à son tour est donnée par un semi-conducteur à oxyde métallique complémentaire ). Lorsqu'il trouve un disque qui a un
0xaa55
décalage 510, il charge cette section du disque (secteur 1) en mémoire et lui laisse le contrôle à l'adresse 0x00000 de ce code. Ces 512 octets sont le Master Boot Record (MBR).Ce code, dans ce cas " GRUB - boot" , vérifie divers octets de ces 512 en plus de demander au BIOS diverses informations. Dans ce processus, il localise le disque qui contient le reste de GRUB et charge cette section du disque en mémoire - puis cette partie du code prend le contrôle. Celui-ci monte le noyau etc. et laisse le contrôle à cela.
En utilisant GPT, l'image que GRUB charge depuis MBR se trouve dans la
bios_grub
partition, que vous avez, et qui est assez grande, etc., donc vous ne pouvez pas voir comment cela pourrait être faux.Sur "Aucun périphérique de démarrage trouvé." message du BIOS - on peut avoir le cas que le MBR du disque de démarrage est corrompu, si le MBR se termine
0xaa55
et que le MBR est corrompu, on obtient généralement une autre erreur - ou le système se bloque simplement.De toute façon. C'est bizarre. Je remarque que vous n'avez aucune partition marquée comme "boot" . Utiliser GPT c'est correct, - mais, bien que ce soit interdit, vous pouvez essayer d'en marquer un par exemple
sda5
comme boot.Dans gparted:(a appris que (g) parted modifie également le GPT dont nous ne voulons pas) fdisk:Il se pourrait que votre BIOS fasse plus que ce qu'il devrait et vérifie la table de partition en MBR.
EDIT - Mise à jour pour commenter:
AFAIK peu importe lequel vous définissez car il n'est pas réellement utilisé. Le fait étant, pour qui jamais dire qu'aucun "périphérique de démarrage trouvé" , ils seront satisfaits. Ce
sda1
n'est pas une partition de démarrage au sens traditionnel, mais de l'espace pour les fichiers de démarrage GRUB.Dans une disposition de partition traditionnelle (pas GPT), vous avez généralement quelque chose comme:
Cela signifierait 3 partitions. Tout avant offset 0x400 sur le disque dur i octets bruts - comme dans aucune partition, etc.
Ici, la partition de démarrage est la partition 2 qui est la partition système avec Linux.
Les fichiers du module 1 GRUB résident juste après MBR et avant la première partition. Il peut résider n'importe où, mais généralement sur le même disque et à l'offset 512 du disque MBR.
Également sur un système GPT - GPT utilise cette section du disque pour lui-même, il faut donc déplacer ces fichiers GRUB vers un autre emplacement. C'est à cela que
bios_grub
sert - à stockercore.img
pour GRUB 2.Le "set boot flag" n'est qu'un tir dans l'obscurité, - et serait surpris si cela fonctionne. Mais on a commencé quelque part.
EDIT2:
Et si vous faites ceci:
Sauvegarde du MBR actuel:
Créez une image d'en
Code TEST
bas, enregistrée dans un fichiertest.s
par:Copiez le
test.img
fichier sur MBR:Démarrage
Code TEST:
Pour restaurer MBR, procédez comme suit:
Cela devrait simplement imprimer "Bonjour!" à l'écran si le MBR a été chargé, puis arrêtez. Testé en fonctionnant sous qemu-system-x86_64, qemu-system-i386, VirtualBox, Intel PC stationnaire 32 et 64 bits.
la source
sda5
comme partition de démarrage. N'est-ce passda1
une meilleure option à définir comme partition de démarrage, car elle est là juste pour cela?J'ai peut-être tort et je n'ai pas fait la bonne chose, mais j'ai eu le même problème que vous au début. Après un certain temps, je l' ai trouvé ici que
GRUB has to have a 512MB EFI partition, with a vfat filesystem
. C'est dans le cas où vous installez votre système en tant qu'EFI:Cela signifie que vous devez anticiper ce fait lors de la création de vos partitions. Ce faisant (avec cfdisk par exemple), vous devrez définir votre / dev / sdX1 comme EFI, puis le formater en un système de fichiers FAT32 (avec la commande
mkfs.vfat -F32 /dev/sdX1
pendant le processus d'installation). Ce n'est qu'alors que grub sera reconnu.Je suppose que Syslinux peut fonctionner avec votre partition ext2, si vous avez envie de l'essayer.
Si vous n'installez pas Arch en tant qu'EFI, vous pouvez probablement vérifier sur le wiki que ce soit. Je ne peux pas vous aider davantage dans ce cas.
Je sais que ce message est ancien, mais c'est au cas où quelqu'un viendrait ici et espère trouver une solution.
la source
512MB (at least)
, c'était l'inverse ...