Linux command line: File too large error when moving tens of thousands of files

So I have a folder on a windows machine that contains about 60,000 files, each of which are very small (2-4 KB). I tarred the directory and transferred it over to a linux machine via SSH. When I try to extract the tar file on the linux command line, I eventually obtain a “File too large” error.
I split the directory into several on windows, and then sent the tar files to the linux machine. Separately, the extraction worked just fine. I tried to move all the files into a single folder using:

mv dir1/* dirall

mv dir2/* dirall

…etc.

The first few parts were successful, but eventually I received the error:

mv: cannot move dir1/filex to dirall/filex: File too large

According to a cursory google search, a directory should be able to hold much more than 60,000 files. What is happening here, and is there a way to place every file in the same directory? I used to have physical access to the machine, and transferring the files via USB caused no errors. I now have to use SSH to achieve this.


Source: linux

Leave a Reply