Linux 中的安全复制

Linux 中的安全复制

我想简单地将 3 个目录从我的主目录交换到同事的主目录(我没有对该目录的写权限),如果可能的话,可能使用安全复制。我不擅长使用 Linux 命令行,所以我不确定该怎么做,如果有人能帮我解决这个问题,我将不胜感激。我想它应该看起来像这样

scp -r /home/user1/directoy1 /home/user2/directoy1 
scp -r /home/user1/directoy2 /home/user2/directoy2 
scp -r /home/user1/directoy3 /home/user2/directoy3 

我是否需要指定同事的登录名,以便当他输入密码时就可以复制文件?

谢谢你的帮助,迈克尔

答案1

我不确定这是否是最简单的解决方案,但至少当您的同事有权访问目标目录时,这应该有效。

scp -r /home/user1/directoy1 user2@localhost:/home/user2/directoy1

您还可以使用功能更强大的工具 rsync(强烈推荐):

rsync -r /home/user1/directoy1 user2@localhost:/home/user2/directoy1

如果你需要双向同步文件,你应该使用一些文件同步工具,例如齐奏

答案2

scp不是一个在同一主机上安全地复制文件的工具,而是一个使用 SSH 协议跨网络复制文件的工具。

对于您来说,您可以稍微“作弊”,在本地主机上使用 SSH 来使用您的同事凭证登录,从而获得良好的访问权限:

scp -r /home/user1/directory1 username@localhost:

这会将文件复制directory1到您同事的主目录中。但请注意,此命令会要求您同事输入密码。

如果这不是一次性复制,更好的方法是设置目录的权限,以便您可以在其中写入,或者使用共享目录进行文件传输。

相关内容