Existe uma maneira de fazer com que os sistemas de arquivos ext usem menos espaço para eles mesmos no Linux?

48

Eu tenho um monte de HDDs externos e internos que eu uso em um sistema Linux. Eu só tenho sistemas Linux, então usar um sistema de arquivos Linux só faria sentido, certo? No entanto, atualmente estou usando o NTFS em todos os lugares, porque ele me fornece o espaço mais utilizável dos HDDs.

Eu gostaria de mudar para sistemas de arquivos Linux agora, principalmente por causa de permissões e compabilidade (por exemplo, não consigo fazer com que minha partição NTFS criptografada LUKS seja redimensionada no Linux, me manda chkdsk no Windows).

No entanto, quando formatei esses HDDs, experimentei vários sistemas de arquivos diferentes e todos os sistemas de arquivos do Linux, até o ext2, que, até onde eu sei, não tem registro no diário, usou muito espaço para si mesmo. Não me lembro dos valores exatos, mas foram mais de 100 GB que o NTFS me deu mais em um disco rígido de 2 TB, o que é muito.

Então, a minha pergunta é: existe uma maneira de fazer com que os sistemas de arquivos extras usem menos espaço para eles mesmos? Ou existe outro sistema de arquivos (tentei ext2, ext3, ext4, NTFS e vfat - nenhum deles chegou perto do espaço utilizável que o NTFS me ofereceu) com suporte perfeito ao Linux e ótimo espaço utilizável?

Eu adoraria saber como e por que os sistemas de arquivos (especialmente o ext2, que não possui registro no diário) usam muito mais espaço do que o NTFS e não sei mais onde perguntar. Eu prefiro principalmente uma maneira de usar o ext4 sem journaling e qualquer outra coisa que use tanto espaço, se isso for possível.

    
por confetti 05.08.2018 / 20:36

3 respostas

94

Por padrão, o ext2 e seus sucessores reservam 5% do sistema de arquivos para uso pelo usuário root. Isso reduz a fragmentação e reduz a probabilidade de que o administrador ou qualquer daemons de propriedade da raiz não tenha espaço para trabalhar.

Esses blocos reservados evitam que programas não executados como root preencham seu disco. Se estas considerações justificam a perda de capacidade depende do sistema de arquivos usado.

O valor de 5% foi definido na década de 1980, quando os discos eram muito menores, mas foram deixados como estão. Atualmente, 1% é provavelmente o suficiente para a estabilidade do sistema.

A reserva pode ser alterada usando a opção -m do comando tune2fs :

tune2fs -m 0 /dev/sda1

Isso definirá a porcentagem de blocos reservados para 0% (0 blocos).

Para obter o valor atual (entre outros), use o comando:

tune2fs -l <device> 
    
por 05.08.2018 / 20:44
3

se os dados que você pretende armazenar forem compactáveis, o btrfs montado com compress=zstd (ou compress-force=zstd ) provavelmente usaria significativamente menos espaço em disco que o ext *

  • isso fará com que o btrfs comprima seus dados de maneira transparente antes de gravá-los em disco, e descomprima-os de forma transparente ao lê-los novamente. Além disso, o ext4 pré-aloca todos os inodes na criação do sistema de arquivos, o btrfs os cria conforme necessário, e acho que isso pode economizar espaço também.
por 06.08.2018 / 09:57
3

Outro ponto que ainda não foi comentado é o número de inodes que você reserva em seu sistema de arquivos.

Por padrão, o mkfs cria um número de inodes que devem possibilitar colocar um monte de arquivos muito pequenos em seu sistema de arquivos. Se você sabe que os arquivos serão muito grandes e você só colocará um pequeno número de arquivos no FS, você pode reduzir o número de inodes.

Tome cuidado! Esse número (resp. A proporção entre espaço e número de inodes) só pode ser definido no horário de criação do sistema de arquivos. Mesmo ao estender o FS, a proporção permanece a mesma.

    
por 07.08.2018 / 17:44