A cosa serve / boot (basato su lvm) nel partizionamento?


19

Come /homepartizione separata aiuta nella facile reinstallazione / aggiornamento. Avere /bootaiuto durante il dualbooting con Windows? Voglio dire, è utile per i normali utenti di desktop / notebook o è una tecnica avanzata che deve essere implementata nei server?

Risposte:


24

[Le informazioni contenute in questa risposta su GRUB2 e LVM sono in gran parte dovute agli sforzi di Jan ; in origine questa risposta era gravemente in errore e Jan merita credito per i miglioramenti che ho apportato. -Eliah]

Quando non si utilizza LVM, una /bootpartizione separata è utile principalmente per garantire che i file necessari per l'avvio siano abbastanza vicini all'inizio dell'unità, quando la /partizione non si trova all'inizio dell'unità. Ad esempio, potresti voler mettere la tua partizione Linux-swap molto vicino all'inizio dell'unità, poiché su alcune unità è possibile accedere più rapidamente ai dati vicino all'inizio dell'unità. Quindi potresti avere una piccola /bootpartizione, seguita dalla tua partizione Linux-Swap, seguita dalla /partizione (quindi seguita da altre partizioni separate se ne hai, come /home).

Per un po 'di tempo, questo è stato in gran parte inutile, perché con i BIOS più recenti, di solito è possibile avviare un sistema i cui file di avvio si trovano in una partizione lontana dall'inizio del disco. Tuttavia, ci sono pochi svantaggi nel farlo (a meno che non lo si faccia /bootcosì piccolo da riempirsi - probabilmente dovrebbe essere di circa 250 MiB), così tante persone che partizionano manualmente lo fanno ancora.

Vecchi boot loader come LILO stessi avevano limitazioni che hanno reso distinte /bootpartizioni utile, come Jan sottolinea .

Quando si utilizza LVM, se la /partizione si trova su LVM, era necessario disporre di una /bootpartizione separata . In tale configurazione, la /bootpartizione non è una partizione di LVM, ma piuttosto una partizione sul disco prima dell'avvio di LVM. Questo perché i caricatori di avvio non sono stati in grado di leggere i file da un LVM. Quindi non potresti mai avviare il tuo sistema su LVM se non avesse una /bootpartizione separata (vedi questo e questo per i dettagli).

La capacità di leggere file da un LVM è stata aggiunta con GRUB2 , il che significa che tutte le versioni recenti di Ubuntu (Ubuntu 9.10 Karmic Koala e successive) ce l'hanno . Quindi, con una corretta configurazione, puoi avere l'intero sistema Ubuntu in un LVM senza una partizione separata / boot. Vedi questa pagina per i dettagli su come configurarlo. (In effetti, l'unica versione di Ubuntu attualmente supportata che utilizza GRUB originale anziché GRUB2 è Ubuntu 8.04 LTS Server; ogni altra versione non EoL - 10.04 LTS, 10.10, 11.04 e 11.10 - utilizza GRUB2.)

Se si utilizza LVM ma non per l'unità di sistema Ubuntu, solo per un'unità di archiviazione o per una parte del sistema (forse per /home) ma non /, quindi /bootnon è necessaria una partizione separata , anche se si utilizza una vecchia ( pre-GRUB2) sistema.

In sintesi, una /bootpartizione separata è in gran parte una questione di preferenza personale per i sistemi che non usano LVM, mentre un sistema più vecchio installato su un LVM potrebbe averne bisogno.


3
Questo è corretto, anche se leggermente obsoleto. Le versioni recenti di grub2 possono leggere / avviare da un volume LVM. wiki.archlinux.org/index.php/GRUB2#LVM (Link a Arch Wiki, non sono sicuro di quale versione di Ubuntu spedirebbe una versione abbastanza recente di grub.)
gennaio

@ Jan Grazie per le informazioni - ho modificato la mia risposta per riflettere questo. Se puoi suggerire ulteriori miglioramenti, ti preghiamo di commentare ulteriormente o, se preferisci, non esitare a modificare tu stesso la mia risposta.
Eliah Kagan,

@Jan Per quanto riguarda quali versioni di Ubuntu sono abbastanza nuove da GRUB da eliminare / avviare per LVM ... secondo gnu.org/software/grub/manual/grub.html#Changes-from-GRUB-Legacy , sembra tutto le versioni di GRUB2 sono in grado di farlo. Quindi ciò includerebbe qualsiasi versione recente di Ubuntu. Modificherò di nuovo il mio post per riflettere questo.
Eliah Kagan,

Domanda: c'è qualcosa di rilevante se tutti i tuoi dischi rigidi sono SSD? In tal caso, poiché l'unità non ha dischi, in realtà non esiste un posto ideale (inizio dell'unità) per archiviare una partizione di avvio o di scambio, vero?
user447607,

8

/boot esiste per motivi tecnici e storici.

Il boot loader (grub o lilo) deve essere in grado di accedere ai propri file, al kernel Linux e al ramdisk iniziale. Quei file vengono inseriti in /boot.

La prima versione di lilo poteva accedere solo ad alcuni sottogruppi dell'HDD, comprenderebbe solo un numero limitato di filesystem (praticamente solo ext2) e richiedeva che il filesystem risiedesse su una partizione primaria o logica (cioè senza md RAID o LVM). Pertanto, divenne pratica comune avere una piccola /bootpartizione.

Le versioni moderne di grub sono molto più flessibili e, pertanto, in molti casi /bootnon è più necessaria una partizione separata per .

Per il dual boot di Linux e Windows, /bootè irrilevante (anche se mi piace usare il settore di boot della partizione di boot per il caricatore di barche). Tuttavia, quando si esegue il dual boot con diverse installazioni di Linux, è comune condividere /boot.


-1

È inoltre possibile utilizzare una partizione singola / di avvio durante l'installazione di più distribuzioni (nonché una singola partizione di swap). Nessuna di queste distribuzioni possiede il 100% delle informazioni / boot, quindi / boot non dovrebbe trovarsi in nessuna partizione di una singola distribuzione.


2
Non sono d'accordo Avere single /bootper più distribuzioni causerebbe problemi durante l'aggiornamento di kernel o GRUB.
Melebio
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.