¿Límite de 21842 archivos en un directorio?


16

Copiar archivos usando Fedora 16 desde EXT2 a una unidad NTFS de 2TB. Descubrimos que al copiar recursivamente directorios de muchos archivos , la copia se detiene en el archivo 21842 en cada directorio ... luego cp -rpasa al siguiente directorio. No se da ningún error.

Al buscar en la web, encontré a alguien que informaba este problema sobre FAT32 en vano.

Puedo crear más de 21842 archivos en la unidad en el mismo sistema ... parece que no puedo copiar ese número.

Este es el comando que se usa:

cp -r /media/BAKKER_UPPER/many_files_here/* /media/NEW_NTFS_HOME/ 

¿Que está pasando aqui? ¿Cómo transfiero mis archivos a la unidad NTFS?


No estoy alcanzando el límite superior de archivos en el número de archivos en un directorio NTFS (ilimitado). Tampoco estoy alcanzando el número máximo de archivos para la unidad ... (~ 4 billones). También me quedan muchos bloques libres en el disco.


2
¿Cuál es el comando exacto que estás usando?
ott--

2
Tengo el presentimiento de que te estás encontrando con el clásico problema de "lista de argumentos demasiado larga". ¿Estás intentando copiar archivos basados ​​en un patrón de nombre de archivo? ¿O está copiando todos los archivos en el árbol de directorios?
iglvzx

55
Hágalo sin el comodín (de todos modos no es necesario). La expansión de Shell convertirá ese comodín en una cadena gigante de archivos fuente que se limitará a la cantidad de bytes que la shell puede aceptar como argumento y, por lo tanto, a la cantidad de archivos que puede copiar.
Garrett

2
@Garrett ¿Por qué no publicas eso como respuesta, ya que es muy probable que sea la respuesta correcta?
Mokubai

1
Hecho :) (¡votos a favor apreciados!)
Garrett

Respuestas:


10

Hágalo sin el comodín (de todos modos no es necesario). La expansión de Shell convertirá ese comodín en una cadena gigante de archivos fuente que se limitará a la cantidad de bytes que la shell puede aceptar como argumento y, por lo tanto, a la cantidad de archivos que puede copiar.

Entonces su nuevo comando sería:

cp -r /media/BAKKER_UPPER/many_files_here/ /media/NEW_NTFS_HOME/ 
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.