【发布时间】:2013-05-28 10:42:46
【问题描述】:
我正在尝试创建一个脚本来自动让我登录到受密码保护的服务器,从而自动从 ubuntu 目录上传文件。我这样做是为了每小时自动备份一个目录。我已经知道必须添加 cron 作业才能每小时运行我的脚本,但我不知道如何 SSH、压缩我的目录然后上传它。我不太了解 bash 脚本,实际上我认为使用 python 脚本可能更容易。这样做的最佳方法是什么?
【问题讨论】:
标签: python linux bash shell ssh
我正在尝试创建一个脚本来自动让我登录到受密码保护的服务器,从而自动从 ubuntu 目录上传文件。我这样做是为了每小时自动备份一个目录。我已经知道必须添加 cron 作业才能每小时运行我的脚本,但我不知道如何 SSH、压缩我的目录然后上传它。我不太了解 bash 脚本,实际上我认为使用 python 脚本可能更容易。这样做的最佳方法是什么?
【问题讨论】:
标签: python linux bash shell ssh
您绝对需要public keys 而不是密码。而且使用 bash 会比 python 容易得多。只需 zip 您的文件,然后 scp 它或 rsync 整个目录。
【讨论】:
zip -R backup.zip directory && scp backup.zip username@server:destination_path
应该做的工作。如上所述,您绝对应该为此使用密钥身份验证。
【讨论】:
你可以尝试使用“Twisted conch library”
Conch 是用 Python 编写的 SSHv2 实现。
这里有一个例子:
【讨论】:
您可以使用Rsync 执行此操作。它支持 ssh 隧道,是一个非常好的备份工具。
【讨论】: