저는 rsync를 사용하여 NAS에서 원격 서버로 파일을 동기화하고 있습니다. 원격 서버의 파일은 원본과 동일한 사용자, 그룹 및 권한을 갖고 있는 것으로 나타납니다. 그러나 rsync는 어쨌든 파일을 복사하려고 합니다.
내 NAS에서 원격 서버로의 출력은 다음과 같습니다.
root@omv:/share/Music# rsync -auHs --dry-run --progress --itemize-changes --numeric-ids -e ssh /share/Music/Bond/Born user@somedomain:/home/user/media/Music/Bond/Born
sending incremental file list
cd+++++++++ Born/
<f+++++++++ Born/01 Bond - Quixote.flac
<f+++++++++ Born/02 Bond - Winter.flac
<f+++++++++ Born/03 Bond - Victory.flac
<f+++++++++ Born/04 Bond - Oceanic.flac
<f+++++++++ Born/05 Bond - Kismet.flac
<f+++++++++ Born/06 Bond - Korobushka.flac
<f+++++++++ Born/07 Bond - Alexander The Great.flac
<f+++++++++ Born/08 Bond - Duel.flac
<f+++++++++ Born/09 Bond - Bella Donna.flac
<f+++++++++ Born/10 Bond - The 1812.flac
<f+++++++++ Born/11 Bond - Dalalai.flac
<f+++++++++ Born/12 Bond - Hymn.flac
<f+++++++++ Born/13 Bond - Victory (Mike Batt Mix).flac
<f+++++++++ Born/Folder.jpg
root@omv:/share/Music#
NAS의 체크섬은 다음과 같습니다.
root@omv:/share/Music# sha256sum 'Bond/Born/'*
d510925c0cba8b01b4d95935248ef5b863e4ed9a7e8c7e537b3acbd18767c882 Bond/Born/01 Bond - Quixote.flac
5dd40480fdc1ca7d20bfa3696c99a8b918636be2af7e59101d4cd9b04726dd44 Bond/Born/02 Bond - Winter.flac
b0c1236caf10c1a4c04ee4cce16d9b2d47e6a5fecfcc8fabd513c585a4156039 Bond/Born/03 Bond - Victory.flac
4348e1502c36b0824742e4c47544efee2b3040626fdd94f937634b55c6736c1f Bond/Born/04 Bond - Oceanic.flac
8e8bbf0817d1625a183547b31e60d9677bb454d18bb6c2b14ed7729a8acb4627 Bond/Born/05 Bond - Kismet.flac
19b0ea2b2f2ad45bb3cee3876037b238fa9a5915eccf44c766262de17085ff33 Bond/Born/06 Bond - Korobushka.flac
37fa58c31263aeb475ace4760b86d26fbf130a47bf80e51c61b4b2e0e003fa07 Bond/Born/07 Bond - Alexander The Great.flac
6ad69fe39d57b7be43538c36a674ed89492d805087319a386bb8ddda78ae364e Bond/Born/08 Bond - Duel.flac
ae3de5d17b1ad56ce1d6ef7323532c015f863ab1548c198cdac41386e56c46d3 Bond/Born/09 Bond - Bella Donna.flac
ab85604b04ad72cc01a886d61b437354ee2eb058fe5d1188199c360445d4c926 Bond/Born/10 Bond - The 1812.flac
6babc0a824b42375efa5d584dd1662687022f9830d16c70504b2e1b86c17e71a Bond/Born/11 Bond - Dalalai.flac
11f2ad493c5c0d8beee89a00e9502010421579cffc941fe3d1e72cdd70a5f12b Bond/Born/12 Bond - Hymn.flac
b15ad119dfd14a76d5fd47ce5993a6ebccec10171f1e58f5238bf830f05a3134 Bond/Born/13 Bond - Victory (Mike Batt Mix).flac
537e3ab0f6cf762319e36b19a786951d507d66dc26ea6409f4000cac508a58ab Bond/Born/Folder.jpg
원격 서버의 체크섬은 다음과 같습니다.
user@10:~/media/Music$ sha256sum 'Bond/Born/'*
d510925c0cba8b01b4d95935248ef5b863e4ed9a7e8c7e537b3acbd18767c882 Bond/Born/01 Bond - Quixote.flac
5dd40480fdc1ca7d20bfa3696c99a8b918636be2af7e59101d4cd9b04726dd44 Bond/Born/02 Bond - Winter.flac
b0c1236caf10c1a4c04ee4cce16d9b2d47e6a5fecfcc8fabd513c585a4156039 Bond/Born/03 Bond - Victory.flac
4348e1502c36b0824742e4c47544efee2b3040626fdd94f937634b55c6736c1f Bond/Born/04 Bond - Oceanic.flac
8e8bbf0817d1625a183547b31e60d9677bb454d18bb6c2b14ed7729a8acb4627 Bond/Born/05 Bond - Kismet.flac
19b0ea2b2f2ad45bb3cee3876037b238fa9a5915eccf44c766262de17085ff33 Bond/Born/06 Bond - Korobushka.flac
37fa58c31263aeb475ace4760b86d26fbf130a47bf80e51c61b4b2e0e003fa07 Bond/Born/07 Bond - Alexander The Great.flac
6ad69fe39d57b7be43538c36a674ed89492d805087319a386bb8ddda78ae364e Bond/Born/08 Bond - Duel.flac
ae3de5d17b1ad56ce1d6ef7323532c015f863ab1548c198cdac41386e56c46d3 Bond/Born/09 Bond - Bella Donna.flac
ab85604b04ad72cc01a886d61b437354ee2eb058fe5d1188199c360445d4c926 Bond/Born/10 Bond - The 1812.flac
6babc0a824b42375efa5d584dd1662687022f9830d16c70504b2e1b86c17e71a Bond/Born/11 Bond - Dalalai.flac
11f2ad493c5c0d8beee89a00e9502010421579cffc941fe3d1e72cdd70a5f12b Bond/Born/12 Bond - Hymn.flac
b15ad119dfd14a76d5fd47ce5993a6ebccec10171f1e58f5238bf830f05a3134 Bond/Born/13 Bond - Victory (Mike Batt Mix).flac
537e3ab0f6cf762319e36b19a786951d507d66dc26ea6409f4000cac508a58ab Bond/Born/Folder.jpg
user@10:~/media/Music$
모든 체크섬이 괜찮아 보이는데 rsync가 여전히 파일을 원격 서버에 복사하려는 이유는 무엇입니까?
티아
답변1
테스트 실행 델타 출력의 s는 <
파일이 전송될 것임을 나타내고, +
s는 파일이 다시 생성될 것임을 나타냅니다. 이는 파일이 대상에 존재하지 않음을 나타냅니다.
귀하의 목표 사양은user@somedomain:/home/media/Music/Bond/Born
하지만 당신은 우리에게 다음을 보여주었습니다.
user@10:~/media/Music$ sha256sum 'Bond/Born/'*
여기서는 ~
홈 디렉토리를 나타냅니다. 를 사용하여 다시 확인할 수 있습니다 echo ~
. 홈 디렉토리는 가 아닐 가능성이 높습니다 /home
. 그럴 가능성이 높으므로 /home/user
대상 사양은 이와 같 user@somedomain:/home/user/media/Music/Bond/Born
거나 user@somedomain:media/Music/Bond/Born
원격 서버의 상대 경로를 사용하여 sshd
홈 디렉터리로 이동하므로 이것이 원격 서버 상대 경로의 홈 디렉터리가 됩니다. .
또한, 소스 명세( )가 . 타겟 디렉터리에 디렉터리를 생성하도록 요구하는 /share/Music/Bond/Born
것으로 끝나지 않기 때문에 하나 생성을 시도하게 된다 ./
rsync
Born
/home/media/Music/Bond/Born/Born
맨페이지에서 다음 중요한 단락을 참고하세요 rsync
.
소스의 후행 슬래시는 대상에 추가 디렉터리 수준이 생성되지 않도록 이 동작을 변경합니다.
/
소스 후행을 "이름으로 디렉토리 복사"가 아닌 "이 디렉토리의 내용 복사"로 생각할 수 있습니다 [...]
따라서 명령은 다음과 같아야 합니다.
rsync -auHs --dry-run --progress --itemize-changes --numeric-ids -e ssh \
/share/Music/Bond/Born/ \
user@somedomain:/home/user/media/Music/Bond/Born