¿Cómo puedo averiguar el tamaño de bloque del sistema de archivos HFS + para un volumen local en un MacbookPro5,4? Creo que es 4k. Necesito confirmar esto. Diskutil informa que el tamaño de bloque del disco es de 512 bytes.
¿Cómo puedo averiguar el tamaño de bloque del sistema de archivos HFS + para un volumen local en un MacbookPro5,4? Creo que es 4k. Necesito confirmar esto. Diskutil informa que el tamaño de bloque del disco es de 512 bytes.
Puedes probar "stat" con la opción de formato "% k". De acuerdo con la página de manual, este es el "Tamaño óptimo del bloque de operación de E / S del sistema de archivos". La línea de comando es:
stat -f "%k" FILE
Donde "ARCHIVO" es cualquier archivo normal en su sistema (por ejemplo, "~ / .profile"). Debería decir "4096" o algo así. No puedo garantizar al 100% que esto es lo que está buscando, pero parece cercano.
Si desea verificar el tamaño del bloque, puede modificar la respuesta dada por neuroburn para incluir el tamaño del archivo y el número de bloques de 512 bytes asignados:
stat -f "%k, %z, %b" FILE
El número de bloques de 512 bytes asignados será un múltiplo del número de bloques de 512 bytes en un bloque de sistema de archivos. Por ejemplo, un bloque del sistema de archivos de 4096 bytes contiene 8 bloques de 512 bytes:
MacBook-Pro:~ ian$ echo foo > foo.txt
MacBook-Pro:~ ian$ ls -l foo.txt
-rw-r--r-- 1 ian staff 4 12 Jul 00:21 foo.txt
MacBook-Pro:~ ian$ stat -f "%k, %z, %b" foo.txt
4096, 4, 8
Hacer esto unas cuantas veces le dará más confianza en el comando más simple propuesto por neuroburn. (Tenga en cuenta que esta respuesta se ha editado para corregir los parámetros del comando ... los parámetros anteriores "% k,% z,%" hicieron que el comando fallara.)
Es una medida bastante justa, pero la forma correcta de hacerlo sería consultar el propio sistema de archivos, lo que puede hacer mediante programación mediante statfs (). Alternativamente, puede leer directamente desde el encabezado del volumen HFS, una herramienta gratuita llamada HFSleuth, en enlace : le permite hacer eso.