Panoramica di Installa GRUB
GRUB è l'acronimo di Grand Unified Bootloader. Se sul tuo sistema sono installate più immagini del kernel, puoi scegliere quale eseguire. GRUB mostra una schermata di avvio, è in attesa di un paio di secondi, a meno che tu non inserisca nulla; carica l'immagine del kernel di default dato dal file di configurazione di grub. In questo argomento, impareremo a installare GRUB.
Come configurare e installare GRUB?
Il file di configurazione di Grub è /boot/grub/grub.conf
Contiene l'immagine del kernel e initrd.
Caricatore di avvio predefinito per RHEL6 (Red Hat Enterprise Linux 6) su sistemi x86 e x64
Imposta i file GRUB in / boot / grub e posizionali nella traccia di avvio:
Quindi, se saltiamo su una riga di comando qui e accediamo alla directory / boot / grub / e grep 1_5
Vediamo un sacco di caricatori di avvio di fase 1.5 specifici del file system. Quindi uno per ext, uno per reiser uno per xfs e altro. E interessante notare che GRUB accede al file system ext2, ext3 ed ext4 con lo stesso driver.
La configurazione del boot loader di GRUB viene effettuata modificando il file /boot/grub/grub.conf. Si chiama menu bootgrub nella riga di comando, vedi sotto comando.
Quindi andiamo a vedere come appare il file.
È un file di configurazione piuttosto piccolo. Analizziamolo nel suo componente principale
Nella parte superiore qui abbiamo una sorta di impostazioni globali,
E poi sotto questo in fondo, abbiamo le impostazioni specifiche del sistema operativo. Ora, nel nostro esempio, abbiamo le impostazioni per due sistemi operativi, Windows 8 e RHEL 6.
Ma prima diamo un'occhiata all'impostazione globale. Impostazione predefinita = 0 qui. Bene, questo ci dice che, a meno che non interrompiamo il processo di avvio e diciamo a GRUB, altrimenti avvierà la prima opzione del sistema operativo che abbiamo specificato di seguito, quindi per noi che è RHEL 6 Timeout = 10 dice a GRUB di darci 10 secondi durante i quali abbiamo può premere un tasto per interrompere il processo di avvio.
Quindi splash image, beh, basta inserire un'immagine splash personalizzata dietro il menu di avvio, non molto importante se non per il branding.
Quindi l'opzione di menu nascosta qui nasconde il menu delle scelte del sistema operativo (sistema operativo) a meno che non premiamo un tasto. Infatti,
Diamo un'occhiata a come appare il processo di avvio anticipato con e senza questa opzione di menu nascosta. Quindi, lo vedremo prima senza il menu nascosto.
Ok, guarda qui come possiamo vedere il menu con le diverse scelte del sistema operativo.
E in fondo qui abbiamo un timer che ci dice quanto tempo abbiamo fino a quando l'avvio continua.
L'avvio multiplo può essere un po 'complicato, quindi il menu nascosto ci consente di nascondere quel menu e invece tutto ciò che otteniamo è questo.
Ok, se premiamo un tasto, torniamo al menu di avvio che abbiamo appena visto.
Se non premiamo un tasto, il sistema si avvia e, il più delle volte, ad essere sinceri, viene solitamente specificata l'opzione di menu nascosta. Queste sono le principali impostazioni globali. Possiamo aggiungerne altri se abbiamo bisogno di opzioni di fallback nel caso in cui l'opzione predefinita non funzioni,
Ora diamo una rapida occhiata all'impostazione specifica operativa. Quindi, torniamo al nostro file di configurazione di GRUB e abbiamo definito due sistemi operativi, RHEL 6 e Windows 8.
Per ogni sistema operativo, abbiamo bisogno di almeno tre righe, titolo, root e kernel, e per Linux abbiamo bisogno di un'altra riga, initrd.
Quindi, il titolo è arbitrario. Puoi mettere praticamente tutto quello che vuoi qui. Lo abbiamo fatto con l'opzione Windows 8. GRUB non ha riconosciuto il sistema operativo. Metti solo altri, quindi l'abbiamo cambiato manualmente in Windows 8.
Quindi, sradicare. Questo ci consente di specificare la directory principale per GRUB.
Ora, per impostazione predefinita, il modo in cui GRUB si rivolge alle unità disco e alle partizioni è diverso da quello del kernel,
Per la nostra installazione RHEL qui abbiamo hd0, 2. Bene, prima di tutto abbiamo bisogno di parentesi. Quindi aggiungiamo l'HD, che è l'abbreviazione di disco rigido.
Ora a GRUB non importa se si tratta di un'unità SCSI (Small Computer System Interface). Un ID o un'unità ATA. Davvero non potrebbe importare di meno. Per quanto riguarda GRUB, sono solo tutti i dischi rigidi, quindi GRUB li chiama solo qualcosa di HD.
Quindi il primo numero qui è il numero del dispositivo secondo il BIOS, quindi 0 è il primo dispositivo a disco sul sistema. E ricorda che GRUB è un sistema informatico adeguato. Comincia a contare da 0, non da 1. Quindi abbiamo bisogno di una virgola e quindi le assegniamo il numero di partizione.
Ancora una volta 0 è la prima partizione. È davvero importante quando una directory di lavoro con l'MBR.
Useremmo hd0 per indirizzare l'MBR sul primo dispositivo, hd1 per indirizzare l'MBR o il record di avvio del volume sul secondo dispositivo. Quindi, quello che abbiamo qui è la terza partizione sul primo disco rigido del sistema,
Quindi unità 0, partizione 2.
Ora, se il kernel si rivolgesse a questo dispositivo, userebbe sda3. E proprio come il kernel può GRUB può anche indirizzare un dispositivo senza trasportare partizioni, quindi l'equivalente di devsda nell'istanza sarebbe hd0 racchiuso tra parentesi ovviamente.
La prossima riga del kernel. Qui è dove specifichiamo la posizione del kernel più tutti i parametri di avvio che vogliamo passare ad esso, e passeremo un po 'di tempo qui.
Quindi, prima di tutto, la posizione del kernel è specificata in base alla sua posizione all'interno di un file system. Ricorda che quando avremo su grub.conf siamo in esecuzione con il boot loader di fase 2, che sa tutto sui file system, quindi non abbiamo bisogno di usare nulla come la notazione blocklist.
Possiamo semplicemente dargli un percorso standard per il file system UNIX.
Successivamente, l'immagine del kernel si chiama vmlinuz us la versione del kernel e dell'architettura, quindi per noi una versione del kernel 2.6.32. Sì, è vecchio ma solido come una roccia ed è per architetture x86 / x64.
La parte VM è un ritorno a quando il supporto della memoria virtuale era una grande cosa, e schiaffeggiare vm nella parte anteriore ha detto a tutti che il sistema supportava la memoria virtuale, e quindi z o zed alla fine ci dice che l'immagine del kernel è un immagine compressa, che la mantiene piccola.
Quindi, sebbene il kernel stesso sia un programma ed è scritto in C con alcuni assembly, è memorizzato sul nostro sistema come immagine compressa chiamata vmlinuz.
Ora abbiamo il file system di root qui sul nostro volume logico ed è specificato come di sola lettura.
Ora, più avanti nel processo di avvio, verrà rimontato come lettura / scrittura.
Partizione di crittografia di r _NO_LUKS
Quindi per i sistemi operativi Linux, qui abbiamo una riga che inizia con il comando initrd.
Quindi, un paio di cose su initrd.
Innanzitutto è l'abbreviazione di un disco RAM iniziale e di cosa sia un'immagine disco caricata con driver e moduli e cose simili di cui il kernel ha bisogno per mantenere il processo di avvio che ticchetta.
Ricorda che il kernel è piccolo e non contiene driver per ogni tipo di unità disco nel mondo. Quindi, questo file initrd viene caricato in memoria come un file system radice temporaneo da cui il nome RAM disk, e quindi il kernel lo usa per accedere e caricare i moduli necessari per fare altre cose nel processo di avvio.
La seconda cosa giusta di initrd è che initrd è una specie di termine legacy per esso perché oggigiorno, almeno dai kernel 2.6, è un'immagine di initramfs.
Initramfs è una forma migliorata di initrd, quindi initrd è stata bloccata l'immagine del dispositivo caricata in memoria, ma vi si accede come un dispositivo a blocchi, i dati che sono stati letti o scritti su di esso sono stati memorizzati nella cache di Linux.
Quindi avremmo caricato initrd in memoria.
Initramfs è diverso, è meglio. Di alto livello.
Sta solo montando quella cache, quindi nessuna duplicazione.
Abbiamo ottenuto initramfs che corrisponde alla nostra versione e architettura del kernel, ed è così che GRUB è configurato per l'avvio di Linux.
Ora abbiamo più versioni di Linux sulla nostra macchina RHEL, Fedora, Mint tu lo chiami.
Questi saranno elencati anche qui allo stesso modo. E GRUB può caricare direttamente il kernel Linux, chiamiamo questo tipo di avvio diretto o caricamento diretto.
GRUB non può caricare direttamente il kernel di Windows, quindi, ciò che carica è caricare Windows tramite un meccanismo chiamato Chain Loading
L'opzione +1 qui sotto è ciò che accade, quindi GRUB avvia il processo di avvio ma alla fine passa il controllo al boot loader di Windows che viene installato sulla prima partizione del primo disco rigido come indicato qui da (hd0, 0)
Ora, questo indica anche che Windows è stato installato prima di Linux.
Questa opzione di rootnoverify dice a GRUB di non montare la partizione e di controllarla, quindi il chainloader +1 dice a GRUB di passare il controllo al programma che esiste nel primo settore di quella partizione.
Scegliamo Windows e partiamo.
Ora, mentre quello va bene,
Quando si utilizza GRUB con Windows, GRUB si avvia al boot loader del secondo stadio. Legge grub.conf e quindi passa il pulsante al caricatore di avvio di Windows.
Ecco le basi del multi-boot del dual boot con Linux e Windows usando GRUB.
Articoli consigliati
Questa è una guida Installa GRUB. Qui discutiamo come configurare e installare GRUB e le basi del multi-boot del dual boot con Linux e Windows usando GRUB. Puoi anche dare un'occhiata ai seguenti articoli per saperne di più -
- Come installare Linux
- Server DHCP in Linux
- Operatori di Windows
- Introduzione a Windows