linux altere o tamanho do bloco ext4 para 8192 agora não pode montá-lo [duplicado]

3

Eu fiz isso:

mkfs.ext4 -j -b 8192 /dev/sda3

Agora estou tentando montá-lo com:

sudo mount -t ext4 /dev/sda3 foo 

Mas estou recebendo este erro:

mount: wrong fs type, bad option, bad superblock on /dev/sda3

Qual é o problema?

    
por Frederico Schardong 08.03.2012 / 15:22

1 resposta

2

Como eu sei, esse enorme bloco não é suportado na plataforma x86. O problema é: o ext * fs é baseado na estrutura VFS genérica e não pode funcionar quando o tamanho do bloco é maior que o tamanho da página (4096 em x86). Em Itanium e outras arquiteturas exóticas com > Páginas de memória de 4KB (mas não em x86 / x86_64 com páginas de 2MB ou 4MB), tais blocos podem funcionar. O mesmo problema no linux é com o ufs2 com tamanho de fragmento > 4096.

Esse conhecimento é baseado em informações de um desenvolvedor do UFS2 / Linux. Há também algumas letras nas listas, como pergunta responder

Citando resposta de "Andreas Dilger"

Linux requires blocksize <= PAGE_SIZE, so basically all filesystems use blocksize <= 4096 unless they implement support internally for reading/writing partial disk blocks from the page or buffer cache.

With ext2/3 it is possible to change the number of inodes allocated without changing the blocksize (less inodes per block group).

Para o UFS2, há uma verificação explícita para fragment_size <= 4096 . Eu acho que existe o mesmo cheque em ext * fs.

Basicamente, você não precisa definir blocos de tamanho tão grandes para o ext4, se as extensões estiverem ativadas. Extensões são muito parecidas com grandes blocos para arquivos enormes. Com o extens você terá mais desempenho e menos fragmentação, mas eles não são suportados (não compatíveis com versões anteriores) em kernels mais antigos do Linux ou em alguns drivers mais antigos para sistemas operacionais terceirizados, como o Windows.

    
por 08.03.2012 / 15:30