Estimados lectores,
Aprovecho para desearos un feliz 2015 que espero sea un gran año para todos. En este primer artículo del año os voy a hablar de un error que me reportaron hace unos días sobre la escritura de datos bajo un directorio NTFS de un recurso CIFS. El problema era que bajo dicho directorio no se podían escribir datos a pesar de tener espacio libre en el volumen de la NetApp. Curiosamente en otros directorios del mismo volumen sí era posible añadir más datos así que revisando los registros de la cabina observé el siguiente mensaje:
Fri Dec 26 15:1:38 CET [NetAppC1: wafl.dir.size.max:warning]: Directory /vol/Administracion/2014/ reached the maxdirsize limit. Reduce the number of files or use the vol options command to increase this limit.
El mensaje Directory reached the maxdirsize limit hace referencia a la opción maxdirsize del volumen CIFS en cuestión así que las revisé de la siguiente forma:
NetAppC1*> vol options Administracion nosnap=off, nosnapdir=off, minra=off, no_atime_update=off, nvfail=off, ignore_inconsistent=off, snapmirrored=off, create_ucode=on, convert_ucode=on, maxdirsize=9175, schedsnapname=ordinal, fs_size_fixed=off, compression=off, guarantee=volume, svo_enable=off, svo_checksum=off, svo_allow_rman=off, svo_reject_errors=off, no_i2p=off, fractional_reserve=100, extent=off, try_first=volume_grow, read_realloc=off, snapshot_clone_dependency=off
La definición que NetApp nos da sobre la opción maxdirsize es la siguiente:
«Sets the maximum size (in KB) to which a directory can grow. The default maximum directory size is model-dependent, and optimized for the size of system memory. You can increase it for a specific volume by using this option, but doing so could impact system performance. Do not increase the maxdirsize without consulting with customer support. When a user tries to create a file in a directory that is at the limit, the system returns an ENOSPC error and fails the create.»
En efecto el tamaño del directorio dentro del Sistema de Archivos de la cabina supera en este caso el máximo establecido en 9175 KB pero, ¿cómo podemos consultar dicho tamaño? Para ello usaremos el comando slist en el contexto de Diagnóstico (priv set diag):
NetAppC1*> slist /vol/Administracion/2014/ Inode# File size Name ----------- --------------- ------------------------- 1666224 9408512 /vol/Administracion/2014/
A primera vista parece que el valor File es muy superior al máximo pero, ¡ojo está en bytes! Deberemos dividir el valor obtenido de slist por 1024 para poderlo comparar con el tamaño establecido en la opción, por tanto 9188 KB que es ligeramente superior al máximo y , generalmente, coincide con el 1% de la memoria total física del sistema. La recomendación de NetApp es aumentar el valor actual de maxdirsize con incrementos del 2%. En este caso el valor superado es de 9175 KB así que con el 2% de incremento configuraríamos el nuevo valor a 9358 KB.
Para configurar el nuevo valor lanzamos el comando siguiente:
NetAppC1*> vol options Administracion maxdirsize 9358
This Post by David Solé Pérez is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License