Posso aumentare il conteggio degli inode in Linux?


9

Ho un router MIPS Linux con kernel 2.4.17. Root fs è un tmpfs e / rom è un cramfs. C'è 4 MB di memoria libera e 3 MB gratuiti su tmpfs.

Posso creare alcuni nuovi file vuoti, ma i successivi falliscono con "spazio insufficiente". Tuttavia, posso aggiungere 1 MB di dati a un file esistente. Quindi il mio problema è nel conteggio degli inode.

E le mie domande:

  1. C'è un modo per aumentare dinamicamente gli inode?
  2. Se non riesco ad aumentarlo dinamicamente - Dove posso aumentarlo nei sorgenti del kernel?

Cosa dice df -i?
womble

df in busybox non ha -i opzione
vlad

vlad: Che dire del comando stat, esiste un comando stat che supporta l'opzione -f? quindi solo stat -f <mountpoint>. Altrimenti e puoi sbattere un po 'di c e cross compilare in mips, puoi forse usare le statfs () o le chiamate familiari da solo?
Kyle Brandt,

Risposte:


5

Se il conteggio degli inode è il tuo vero problema, puoi aumentare la quantità di inode disponibili per il filesystem tmpfs con l'opzione di montaggio nr_inodes. Se si imposta nr_inodes = 0, allora ci saranno inode illimitati.

Tutte queste informazioni sono nella documentazione del kernel tmpfs .

Vedi la risposta di Womble per un esempio di rimontaggio. Per l'avvio, dovrai modificare il tuo fstab, o qualunque cosa faccia per la tua particolare build Linux in modo che i futuri mount vengano gestiti correttamente.


7

È possibile impostare il numero di inode disponibili in un tmpfs con l' nr_inodesopzione mount. Per farlo dal vivo, puoi semplicemente eseguire:

mount -o remount,nr_inodes=<bignum> /tmp

Ho il sospetto che l'impostazione di questo numero molto, molto grande comporterà un notevole consumo di memoria, quindi fai attenzione.

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.