I have a large folder, 2TB, with 1000000 files on a Linux machine. I want to build a package with tar. I do not care about the size of the tar file, so I do not need to compress the data. How can I speed tar
up? It takes me an hour to build a package with tar -cf xxx.tar xxx/
. I have a powerful CPU with 28 cores, and 500GB memory,is there a way to make tar
run multithreaded?
Or, alternatively, is there any good way to transfer a large number of small files between different folders and between different servers? My filesystem is ext4.
tar
archive is disk-bound, not CPU-bound. You could use severaltar
processes running in parallel, each handling their own subset of the files, creating separate archives, but they would still need to fetch all the data from the single disk.scp
and skip thetar
phase entirely?