sviluppo-web-qa.it

Cosa succede se elimino lost + found

Quando si creano alcuni filesystem Linux come ext3, viene creata una directory 'lost + found'. Secondo questo i file verranno posizionati lì se i file sono stati danneggiati da un qualche tipo di crash del sistema.

Cosa succede se questa directory viene rimossa e il sistema si arresta in modo anomalo. Se la cartella viene rimossa, posso semplicemente creare una nuova directory con mkdir lost + found o ci sono degli attributi che possono essere impostati solo quando viene creato il filesystem .

38
Zoredache

fsck ricrea la directory lost + found se manca.

All'avvio la maggior parte delle distribuzioni esegue fsck se il filesystem viene rilevato come non smontato in modo pulito. Quando fsck crea la directory lost + found se manca, la creerà e posizionerà tutto ciò che trova in quella directory.

35
Dave Cheney

Se non puoi o non vuoi eseguire fsck, puoi ricreare lost+found directory con mklost+found :

mklost + found pre-alloca i blocchi del disco nella directory lost + found in modo che quando e2fsck (8) viene eseguito per ripristinare un filesystem, non è necessario allocare blocchi nel filesystem per memorizzare un numero elevato di file non collegati. Ciò garantisce che e2fsck non debba allocare blocchi di dati nel filesystem durante il ripristino.

15
Andrew

Una directory lost + found preesistente con dimensioni sufficientemente grandi da contenere un numero elevato di file non collegati comporta un onere minore per e2fsck per creare la directory e portarla alla dimensione appropriata.

Tenterà comunque di farlo, ma di fronte a un filesystem corrotto, può essere più rischioso.

I fsck molto vecchi per altri filesystem su altre piattaforme non erano in grado di creare/perdere + trovare, né erano in grado di farli crescere. Questa è la storia della logica di/lost + found. Ma la logica attuale è semplicemente quella di facilitare il lavoro di e2fsck.

7
carlito

Se non hai lost+found, e2fsck (Non ho ispezionato il codice per altre implementazioni fsck) offriranno di crearlo per te. Ma puoi anche ricrearlo tu stesso, se lo desideri; non c'è nulla di particolarmente speciale in quella directory (almeno non dall'ispezione del codice).

5

e2fsck creerà lost + found e distruggerà anche qualsiasi file che potrebbe essere nello stesso modo per assicurarsi che possa crearlo come directory.

Nota che molti vecchi filesystem Unix richiedevano che lost + found fosse associato allo specifico inode numero 2, quindi una necessità di ricreare il filesystem nella maggior parte dei casi se la directory andasse persa. e2fsck cerca semplicemente qualsiasi inode gratuito, apparentemente non necessitando specificamente dell'inode 2, il che rende il recupero molto più semplice rispetto ai vecchi tempi.

2
Alex North-Keys

Puoi creare quella directory semplicemente usando mkdir. Dovrebbe essere di proprietà di root, con un gruppo di root o wheel. A parte questo, non c'è nulla di particolarmente speciale al riguardo. In caso di interruzione di corrente o arresto improprio all'avvio del sistema, dovrebbe avviarsi automaticamente fsck. fsck attraverserà il sistema e proverà a recuperare tutti i file corrotti che trova. Tutti i file che si trovano potenzialmente danneggiati verranno spostati lì.

L'altro caso per i file da spostare lì è se fsck trova un file di cui manca l'inode padre. Questo di solito è il caso se un blocco viene danneggiato sul disco nella posizione specifica in cui viene archiviato l'inode di una cartella. Riassegna il loro inode padre in modo che sia la cartella lost + found.

Modifica: non sono sicuro che in quest'ultimo caso verrà ricreata la directory. Lascerei da solo la sicurezza. Non riesco a pensare a nessun motivo per eliminarlo. Niente di male accadrà senza di essa però.

1
TrueDuality

Inoltre, su Debian 6 e Ubuntu 12 LTS, il pacchetto cron è stato spedito /etc/cron.daily/standard che rileva mancante lost+found directory su filesystem locali e invia promemoria giornalieri via e-mail, raccomandando l'uso di mklost+found.

Tuttavia, questo è stato rimosso al tempo di Debian 7 e Ubuntu 14 LTS, rispettivamente, perché era diventato obsoleto.

1
Josip Rodin