O sinalizador -T largefile
ajusta a quantidade de inodes alocados na criação do sistema de arquivos. Uma vez alocado, seu número não pode ser ajustado (pelo menos para ext2 / 3, não totalmente certo sobre ext4). O padrão é um inode para cada 16K de espaço em disco. -T largefile
torna um inode para cada megabyte.
Cada arquivo requer um inode. Se você não tiver nenhum inodes, não poderá criar novos arquivos. Mas esses inodes alocados estaticamente também ocupam espaço. Você pode esperar que economize cerca de 1,5 gigabytes para cada 100 GB de disco definindo -T largefile
, ao contrário do padrão. -T largefile4
(um inode por 4 MB) não tem um efeito tão dramático.
Se tiver certeza de que o tamanho médio dos arquivos armazenados no dispositivo será superior a 1 megabyte, por todos os meios, defina -T largefile
. Estou feliz em usá-lo em minhas partições de armazenamento e acho que não é muito radical de uma configuração.
No entanto, se você descompactar um arquivo fonte de muitos arquivos (pense em centenas de milhares) nessa partição, você terá a chance de ficar sem inodes para essa partição. Há pouco que você pode fazer nessa situação, além de escolher outra partição para untar.
Você pode verificar quantos inodes você tem disponível em um sistema de arquivos ao vivo com o comando dumpe2fs
:
# dumpe2fs /dev/hda5
[...]
Inode count: 98784
Block count: 1574362
Reserved block count: 78718
Free blocks: 395001
Free inodes: 34750
Aqui, ainda posso criar 34 mil arquivos.
Veja o que eu recebi depois de fazer mkfs.ext3 -T largefile -m 0
em uma partição de 100 GB:
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/loop1 102369 188 102181 1% /mnt/largefile
/dev/loop2 100794 188 100606 1% /mnt/normal
A versão largefile tem 102 400 inodes, enquanto a normal criou 6 553 600 inodes e economizou 1,5 GB no processo.
Se você tiver uma boa idéia de quais arquivos de tamanho você colocará no sistema de arquivos, poderá ajustar a quantidade de inodes diretamente com a opção -i
. Define os bytes por razão de nó. Você ganharia 75% da economia de espaço se usasse -i 65536
e ainda conseguisse criar mais de um milhão de arquivos. Eu geralmente calculo para manter pelo menos 100 000 inodes de reposição.