
저는 rsync
HFS+로 포맷된 3TB 외부 디스크 하나에서 exFAT로 포맷된 다른 3TB 외부 디스크로 모든 파일을 복사하는 데 사용하고 있습니다.
복사를 시작하기 직전에 두 디스크의 크기가 정확히 같은지 다시 확인하고 대상 디스크를 포맷했는데 실제로 원본 디스크의 공간이 38GB이므로 파일이 약 2962GB(내 시스템에서는 1TB = 1000GB)입니다.
rsync
대상 디스크를 가득 채우는 과정에서 약 90%가 실패했습니다. 이것이 HFS+와 exFAT의 차이점으로 설명될 수 있습니까? exFAT는 HFS+에 비해 파일을 저장할 때 디스크 공간을 훨씬 더 낭비합니까?
답변1
TL;DR
그 이유는 exFAT의 기본 블록 크기가 크기 때문입니다. 더 작은 블록 크기로 다시 포맷하면 작동합니다.
._
그러나 macOS는 파일 메타데이터를 저장하기 위해 Finder를 사용하여 복사할 때 숨겨진 파일을 많이 생성하므로 HFS+에 비해 훨씬 더 많은 공간을 소비합니다. 해당 파일이 생성되지 않도록 하려면 명령줄을 사용하여 복사해야 합니다.
실제로 exFAT는 너무 간단해서훨씬 더 효율적NTFS, ext4, APFS, HFS+와 같은 다른 고급 파일 시스템보다 디스크 사용량이 더 많습니다.제공블록 크기~는 똑같은, 파일 시스템이 복잡할수록 더 많은 메타데이터가 필요하기 때문입니다. 해당 파일 시스템 중 하나에서 새 파티션을 포맷하면 빈 드라이브에서 사용된 공간이 exFAT보다 훨씬 크다는 것을 알 수 있습니다.
- 새로운 ext4 파티션 및 사용된 공간
- 새로 포맷한 HFS+ 디스크에 450MB의 데이터가 있는 이유는 무엇입니까?
- 디스크 유틸리티로 외장 드라이브를 지운 후 사용 공간이 커지는 이유는 무엇입니까?
그러나 문제는exFAT는 훨씬 더 큽니다블록 크기기본적으로. 3TB 드라이브의 블록 크기는 1MiB이며 다른 파일 시스템의 블록 크기는 4KiB입니다. 보다1바이트 파일은 6TB exFAT Veracrypt 볼륨에서 2MB(예, 메가바이트)를 차지합니다. 왜?exFAT의 기본 클러스터 크기:
Volume size Cluster size
500 GiB 128 KiB
1000 GiB 256 KiB
1500 GiB 512 KiB
2000 GiB 512 KiB
3000 GiB 1 MiB
4000 GiB 1 MiB
5000 GiB 2 MiB
8000 GiB 2 MiB
10000 GiB 4 MiB
20000 GiB 8 MiB
즉, 640KiB 파일이 있는 경우 HFS+에서는 아무것도 낭비하지 않고 exFAT에 저장할 때 384KiB만 낭비하게 됩니다. 결과적으로 exFAT 디스크는 기본적으로 훨씬 빠르게 채워집니다. 당신은해야합니다exFAT 파티션을 다시 포맷하고 더 작은 블록 크기를 선택하십시오.공간을 덜 낭비하기 위해
또한보십시오
답변2
> much more wasteful of disk space
- 파일 시스템 간에 효율성에는 항상 차이가 있습니다. 그리고 이는 비슷한 크기의 디스크의 최대 용량에 가까워질수록 필연적으로 나타납니다.
할당 블록 크기의 차이만으로도 큰 영향을 미칠 수 있습니다. 예를 들어 할당 블록 크기가 많으면 효율성이 떨어집니다.작은파일 및 비교적 큰 할당 블록 크기.