rsync
是一个非常强大的文件同步和备份工具,可以在本地或者远程服务器之间传输文件
-
安装
rsync
:对于大多数 Linux 发行版,可以使用包管理器来安装
rsync
。例如,在 Debian 或 Ubuntu 系统上,可以使用以下命令安装:sudo apt-get update sudo apt-get install rsync
在 CentOS 或 RHEL 系统上,可以使用以下命令安装:
sudo yum install rsync
-
生成 SSH 密钥对(可选):
为了无密码自动化备份,你可以在本地计算机和远程服务器之间设置 SSH 密钥对。首先,在本地计算机上生成 SSH 密钥对:
ssh-keygen -t rsa
然后将公钥(默认为
~/.ssh/id_rsa.pub
)复制到远程服务器的authorized_keys
文件中:ssh-copy-id user@remote_server_ip
现在,你应该能够从本地计算机无密码 SSH 登录到远程服务器。
-
使用
rsync
进行远程备份:以下是一个基本的
rsync
命令示例,用于将本地目录/path/to/local/directory
备份到远程服务器上的/path/to/remote/directory
:rsync -avz /path/to/local/directory/ user@remote_server_ip:/path/to/remote/directory/
解释一下这个命令中的选项:
-a
:归档模式,表示递归复制文件夹并保留文件属性(如时间戳、权限等)。-v
:详细输出,显示正在处理的文件。-z
:压缩数据传输,减少网络带宽占用。
如果你想要在备份前排除某些文件或文件夹,可以使用
--exclude
选项。例如,排除名为cache
的文件夹:rsync -avz --exclude 'cache' /path/to/local/directory/ user@remote_server_ip:/path/to/remote/directory/
-
定期运行备份(可选):
你可以使用
cron
任务来定期运行rsync
命令。编辑本地计算机的crontab
文件:crontab -e
添加一个新的条目,例如每天凌晨 1 点运行备份:
0 1 * * * rsync -avz /path/to/local/directory/ user@remote_server_ip:/path/to/remote/directory/
保存并退出。现在,
rsync
命令将按照指定的时间自动运行。
通过以上步骤,你已经成功设置了使用 rsync
进行 Linux 远程备份的方法。请根据实际需求调整命令选项和参数。