GNU/Linux >> Tutoriales Linux >  >> Linux

Mostrar el espacio libre del sistema de archivos disponible para el usuario root

Usando el comando tune2fs (encontrado en /sbin/tune2fs ), puede determinar fácilmente el espacio reservado :(¡y más!)

tune2fs -l /dev/sda1

Proporcionaré la información de mi sistema como referencia, voy a eliminar las líneas superfluas que no son importantes para esta pregunta:

El encabezado... y el nombre del volumen, yo etiqueta todas mis unidades, las hace fáciles de identificar si es necesario.

tune2fs 1.42.4 (12-Jun-2012)
Filesystem volume name:   xenon
Last mounted on:          /
...

REALMENTE quiero que esto diga "limpio" mientras el sistema se está ejecutando. ¡Honesto!

Filesystem state:         clean

Aquí es donde comienza la información sobre la capacidad de almacenamiento de datos:

Aquí puedes ver que tengo 121,179,648 bloques en total... con un tamaño de bloque de 4K (4096), que se multiplica a un gran número (462-ish GB). (El tamaño del bloque se indica a continuación)

Block count:              121179648

Y los bloques reservados... mirando el número de arriba y el número de abajo... deberías ser capaz de darte cuenta relativamente rápido de que tengo un 1% reservado. En este caso (4.62-ish GB)

Reserved block count:     1211796

¿Cuánto espacio libre disponible actualmente? ¡Justo aquí!

Free blocks:              104090586
...

Y el tamaño de bloque importante. Útil para multiplicar.

Block size:               4096
...

Estas líneas dicen para QUIÉN están reservados los bloques... usuario 0, root, en este caso

Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
...

Hay mucha más información disponible aquí, pero esto debería darle la capacidad de determinar rápidamente cuánto está disponible y cuánto más está reservado para root. Matemáticas simples.

Espero que esto ayude. Recuerda... las páginas man son tus amigas.


No estoy seguro de que haya una herramienta integrada, pero suponiendo que haya dejado la reserva en el 5% predeterminado, esto le dirá:

df / | grep dev | cut -f 3,6 -d\  | awk '{print ($1*.05)+$2}'

df la raíz, grep para la línea con dev (para eliminar el encabezado), cut el tamaño y los campos disponibles, luego use un awk script para calcular el 5% del tamaño del disco agregado al disponible.

Puede obtener la reserva real de tune2fs -l <device> y combine esto con lo anterior en un script.


Esto muestra el espacio libre en bytes en la partición relacionada con "/ruta"

printf '%s' $(($(stat -f --format='%f*%S' /path)))

No es necesario ser superusuario para ejecutarlo.

Por cierto, no entiendo muy bien cuál es la diferencia entre

%s tamaño de bloque (para transferencias más rápidas)

%S tamaño de bloque fundamental (para recuentos de bloques)

en uso de stat .


Linux
  1. ¿Qué pasó con el espacio libre?

  2. ¿La función de la raíz del grupo de usuarios?

  3. Linux:¿cómo programa el kernel de Linux la CPU, entre los procesos/subprocesos del espacio de usuario y las tareas/trabajos del kernel?

  4. Restablecer la contraseña de usuario root desde el modo de rescate

  5. ¿Cómo funcionan los permisos de archivo para el usuario root?

Espacio reservado para la raíz en un sistema de archivos:¿por qué?

¿Por qué el usuario raíz necesita permiso de Sudo?

¿Cómo deshabilitar el inicio de sesión SSH para el usuario raíz en Linux?

¿Cuál es la forma más fácil de liberar espacio en un disco duro?

Bloquear comando particular en Linux para usuario específico

Desmontar el sistema de archivos raíz sin reiniciar el servidor