Como funciona o tamanho do bloco do sistema de arquivos?

6

Todos os sistemas de arquivos Linux têm tamanho de bloco de 4kb. Digamos que eu tenha 10MB de armazenamento em disco rígido. Isso significa que tenho 2560 blocos disponíveis e digamos que eu copiei 2560 arquivos, cada um com 1kb de tamanho. Cada bloco de 1 kb ocupará 1 bloco, embora não esteja preenchendo o bloco inteiro.

Então, todo o meu disco agora está cheio, mas ainda tenho 2560x3kb de espaço livre. Se eu quiser armazenar outro arquivo de dizer 1mb, o sistema de arquivos me permite armazenar? Será que vai escrever no espaço livre deixado nos blocos individuais? Existe algum conceito abordando esse problema?

Eu gostaria de receber alguns esclarecimentos. Agradecemos antecipadamente

    
por Srimanth Duggineni 28.06.2015 / 11:36

2 respostas

1

O tamanho padrão do bloco foi de 512 bytes desde o primeiro Linux. Exceto até recentemente os tamanhos de bloco de 4k foram introduzidos para atender ao tamanho cada vez maior dos discos. Isso é realmente quase ditado pelo hardware do disco (veja mais: link ).

Ainda para sua pergunta específica: você está certo de que todos os arquivos desperdiçam os bytes não utilizados do último bloco em muitos tipos de sistemas de arquivos, o que é particularmente um desperdício para arquivos pequenos. Mas btfrs e reiserfs parecem ser capazes de lidar, de acordo com o link

    
por Harald 28.06.2015 / 21:41
0
  1. Os sistemas de arquivos podem ter tamanho de bloco de 512 a (geralmente) 65536. O tamanho do bloco pode ser especificado como opção mkfs.xxx. O tamanho padrão da maior parte dos FSs do Linux - 4096.

  2. Alguns sistemas de arquivos suportam a alocação de retaguarda e / ou subbloqueio. ext2 / 3/4, xfs AFAIK - não. Se você planeja preencher uma partição por vários arquivos pequenos, você pode reduzir um espaço "perdido" diminuindo o tamanho dos blocos para 512 ou 1024.

por Oleksandr Suvorov 11.04.2017 / 13:43

Tags