Espacio en disco físico consumido por un archivo y su nombre

Espacio en disco físico consumido por un archivo y su nombre

Al transferir muchos archivos desde una estación de trabajo Linux Redhat a un FAT32disco duro externo formateado ( WD 2 TBformateado con la utilidad de disco de Mac), me encontré con el error de que no quedaba suficiente espacio en mi disco. Pero verifiqué que todavía quedaba ~700 GBespacio en el disco, así que supongo que me quedé sin espacio en el disco debido a los nombres de archivos largos (¿no estoy seguro?). ¿Cómo comprobarlo?

Los detalles de mi disco duro externo son

/dev/sdc1 on /media/GUDDULINUX3 type vfat (rw,nosuid,nodev,relatime,uid=988,gid=2000,fmask=0022,dmask=0077,codepage=cp437,iocharset=ascii,s

Actualmente hay alrededor de ~545directorios con cualquier cosa entre ~7000dos ~11000archivos en cada directorio. Cada archivo es un archivo binario de tamaño (verificado con du -sh), ~32Ko 96K(aproximadamente la mitad cada uno) y el nombre es como XC6_9k.131_132.12.2012.210.s3( 29caracteres de longitud). El tamaño del archivo parece correcto porque se supone que son archivos binarios con 8000puntos 24000flotantes.

¿Es posible que algo más esté mal? Desafortunadamente, no puedo comprobar el espacio exacto en disco consumido por los directorios; intentarlo du -shlleva una eternidad.

Editar 1- Utilicé Mac Disk Utility para verificar el disco duro externo y dice: 11361590 files, 1076797472 KiB free (33649921 clusters)

Editar 2-

Siguiendo las sugerencias de Angelo, probé df -hy df -ien el disco duro externo conectado a mi computadora portátil (mac). Parece que me he quedado sin inodos libres en /Volumes/GUDDULINUX3. ¿Alguna sugerencia sobre qué hacer? ¿Obtendré inodos si guardo tarlos archivos pequeños en un tararchivo para cada directorio? ¿Debo pasar a un NTFSdisco formateado?

avinash$ df -h
Filesystem                          Size   Used  Avail Capacity  iused   ifree %iused  Mounted on
/dev/disk0s2                       233Gi  216Gi   17Gi    93% 56587186 4482254   93%   /
devfs                              187Ki  187Ki    0Bi   100%      646       0  100%   /dev
map -hosts                           0Bi    0Bi    0Bi   100%        0       0  100%   /net
map auto_home                        0Bi    0Bi    0Bi   100%        0       0  100%   /home
/dev/disk1s1                       1.8Ti  836Gi  1.0Ti    45%        0       0  100%   /Volumes/GUDDULINUX3

avinash$ df -i
Filesystem                        512-blocks       Used  Available Capacity  iused   ifree %iused  Mounted on
/dev/disk0s2                       488555536  452185504   35858032    93% 56587186 4482254   93%   /
devfs                                    373        373          0   100%      646       0  100%   /dev
map -hosts                                 0          0          0   100%        0       0  100%   /net
map auto_home                              0          0          0   100%        0       0  100%   /home
localhost:/rGEmV8JCfpffeQBEQFAlLe  488555536  488555536          0   100%        0       0  100%   /Volumes/MobileBackups
/dev/disk1s1                      3906009792 1752414720 2153595072    45%        0       0  100%   /Volumes/GUDDULINUX3

Estos son resultados con el disco conectado a mi estación de trabajo Linux, no muestra la información del inodo.

seismo82% df -h /media/GUDDULINUX3/ 
Filesystem Size Used Avail Use% Mounted on 
/dev/sdc1 1.9T 836G 1.1T 45% /media/GUDDULINUX3 

seismo82% df -i /media/GUDDULINUX3/
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/sdc1           0     0     0     - /media/GUDDULINUX3

Editar 3-

Parece que inodealgo no funciona con FAT32. Creo que el problema es que hay un límite inferior en FAT32la cantidad de archivos que pueden haber en un directorio, más bajo que el que ~65kdepende del nombre del archivo. Primero, guardé muchos archivos existentes en el disco duro externo, lo que debería haber liberado una gran cantidad inodes(o FAT32equivalente). Pero seguir moviendo el directorio grande (tiene ~23karchivos) mostró el error "no queda espacio en el dispositivo". Luego, en lugar de mover archivos individuales, hice un tar del directorio y ¡¡¡fue posible moverlo a un disco externo !!! Intentar descomprimirlo en el disco externo me dio el error nuevamente. Entonces, creo que me encontré con un límite en la cantidad de archivos en el directorio. Verw3dkEl comentario de esto. Máximo de archivos por directorio

Revisé los directorios que habían informado de errores al mudarse. El límite parece ser 16383archivos para nombres de archivos con 29caracteres y 21843archivos para nombres de archivos con 20caracteres. Teóricamente, el límite son ~65karchivos para archivos con nombres en 8.3formato. Gracias a todos los que me ayudaron a diagnosticar el problema. Por ahora, simplemente cubriré con alquitrán lo que tenga.

Respuesta1

Además de los límites de tamaño de partición, los límites de tamaño de archivo y los límites de tamaño de directorio del sistema de archivos FAT32 (todos los cuales parece que usted conoce), también hay un límite máximo de 268,435,437 archivos totales en un volumen FAT32, independientemente de directorio.

Haciendo cálculos rápidos, 545 directorios con 7000 archivos en cada uno son casi 4millónarchivos, mucho más de lo que FAT32 puede manejar.

información relacionada