Attributo "extents" di Linux ext4


9

Ho notato l' eattributo su diversi file / directory su macchine Linux installate su filesystem ext4.

[kelly@p2820887.pubip.serverbeach.com ~]$ lsattr -d /bin
-------------e- /bin

Secondo chattr(1):

L'attributo 'e' indica che il file sta usando estensioni per mappare i blocchi sul disco. Non può essere rimosso usando chattr (1).

In che modo è diverso e, cosa più importante, in che modo questo dettaglio è significativo - in particolare perché questo dettaglio è abbastanza importante da essere riportato come attributo di file? In quali circostanze dovrei mai modificare il mio comportamento in base alla consapevolezza che questo file "sta usando le estensioni per mappare i blocchi su disco"? Presumibilmente questo è qualcosa che devo sapere, altrimenti non sarebbe reso così ovvio, giusto?

Risposte:


13

Penso che il flag di estensione sia esposto come un attributo principalmente in modo che tu possa impostarlo con chattr, il che farà sì che il driver ext4 riallochi il file usando extents invece che liste di blocchi. Se hai convertito un filesystem ext3 esistente in ext4 (usando tune2fsper abilitare i nuovi flag di funzionalità), probabilmente vorrai convertire i file esistenti per usare extents, e questo è il modo per farlo.

I file appena creati su un filesystem ext4 usano sempre extents (per quanto ne so), quindi se il tuo filesystem è stato creato come ext4 (al contrario di convertito da ext3), tutto dovrebbe avere già l'attributo extension, quindi non è necessario preoccuparsene.

Vedi questo articolo per maggiori informazioni.


KVPM v0.9.9 -> scrivi filesystem -> opzioni ext4 aggiuntive -> usa estensioni. Sembra che creerebbe il fs senza estensione, da quello che hai detto, dovrebbe essere già contrassegnato / controllato o disabilitato (immutabile), abbastanza confuso, potrebbe essere un bug dell'interfaccia di kvpm? ma ora credo che ciò significhi che ci sono opzioni predefinite, e provare a impostare tali flag ci permette solo di cambiare questi valori predefiniti, non ci sta semplicemente mostrando quali sono i valori predefiniti! probabilmente ...
Aquarius Power il

1
@AquariusPower, questa domanda riguarda il flag extents su un singolo file, ma l'opzione che vedi in KVPM è se il nuovo filesystem dovrebbe supportare gli extents. Se lo disattivi, tutti i file verranno allocati con elenchi di blocchi e non avranno l'attributo "e". Se successivamente esegui tune2fs -O extentil filesystem per abilitare le estensioni, i nuovi file avranno l'attributo "e", ma quelli preesistenti non lo faranno fino a quando non avrai chattr +eil file.
Wyzard,
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.