Hacemos una verificación exhaustiva cada reseñas en nuestro sitio web con la meta de mostrarte en todo momento información con la mayor veracidad y certera.
Solución:
Parece que tiene muchos más archivos de lo normal.
No sé si hay una solución para cambiar dinámicamente el tamaño de la tabla de inodos. Me temo que necesita hacer una copia de seguridad de sus datos, crear un nuevo sistema de archivos y restaurar sus datos.
Para crear un nuevo sistema de archivos con una tabla de inodos tan grande, necesita usar la opción ‘-N’ de mke2fs(8).
Recomendaría usar primero la opción ‘-n’ (que no crea el fs, pero muestra la información útil) para que pueda obtener el número estimado de inodos. Luego, si lo necesita, use ‘-N’ para crear su sistema de archivos con números de inodo específicos.
Con 3,2 millones de inodos, puede tener 3,2 millones de archivos y directorios en total (pero varios enlaces duros a un archivo solo usan un inodo).
Sí, se puede configurar al crear un sistema de archivos en la partición. Las opciones -T usage-type
, -N number-of-inodes
o -i bytes-per-inode
Todos pueden establecer el número de inodos. generalmente uso -i
después de comparar la salida de du -s
y find | wc -l
para una colección similar de archivos y permitiendo algo de holgura.
No, no se puede cambiar en el lugar en un sistema de archivos existente. Sin embargo:
- Si está ejecutando LVM o el sistema de archivos está en un LUN de SAN (ya sea directamente en el LUN o como la última partición en el LUN), o tiene espacio vacío en el disco después de la partición, puede hacer crecer la partición y luego usar
resize2fs
para expandir el sistema de archivos. Esto agrega más inodos en proporción al espacio agregado, aproximadamente. Si desea evitar quedarse sin inodos antes del espacio, suponiendo que los archivos futuros en promedio tengan aproximadamente el mismo tamaño, establezca un porcentaje de bloque reservado lo suficientemente alto usandotune2fs -m
. - Si tiene suficiente espacio y puede desconectar el sistema de archivos, desconéctelo, cree un nuevo sistema de archivos con más inodos y copie todos los archivos.
- Si solo un subconjunto de archivos está usando muchos de los inodos y tiene suficiente espacio libre, cree un sistema de archivos en un dispositivo de bucle respaldado por un archivo en el sistema de archivos, cree un sistema de archivos con más inodos (y tal vez también bloques más pequeños) en él, y mueva los directorios ofensivos a él. Probablemente sea un problema de rendimiento y un problema de mantenimiento, pero es una alternativa.
- Y, por supuesto, si puede eliminar muchos archivos innecesarios, eso también debería ayudar.
Como otra solución, podría sugerir considerar empaquetar grandes colecciones de archivos en un archivo sin comprimir (!) tar
archivar y luego usar archivemount
para montarlo como un sistema de archivos. Un archivo tar es mejor para compartir que una imagen del sistema de archivos y proporciona un rendimiento similar cuando se realiza una copia de seguridad en una nube u otro almacenamiento.
Si se supone que la colección es de solo lectura, squashfs
puede ser una opción, pero requiere ciertas opciones habilitadas en el kernel, y xz
La compresión también está disponible para tar con el mismo rendimiento.
Si te gusta la invitación, eres capaz de dejar un enunciado acerca de qué le añadirías a esta noticia.