¿Cómo determino el tamaño de bloque de una partición ext3 en Linux?

Respuestas:

61
# tune2fs -l /dev/sda1 | grep -i 'block size'
Block size:               1024

Reemplace / dev / sda1 con la partición que desea verificar.

escabroso
fuente
27

Sin root, sin escribir, y para cualquier tipo de sistema de archivos, puede hacer:

stat -fc %s .

Esto dará el tamaño de bloque del sistema de archivos montado en el directorio actual (o cualquier otro directorio especificado en lugar del punto).

mik
fuente
2
No olvide el punto al final de ese comando, ya que stat -fse espera que se espere que una carpeta le proporcione estadísticas.
BeowulfNode42
Y para reducirlo aún más a lo que solicitó el OP:stat --printf='%s' -f .
Jani Uusitalo
con newlinestat --printf = '% s \ n' -f.
c4f4t0r
1
@JaniUusitalo, @ c4f4t0r: gracias por la sugerencia, corrigió la respuesta usando -ccuál es más simple que--printf='...\n'
mik
12
dumpe2fs -h /dev/md2

generará algo con:

Block size:               4096
Fragment size:            4096
evcz
fuente
7

En x86, un bloque del sistema de archivos es casi siempre 4KiB, el tamaño predeterminado, y nunca más grande que el tamaño de una página de memoria (que es 4KiB).

wzzrd
fuente
Esto es lo mismo en todas las plataformas, el tamaño de bloque más grande admitido por ext2 / 3 es 4096 bytes.
Dave Cheney
Gracias Dave! Aprendí algo hoy ;-) Originalmente pensé que el tamaño de bloque ext3 podría ser 8k en plataformas que admitían páginas de memoria de 8k.
wzzrd
Wikipedia dice que puede ser 8k: en.wikipedia.org/wiki/Ext3#Size_limits
dfrankow
1
@dfrankow: si tiene 8k páginas de memoria, como en el hardware Alpha, sí. Pero no tienes esos en hardware x86 y de eso es de lo que estaba hablando.
wzzrd
5

En el caso de que no tenga derecho a ejecutarse tune2fsen un dispositivo (por ejemplo, en un entorno corporativo), puede intentar escribir un solo byte en un archivo en la partición en cuestión y verificar el uso del disco:

echo 1 > test
du -h test
narthi
fuente
1

Para detectar el tamaño de bloque de la partición requerida:

  1. Detectar nombre de partición:

    $ df -h
    

    por ejemplo tenemos /dev/sda1

  2. Detectar tamaño de bloque para esta partición:

    $ sudo blockdev --getbsz /dev/sda1
    
lospejos
fuente
0
stat <<Filename>>

también dará el tamaño del archivo en bloques

Mayur
fuente
Esto no es lo que el OP preguntó
Pablo A
0

Utilizar

sudo dumpe2fs /dev/sda1 | grep "Block size"

donde / dev / sda1 es la partición del dispositivo. Puedes obtenerlo delsblk

Pablo A
fuente