GNU/Linux >> Linux Esercitazione >  >> Linux

Linux - Aiuto, sto finendo gli inode!

Soluzione 1:

Per rispondere alla domanda originale, anche se probabilmente è tardi per chi ha posto la domanda, sì, l'aumento di EXT2/3 su LVM2 aumenterà anche il limite di inode.

Ho appena avuto una partizione di dimensioni 1G con limite di 65k inode. Dopo

lvextend -L+1G /dev/vg/var
umount /var
resize2fs /dev/vg/var
mount /var

... il mio limite di inode ora è 128k.

Soluzione 2:

man mke2fs

Vedrai una -N per il numero di inode

Quindi puoi specificarlo quando formatti una nuova partizione. Non molto utile in questo momento, eh?

tune2fs, che ottimizza il filesystem, non sembra avere un modo per aggiungere altri inode.

Ma forse ext3 o 4 lo fanno e qualcun altro lo sa....?

Quindi ora hai un'opzione:backup, riformattazione della partizione, ripristino.

Soluzione 3:

Se sapevi che i file di piccole dimensioni mangeranno il tuo spazio su disco, avresti dovuto usare un FS con allocazione dinamica degli inode, come ReiserFS o qualsiasi nuovo FS moderno (XFS, JFS) invece di EXT2/3/4 (che presumo tu stia usando , non l'hai detto).

Una migrazione del filesystem è probabilmente una buona scelta nella tua situazione.

Soluzione 4:

Come ripiego, monta un nuovo filesystem e cp/rm/ln-s parte della tua gerarchia fs lì. Ora hai alcuni inode di riserva! Non puoi mv file tra i due fse, quindi fai attenzione a rompere le cose che devono farlo, ma per molte app questo può essere trasparente.

Quindi crea un nuovo fs, secondo il consiglio di Paul, e migra su quello.

Soluzione 5:

Ext4 soffre dello stesso problema, se crei una piccola partizione e hai un sacco di piccoli file finirai gli inode, e se hai flex_bg nelle funzioni non puoi usare tune2fs per aumentare gli inode.

Personalmente andrei con ext4 su qualsiasi versione di rieserfs, basta fare quanto segue durante la formattazione:

mkfs.ext4 -I 512 /dev/foo
tune2fs -i0 -c0 -o journal_data_writeback /dev/foo

La formattazione in questo modo ti darà 33160 inode su una partizione di avvio da 512M.

Lo dico come qualcuno che ha usato reiserfs per anni, il supporto del kernel non è buono come ext*, e il filesystem si frammenta nel tempo e diventa lento.


Linux
  1. Scopri i processi orfani di Linux

  2. logname Esempi di comandi in Linux

  3. Linux scopre l'ID core hyper-thread

  4. Come faccio a sapere quale versione di Linux è in esecuzione?

  5. Linux:eseguire lo stesso comando su più macchine contemporaneamente

13 modi in cui puoi aiutare Linux

Come scoprire la versione del kernel Linux in esecuzione sul tuo PC

Telegram Desktop 1.0 è uscito! Installalo su Linux

Come scoprire da quanto tempo è in esecuzione un processo in Linux

Una guida all'esecuzione di Traceroute in Linux

Linux Ping:mostra il timeout