rsync 成功或失败取决于目标目录
rsync succeeds of fails depending on the destination directory
我正在使用空 /home/pantelis
文件夹(目标目录)进行以下两个实验
此命令成功:
rsync -zalP --progress --exclude=.git --exclude=.vscode /Users/pantelis/Workspace/my-work/terragrunt/modules/ my-server:/home/pantelis/my-work/
即在 my-server
上,创建了 my-work
目录并包含 /Users/pantelis/Workspace/my-work/terragrunt/modules/
的内容
在远程机器上,我现在删除 /home/pantelis/my-work
所以 /home/pantelis
又是空的。
我尝试 运行 rsync
命令如下,但现在失败了
▶ rsync -zalP --progress --exclude=.git --exclude=.vscode /Users/pantelis/Workspace/my-work/terragrunt/modules/ my-server:/home/pantelis/my-work/terragrunt/modules/
building file list ...
1114 files to consider
rsync: connection unexpectedly closed (8 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at /System/Volumes/Data/SWE/macOS/BuildRoots/d7e177bcf5/Library/Caches/com.apple.xbs/Sources/rsync/rsync-55/rsync/io.c(453) [sender=2.6.9]
我正在尝试这个,显然我希望远程文件结构与本地文件结构相匹配。
为什么第二次尝试失败了?
是因为(某些内在原因)rsync
不能创建除叶之外的任何其他目录吗? (my-work
)?在那种情况下,我已经按照建议 here 尝试了 --relative
选项,但没有成功。
将此添加到您的命令以在我的服务器上创建丢失的目录层次结构:
--rsync-path="mkdir -p /home/pantelis/my-work/terragrunt/modules/ && rsync"
我正在使用空 /home/pantelis
文件夹(目标目录)进行以下两个实验
此命令成功:
rsync -zalP --progress --exclude=.git --exclude=.vscode /Users/pantelis/Workspace/my-work/terragrunt/modules/ my-server:/home/pantelis/my-work/
即在 my-server
上,创建了 my-work
目录并包含 /Users/pantelis/Workspace/my-work/terragrunt/modules/
在远程机器上,我现在删除 /home/pantelis/my-work
所以 /home/pantelis
又是空的。
我尝试 运行 rsync
命令如下,但现在失败了
▶ rsync -zalP --progress --exclude=.git --exclude=.vscode /Users/pantelis/Workspace/my-work/terragrunt/modules/ my-server:/home/pantelis/my-work/terragrunt/modules/
building file list ...
1114 files to consider
rsync: connection unexpectedly closed (8 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at /System/Volumes/Data/SWE/macOS/BuildRoots/d7e177bcf5/Library/Caches/com.apple.xbs/Sources/rsync/rsync-55/rsync/io.c(453) [sender=2.6.9]
我正在尝试这个,显然我希望远程文件结构与本地文件结构相匹配。
为什么第二次尝试失败了?
是因为(某些内在原因)rsync
不能创建除叶之外的任何其他目录吗? (my-work
)?在那种情况下,我已经按照建议 here 尝试了 --relative
选项,但没有成功。
将此添加到您的命令以在我的服务器上创建丢失的目录层次结构:
--rsync-path="mkdir -p /home/pantelis/my-work/terragrunt/modules/ && rsync"