Rsync 使用的6个常用命令

原创
ithorizon 7个月前 (10-05) 阅读数 27 #Linux

Rsync 使用的6个常用命令

Rsync 是一款功能强盛的文件同步工具,它可以在本地和远程服务器之间同步文件和目录。下面将介绍 Rsync 的六个常用命令,帮助您更好地使用这款工具。

1. 同步本地目录到远程服务器

要将本地目录同步到远程服务器,可以使用以下命令:

rsync -avz /path/to/local/directory username@remotehost:/path/to/remote/directory

其中:

  • -a 描述归档模式,保留符号链接、权限、时间戳等;
  • -v 描述详细模式,显示同步过程;
  • -z 描述压缩模式,降低传输时间;
  • /path/to/local/directory 是本地目录路径;
  • username@remotehost 是远程服务器的用户名和主机名;
  • /path/to/remote/directory 是远程目录路径。

2. 同步远程目录到本地服务器

要将远程目录同步到本地服务器,可以使用以下命令:

rsync -avz username@remotehost:/path/to/remote/directory /path/to/local/directory

其中:

  • -a-v-z 的含义与上一条命令相同;
  • username@remotehost 是远程服务器的用户名和主机名;
  • /path/to/remote/directory 是远程目录路径;
  • /path/to/local/directory 是本地目录路径。

3. 仅同步修改过的文件

如果您只想同步修改过的文件,可以使用以下命令:

rsync -avz --ignore-errors --ignore-missing-args /path/to/local/directory username@remotehost:/path/to/remote/directory

其中:

  • --ignore-errors 忽略差错信息;
  • --ignore-missing-args 忽略丢失的参数。

4. 同步文件并保留权限

在同步文件时,如果您想保留远程服务器的文件权限,可以使用以下命令:

rsync -avz --chmod=go=rX /path/to/local/directory username@remotehost:/path/to/remote/directory

其中:

  • --chmod=go=rX 设置远程服务器的文件权限为可读、可执行,但不可写。

5. 仅同步文件而不同步目录

如果您只想同步文件而不同步目录,可以使用以下命令:

rsync -avz --ignore-dir /path/to/local/directory username@remotehost:/path/to/remote/directory

其中:

  • --ignore-dir 忽略指定的目录。

6. 使用Rsync定时同步

您可以使用 cron 定时任务来使用 Rsync 定时同步文件。以下是一个示例 cron 脚本,用于每天凌晨 1 点同步本地目录到远程服务器:

0 1 * * * rsync -avz /path/to/local/directory username@remotehost:/path/to/remote/directory

将以上内容保存为 sync.sh 文件,并赋予执行权限:

chmod +x sync.sh

然后,将以下内容添加到 crontab 文件中:

0 1 * * * /path/to/sync.sh

这样,每天凌晨 1 点,Rsync 将会自动同步本地目录到远程服务器。

总结:

以上介绍了 Rsync 的六个常用命令,愿望对您在使用 Rsync 进行文件同步时有所帮助。Rsync 是一款非常实用的工具,掌握其使用方法将使您的工作更加高效。


本文由IT视界版权所有,禁止未经同意的情况下转发

文章标签: Linux


热门