Cloudera parcel 저장소(741 GB)를 rsync -a 로 외장디스크에 복사했더니 chown ... Operation not permitted 864 건과 mkstemp ... No such file or directory 216 건이 나오고 exit code 23 으로 끝났다. 두 오류 모두 대상이 NTFS(fuseblk, ntfs-3g) 였기 때문이다.
chown 실패 — ntfs-3g 는 유닉스 소유권을 매핑하지 않고 user_id=0,group_id=0 으로 고정하므로 -a 에 포함된 -o 가 항상 실패한다. 파일 내용은 정상 전송되며 무해하다.mkstemp 실패 — 실패한 파일 전부가 notices/images/ 아래의 cdc_profilers:1.5.5-notice.txt 같은 콜론이 든 이름이었다. NTFS 는 : 를 드라이브 문자와 대체 데이터 스트림용으로 예약해 파일명에 쓸 수 없다. 이 파일들은 실제로 전송되지 않는다.mount | grep <mountpoint> # type fuseblk 이면 ntfs-3g
라이선스 고지문만 빠진 것이므로 배포에는 영향이 없다. 재실행 때 소음과 반복 실패를 없애려면 소유권 옵션을 빼고 해당 디렉터리를 제외한다.
rsync -rlptD --no-o --no-g --exclude='notices/' <src>/ /mnt/<disk>/cloudera/
빠짐없이 보관해야 하면 디스크를 ext4/xfs 로 다시 포맷하거나, tar 로 묶어 옮긴다. 아카이브 안에서는 콜론이 파일명이 아니라 데이터라 NTFS 가 관여하지 않는다.
tar czf /mnt/<disk>/cloudera/1.5.5-h3000.tar.gz -C <src-parent> 1.5.5-h3000
ext4 로 포맷한 뒤에는 -av --info=progress2 로 진행률을 한 줄로 보며 nohup 으로 돌린다. rsync 는 대상 경로의 마지막 디렉터리만 만들어 주므로 상위 경로는 mkdir -p 로 먼저 만든다(--mkpath 는 3.2.3 이상에서만 지원).
mkdir -p /mnt/<disk>/cloudera
nohup rsync -av --info=progress2 /data03/repo/1.5.5-h3000/ /mnt/<disk>/cloudera/1.5.5-h3000/ > nohup.out 2>&1 &
grep -iE 'error|failed' nohup.out