¿Qué son 1K bloques en df y cómo calcular el porcentaje de uso?

¿Qué son 1K bloques en df y cómo calcular el porcentaje de uso?

He buscado muchas veces y no encontré 1K-blockssignificado en el comando df (gnu), pero lo calculé y creo que es igual a 1K Byte. ¿Hay una explicación oficial?

Entonces, ¿cómo calcular el Used Percentage?

Por ejemplo:

tankywoo@gentoo-jl::~/ » df -h
Filesystem                   Size  Used Avail Use% Mounted on
/dev/sda3                     15G  5.9G  8.2G  42% /

tankywoo@gentoo-jl::~/ » df
Filesystem                  1K-blocks    Used Available Use% Mounted on
/dev/sda3                    15481840 6163320   8532088  42% /

En mi máquina local, sé que hay reserved space.

El usado es 6163320, el disponible es 8532088, entonces:

Creo Used%que debería ser (15481840-8532088)/15481740 = 44,88%, no 42%.

Entonces, ¿cómo obtener el resultado 42%?

Respuesta1

El bloque de 1K en GNU coreutils df(1) significa 1024 bytes. Confirmado echando un vistazo rápido a GNU coreutils, versión 8.13, código fuente:

964   if (human_output_opts == -1)
965     {
966       if (posix_format)   
967         {
968           human_output_opts = 0;
969           output_block_size = (getenv ("POSIXLY_CORRECT") ? 512 : 1024);
970         }
971       else             
972         human_options (getenv ("DF_BLOCK_SIZE"),
973                        &human_output_opts, &output_block_size);
974     }

Como puede ver, el tamaño del bloque de salida predeterminado es 1024, a menos que POSIXLY_CORRECTse establezca una variable de entorno.

Al calcular el porcentaje utilizado, df(1) resta el espacio/bloques reservados para el usuario root del espacio disponible, cuando el sistema de archivos subyacente admite espacios/bloques reservados (la mayoría lo hace):

529   if (known_value (total) && known_value (available_to_root))
530     {
531       used = total - available_to_root;
532       negate_used = (total < available_to_root);
533     }

En resumen, la autoridad oficial en este y en todos los casos es el código fuente.

información relacionada