dovrei mettere il mio filesystem btrfs multi-dispositivo su partizioni del disco o dispositivi raw?


16

Se ho intenzione di creare un filesystem btrfs multi-dispositivo . La raccomandazione ufficiale dalla documentazione sembra essere quella di crearla su dispositivi grezzi; cioè /dev/sdb, /dev/sdcecc., ma questo non è spiegato.

Ci sono dei vantaggi nel creare prima una tabella delle partizioni su questi dispositivi, GPT o MBR, e poi creare il filesystem su /dev/sdb1, /dev/sdc1eccetera? L'alimentazione di interi dispositivi btrfs presenta alcuni vantaggi particolari o sono sostanzialmente equivalenti?

Risposte:


7

Il partizionamento è solo un modo per suddividere un disco in più volumi che possono essere utilizzati in modo indipendente. Se vuoi solo un volume per disco, il partizionamento non ti compra nulla: usa solo rimuove un po 'di spazio su disco (sì, è molto piccolo) e complica cose come allineare i tuoi dati su hard disk con settori 4K o unità flash. L'unico altro motivo per avere una tabella delle partizioni è per avviare quell'unità. Se non c'è motivo di avere una tabella delle partizioni, è più semplice ometterla.


3

Ci sono una serie di svantaggi del partizionamento. MBR spreca un'intera "traccia". Una traccia è il numero di settori per dimensione del settore, ma un disco reale ha settori e la dimensione del settore non è 512o. Un disco reale ha blocchi che sono 8 volte più grandi per i dischi rotanti e molto più grandi per i dispositivi flash. Questo spostamento alla traccia successiva potrebbe rendere impossibile allineare settori "logici" con blocchi reali usando falcata e striscia.

In passato era possibile definire le dimensioni del settore in FAT, ma MBR ha posto fine a questo.

Se si sta eseguendo l'avvio dal disco, il BIOS necessita di una firma di avvio alla fine del primo 512o in modo che sappia che può eseguirlo quando viene caricato. Se stai eseguendo EFI, ubriacati. Il file system dovrebbe avere un buco per questo se deve essere usato per avviare il sistema.

XFS (usato principalmente su / var su dischi rotanti) non ha questo foro.


1
Sono leggermente confuso; "il numero (totale) di settori per la dimensione del settore" non sarebbe l'intero disco, se il disco è costituito da settori? O è implicito qualcosa di diverso dal "totale"?
Glifo

1

Utilizzare dischi separati per ottenere vantaggi in termini di velocità di lettura / salvataggio del disco.

Fondamentalmente, /dev/sdaè un disco rigido, e /dev/sda1, /dev/sda2sono parti dello stesso disco fisico.

se usi /dev/sda, + /dev/sdbper la tua configurazione, hai due dischi separati in grado di riattivare contemporaneamente.

se lo usi /dev/sda1 /dev/sda2ottieni lo stesso disco cercando di leggere entrambi, e quindi deve fare uno e poi l'altro.


1
Se stai dicendo che l'utilizzo sdaè più veloce di sda1, da dove viene questo vantaggio di velocità?
user1686

il vantaggio di velocità deriva dall'archiviazione e dal recupero di dati paralleli dell'hardware, anziché dallo stesso hardware che prova a saltare in più posizioni sullo stesso disco
Jharwood,

Non è stato menzionato più posizioni o più partizioni. La domanda riguarda una singola partizione che copre l'intero disco.
user1686

Ah, scusa se ho capito male la domanda.
Jharwood,

0

Se ho capito bene, l'uso di interi dischi consentirà a BTRFS di fare alcune ipotesi che consentano una certa ottimizzazione del comportamento.

Ad esempio, se gli vengono concessi dispositivi completi da cui lavorare, si può presumere che non avrà nulla di impegnativo per l'accesso al dispositivo e può personalizzare i suoi metodi di accesso invece di dover anticipare periodicamente ritardi da qualcos'altro che richiede dati da qualche parte altro sul dispositivo e attendere che l'unità torni ad esso dopo aver gestito l'altra richiesta.


Quello che stai descrivendo è chiamato la realtà dell'IO del disco in generale, non qualcosa di specifico del filesystem. Cosa hai visto in particolare in btrfs che ottimizza o pianifica IO in modo diverso in base all'esistenza o meno di una tabella delle partizioni?
Brian Cline,

Il filesystem non lo fa. Il sistema operativo lo fa se detto comportamento è appropriato. I miei usi di "esso" erano probabilmente ambigui e / o sovrapposti e / o esclusivi l'uno dell'altro.
assassino

0

Con tutte queste unità di settori 4K puoi usare il partizionamento per allineare il tuo filesystem. Basta avviare fdisk con:

fdisk -H 224 -S 56

e creare una singola partizione che copra l'intero dispositivo.

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.