Booting GNU / Linux manuelt med GRUB Prompt

Dette er et opsvingstutorial om brug af GRUB beder om at starte et operativsystem inde i en harddisk. GRUB prompt er et program, der vises på skærmen med sort / hvid farve, mens en normal GRUB bootloader ikke blev installeret. GRUB prompt svarer til bash kommandolinjen, normalt i Terminal, men den har specielle kommandoer, fordi det faktisk også er bootloaderen. Ved at bruge GRUB-prompt kan du starte et operativsystem manuelt inden for intern eller ekstern harddisk i en partition. Senere kan du installere GRUB bootloader fra operativsystemet ved at starte et GNU / Linux-operativsystem med GRUB-prompt.

Systemoversigt

  • ASUS X44C
  • Intern harddisk 320 GB med 3 primære partitioner.
  • Ekstern harddisk 320 GB med 3 primære partitioner, 1 extended partition og 6 logiske partitioner.
  • Ekstern harddisk har ingen GRUB bootloader (vælger bootloader), men har kun GRUB-prompt.

1. Se Normal prompt

GRUB prompt aways ser sådan ud:

grub> _

Det betyder, at det venter brugeren at indtaste en kommando.

2. Se alle harddiskdrevene

Skriv ls-kommandoen som denne:

ls

så hvis du kun har 1 harddisk med 3 partitioner, har du output som denne:

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1)

eller hvis du har 2 harddiskdrev med hver 3 partitioner, får du output som denne:

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos3)
(hd1,msdos2) (hd1,msdos1)

eller vi kan skrive output i to linjer:

(hd0, msdos0) (hd3, msdos0) (hd2, msdos0) (hd1) (hd1, msdos1) (hd3, msdos1) (hd2, msdos1)

Harddisk: GRUB navngiver hver harddisk med navnet format (hdd_position) og navngiver hver partition (partition_position, partition_type [partition_number]). Så betyder (hd0) din første harddisk detekteret af GRUB, og hd1 er dit andet. I GNU / Linux kalder vi normalt dem / dev / sda og / dev / sdb. Hvis du har flere harddiske tilsluttet, har du hd2, hd3 og bagefter.
Partition: (hd0, msdos1) er den første partition i den første harddisk. I nogle systemer vil dette være / dev / sda1. Vær opmærksom på navnet / dev / sda for harddisken og / dev / sda1 for partitionen inde i harddisken. Bemærk nummeret efter navnet. Derefter (hd0, msdos2) og (hd0, msdos3) er / dev / sda2 og / dev / sda3 partitioner inden for den samme harddisk.
Hvis du har mere end en harddisk, betyder (hd1, msdos1) normalt / dev / sdb1 partition. (hd1, msdos2) og (hd1, msdos3) betyder normalt / dev / sdb2 og / dev / sdb3 partitioner inde på samme harddisk.
Msdos: Navnet msdos i hvert partitionsnavn viser, at partitionen bruger Master Boot Record (MBR) partitionstabellen. Det er en gammel partitionstabel fra MSDOS-æraen, så det hedder blot msdos.

3. Se din OS-partition

Du skal huske, hvor er din OS-partition, uanset om den er i den første harddisk eller på den anden harddisk. Så skal du være sikker på, hvilken deling det er, når du er sikker på det.
I vores eksempel vil vi starte operativsystemet indeni (hd0, msdos3) eller i vores system på den anden harddisk, i partitionen / dev / sdb3 (ikke / dev / sda3) med operativsystemnavnet Kubuntu 15.10 Wily Werewolf.

4. Det første kommando

Den første kommando, der skal udføres, er at komme ind på harddisken. Vi ønsker at indtaste (hd0, msdos3), så vi skriver denne kommando:

sæt root = (hd0,3)

Hvis du vil indtaste den første partition af hd0, skal kommandoen være:

sæt root = (hd0,1)

Hvis du vil indtaste den anden partition af hd0, skal kommandoen være:

sæt root = (hd0,2)

5. Det andet kommando

Den anden kommando er at kalde operativsystemkernen til live. Fordi vi har indtastet (hd0,3) eller / dev / sdb3 i vores eksterne harddisk, skriver vi kommandoen:

linux / boot / vmlinuz-4.2.0-16-generisk root = / dev / sdb3

TAB: Tryk på fanebladet efter skrivning / boot / vmli og GRUB vil automatisk udfylde det lange navn til dig. Det er meget lig med bash shell. Du behøver ikke manuelt at indtaste vmlinuz-4.2.0-16-generisk langt navn.
PARAMETER: Det andet argument (root = / dev / sdb3) er en anelse om, at kernen skal finde root-operativsystemet. Du skal give det korrekt, ellers finder du en kernel panikfejl. Vi har nævnt, at vores (hd0, msdos3) er / dev / sdb3, så vi giver her parameter root = / dev / sdb3.
Forklaring: Formatet af denne kommando er <kernel_name> <kernel_file_name> <kernel_parameter>. Fordi vi vil starte et GNU / Linux operativsystem, bruger vi Linux som <kernel_name>, / boot / vmlinuz-4.2.0-16-generisk som <kernel_file_name> og root = dev / sdb3 som <kernel_parameter>.

6. Det tredje kommando

Den tredje kommando er at kalde initrd (initial ram disk) for at hjælpe kernen til at starte. Kommandoen er meget ens:

initrd /boot/initrd.img-4.2.0-16-generic

TAB: tryk på fanebladet efter at have skrevet / boot / init og GRUB vil automatisk udfylde det lange navn til dig. Det er meget lig med bash shell. Du behøver ikke skrive langnavnet initrd.img-4.2.0-16-generisk manuelt det samme som når du skriver kernenavnet.

7. Det fjerde kommando

Den fjerde kommando er at udføre alle tre kommandoer har skrevet. I et andet ord, for at starte OS. Kommandoen er simpelthen:

båd

8. Kommandosammendrag

Vi har brug for fire enkle kommandoer til at starte et GNU / Linux-operativsystem:

sæt root = (hd0,3) linux / boot / vmlinuz-4.2.0-16-generisk root = / dev / sdb3 initrd /boot/initrd.img-4.2.0-16-generic boot

9. Resultatet

Du vil se din skærm viser mange linjer med tekster output som normalt du ser fra en normal bootloader. Ved de sidste trin vil du se, at dit operativsystem er startet og klar til brug.

Giv en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.