rsync
是一个非常强大的 Linux 命令行工具,用于在本地和远程之间同步文件和目录。以下是如何使用 rsync
进行文件同步的基本步骤:
基本语法
rsync [选项] 源 目标
常用选项
-v
:详细模式,显示同步过程中的详细信息。-r
:递归同步目录及其子目录。-a
:归档模式,保留符号链接、文件权限、时间戳等。-z
:压缩数据传输,减少带宽使用。-h
:人类可读的输出格式。--delete
:删除目标目录中源目录不存在的文件。--progress
:显示文件传输的进度信息。
示例
1. 同步本地目录
假设你要将本地目录 /home/user/source
同步到 /home/user/destination
:
rsync -avzh /home/user/source /home/user/destination
2. 同步远程目录
假设你要将本地目录 /home/user/source
同步到远程服务器 remotehost
的 /home/user/destination
目录:
rsync -avzh /home/user/source user@remotehost:/home/user/destination
3. 同步并删除目标目录中多余的文件
如果你希望在同步后删除目标目录中源目录不存在的文件,可以使用 --delete
选项:
rsync -avzh --delete /home/user/source /home/user/destination
4. 同步并显示进度
如果你希望看到文件传输的进度信息,可以使用 --progress
选项:
rsync -avzh --progress /home/user/source /home/user/destination
注意事项
- 确保你有足够的权限访问源和目标目录。
- 在使用
--delete
选项时要小心,因为它会删除目标目录中不在源目录中的文件。 - 如果你在同步远程目录,确保远程服务器上的
rsync
服务已经启动并且可以访问。
通过这些基本步骤和选项,你可以灵活地使用 rsync
进行文件同步。更多高级选项和用法可以参考 rsync
的手册页(通过 man rsync
查看)。