내 문제는 ext4 파일 시스템을 사용하는 Ubuntu Linux 시스템에서 exFat 시스템을 사용하는 Sandisk 1TB USB 카드로 파일을 복사하려고 한다는 것입니다.
ext4 시스템에서 전체 디렉토리 구조는 ~2.5Gb를 차지합니다. USB 드라이브의 exFat 시스템에 복사했더니 약 290GB로 늘어났습니다.
복사 중인 파일은 이미지 파일(.jpg)입니다. 제가 아는 한 문제는 원본 파일이 희소 파일이라는 것입니다. 기본적으로 ext4 시스템은 이를 압축하며 겉보기 크기는 훨씬 작습니다(파일당 ~10k). 그러나 MSDN 사이트에서 발견한 바와 같이 exFat 시스템은 비압축이며 희소 파일을 비 희소 방식으로 저장합니다. (복사를 여러 번 시도하여 강제로 "cp" 또는 "tar gzip" 등을 통해... 운이 없습니다. Linux-->SanDisk(exFat) 또는 MacOS-->SanDisk에서도 마찬가지입니다.)
다음 예는 SanDisk exFat 구조에 있는 "du -all -h"의 마지막 5줄입니다.
du -all -h
.
.
1.0M ./img_00000026.jpg
1.0M ./img_00000089.jpg
1.0M ./img_00000032.jpg
1.0M ./img_00000081.jpg
1.0M ./img_00000086.jpg
1.0M ./img_00000049.jpg
1.0M ./img_00000037.jpg
101M .
"겉보기 크기" 매개변수를 사용하는 경우:
du -all --apparent-size -h
.
.
7.3K ./img_00000026.jpg
7.8K ./img_00000089.jpg
5.0K ./img_00000032.jpg
7.5K ./img_00000081.jpg
9.1K ./img_00000086.jpg
8.8K ./img_00000049.jpg
6.6K ./img_00000037.jpg
1.9M .
Linux 측(ext4 시스템)에서 동일한 작업을 수행하면 두 목록이 모두 동일합니다. 항상 겉보기 크기가 표시됩니다.
내 질문: exFat 시스템이 내 공간을 모두 차지하지 않도록 겉보기 크기를 사용하도록(또는 압축된 방식으로 작성하지만 희박하지는 않음) 강제로 사용할 수 있는 방법이 있습니까?
SanDisk USB를 다른 파일 시스템으로 다시 포맷하지 않고 솔루션을 찾고 있습니다.