Mac에서 TrueNas의 공유 드라이브로 파일을 복사/백업하려고 할 때 이상한 타임스탬프 문제가 발생합니다.
내 드라이브는 TrueNAS에서 홈 공유로 정의되고 Finder를 통해 MacOS에 마운트됩니다.
macos > mount
//eric@truenas._smb._tcp.local/eric on /Volumes/eric (smbfs, nodev, nosuid, mounted by via)
그러나 rsync를 시도하면 설치 생성 날짜가 잘못되었습니다.
macos > ls -lt 20180210_120110_001.jpg
-rw-r--r-- 1 via staff 723237 7 Jun 2018 20180210_120110_001.jpg
macos > rsync -avztUN 20180210_120110_001.jpg /Volumes/eric/Pictures/Galaxy\ S21/2023-05-19/DCIM/Camera
sending incremental file list
20180210_120110_001.jpg
sent 663,066 bytes received 35 bytes 1,326,202.00 bytes/sec
total size is 723,237 speedup is 1.09
macos > ls -lt /Volumes/eric/Pictures/Galaxy\ S21/2023-05-19/DCIM/Camera
total 1326
-rwx------ 1 via staff 723237 23 May 2023 20180210_120110_001.jpg
rsync를 사용하여 볼 수 있듯이 볼륨 마운트(TrueNAS 마운트)에 생성된 타임스탬프가 올바르지 않습니다.
그러나 이상한 점은 cp -P로 동일한 작업을 수행하면 타임스탬프가 보존된다는 것입니다.
macos >ls -lt 20180210_120110_002.jpg
-rw-r--r-- 1 via staff 687066 7 Jun 2018 20180210_120110_002.jpg
macos >cp -p 20180210_120110_002.jpg /Volumes/eric/Pictures/Galaxy\ S21/2023-05-19/DCIM/Camera
macos >ls -lt /Volumes/eric/Pictures/Galaxy\ S21/2023-05-19/DCIM/Camera
total 2583
-rwx------ 1 via staff 723237 23 May 09:17 20180210_120110_001.jpg
-rwx------ 1 via staff 687066 7 Jun 2018 20180210_120110_002.jpg
보시다시피, 두 번째 파일(_002.jpg)에는 올바른 타임스탬프가 복사되었지만 첫 번째 파일에는 그렇지 않습니다.
나는 rsync를 사용하는 것을 정말 좋아하지만 이 문제의 원인이 무엇인지, 어떻게 디버깅하는지 전혀 모릅니다.
rsync 3.2.7 사용
macos > rsync -V
rsync version 3.2.7 protocol version 31
Copyright (C) 1996-2022 by Andrew Tridgell, Wayne Davison, and others.
Web site: https://rsync.samba.org/
답변1
이는 삼바 문제일 가능성이 높습니다.
rsync
Samba 대상에서 제대로 작동 하려면 "unix 확장"을 사용할 수 있어야 합니다.
rsync
파일을 전송한 다음(귀하의 경우에는 -av 옵션으로 충분함) 시도 chown()
하고 대상을 지정 chmod()
하십시오 touch()
. 이들 중 하나라도 실패하면 파일의 추가 처리가 중지됩니다.
로컬 디렉토리에 rsync를 시도해보세요. 제대로 작동한다면 올바른 삼바 설정을 사용하는 방법을 찾거나 trueNAS에 rsync 서버를 설치하는 것이 더 좋습니다.
답변2
TrueNAS 설치에서 rsync를 사용할 때 발생하는 문제와 잘못된 생성 타임스탬프는 rsync가 동기화 중에 파일 메타데이터를 처리하는 방식과 관련이 있을 수 있습니다. 기본적으로 rsync는 타임스탬프, 권한, 소유권과 같은 파일 메타데이터를 보존하려고 시도합니다. 그러나 경우에 따라 기본 파일 시스템의 차이 또는 파일 액세스 방법으로 인해 rsync가 모든 메타데이터를 완전히 보존하지 못할 수도 있습니다. 귀하의 경우 rsync가 생성 타임스탬프를 올바르게 유지하지 않는 것 같습니다. 이는 rsync가 TrueNAS 파일 시스템 또는 탑재에 사용되는 SMB 프로토콜과 상호 작용하는 방식 때문일 수 있습니다. 다음을 수행하는 것이 좋습니다.
- TrueNAS에서 rsync 버전 확인: TrueNAS 시스템에 설치된 rsync 버전이 호환 가능하고 최신인지 확인합니다. 메타데이터를 저장하는 데 필요한 기능을 지원하는지 확인하세요.
- 파일 시스템 호환성 확인: TrueNAS 시스템에서 사용되는 파일 시스템이 생성 타임스탬프 보존을 지원하는지 확인하십시오. 일부 파일 시스템(특히 네트워크에 마운트된 파일 시스템)은 모든 메타데이터 보존을 완벽하게 지원하지 않을 수 있습니다.
- TrueNAS 설정 확인: TrueNAS 시스템의 구성 설정, 특히 SMB 파일 공유와 관련된 설정을 확인합니다. 파일 메타데이터를 저장할 수 있도록 설정이 구성되어 있는지 확인하세요.
- 다른 옵션 시도: 다른 rsync 옵션을 시도하여 메타데이터 보존에 영향을 미치는지 확인하십시오. 예를 들어 --acls 옵션을 사용하여 액세스 제어 목록을 보존하거나 --times 옵션을 사용하여 수정 시간만 동기화할 수 있습니다.