掌握rsync命令:备份与同步服务器端文件至客户端

下载需积分: 26 | RAR格式 | 6KB | 更新于2025-05-07 | 41 浏览量 | 5 下载量 举报
收藏
Rsync命令是一种非常强大的文件传输工具,广泛应用于Linux和Unix系统中,用于数据备份和镜像。在配置好rsync服务器之后,我们通常需要在客户端运行rsync命令来实现文件的同步和备份。以下是rsync命令的详细知识点: ### rsync命令的六种工作模式: 1. **本地文件拷贝模式**:当源路径(SRC)和目标路径(DES)都不包含冒号":"时,rsync会执行本地文件的拷贝。 2. **本地至远程模式**:当目标路径(DST)包含单个冒号":"时,rsync会通过远程shell程序(如rsh或ssh)将本地文件拷贝到远程主机。 3. **远程至本地模式**:当源路径(SRC)包含单个冒号":"时,rsync会通过远程shell程序将远程文件拷贝到本地主机。 4. **远程rsync服务器到本地模式**:当源路径(SRC)包含"::"时,rsync会从远程rsync服务器拷贝文件到本地。 5. **本地到远程rsync服务器模式**:当目标路径(DST)包含"::"时,rsync会将文件从本地上传到远程rsync服务器。 6. **远程文件列表模式**:通过省略本地路径信息,rsync可以列出远程机的文件列表。 ### rsync命令格式: rsync命令的格式可以有多种,主要取决于是在本地执行、通过远程shell执行还是从rsync服务器执行。以下是一些基本的命令格式: - `rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST` - `rsync [OPTION]... [USER@]HOST:SRC DEST` - `rsync [OPTION]... SRC [SRC]... DEST` - `rsync [OPTION]... [USER@]HOST::SRC [DEST]` - `rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST` - `rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]` ### rsync命令的用法: 1. **传输文件**:使用rsync传输文件时,需要指定源和目的,其中一个可能是远程机器的资源信息。例如,`rsync *.c servivcer:src/` 表示将当前目录下所有以.c结尾的文件传输到远程主机的src目录下。 2. **递归传输**:`rsync -avz servivcer:src/bar /data/tmp` 表示递归地传输远程主机上的src/bar目录下的所有内容到本地的/data/tmp/bar目录中。 3. **本地模式**:当源路径和目标路径中没有":"时,命令运行在本地模式,类似于cp命令。例如,`rsync somehost.mydomain.com::` 列出所有可访问的模块信息。 ### rsync命令选项说明: - `-v, --verbose`:以详细模式输出过程信息。 - `-q, --quiet`:以精简模式输出。 - `-c, --checksum`:打开校验开关,强制对文件传输进行校验。 - `-a, --archive`:归档模式,以递归方式传输文件并保持所有属性。 - `-r, --recursive`:对子目录以递归模式处理。 - `-R, --relative`:使用相对路径信息。 - `-b, --backup`:创建备份。 - `--backup-dir`:指定备份文件存放目录。 - `-s, --suffix=SUFFIX`:定义备份文件前缀。 - `-u, --update`:仅更新已存在文件。 - `-l, --links`:保留软链接。 - `-H, --hard-links`:保留硬链接。 - `-p, --perms`:保持文件权限。 - `-o, --owner`:保持文件属主信息。 - `-g, --group`:保持文件属组信息。 - `-D, --devices`:保持设备文件信息。 - `-t, --times`:保持文件时间信息。 - `-S, --sparse`:对稀疏文件进行特殊处理。 - `-n, --dry-run`:显示哪些文件将被传输。 - `-W, --whole-file`:拷贝文件,不进行增量检测。 - `-x, --one-file-system`:不要跨越文件系统边界。 - `-B, --block-size=SIZE`:检验算法使用的块尺寸。 - `-e, --rsh=COMMAND`:指定替代rsh的shell程序。 - `--rsync-path=PATH`:指定远程服务器上的rsync命令路径。 - `-C, --cvs-exclude`:使用CVS方法忽略文件。 - `--delete`:删除DST中SRC没有的文件。 - `-z, --compress`:在传输时对文件进行压缩。 - `--exclude=PATTERN`:指定排除不需要传输的文件模式。 - `--progress`:显示备份过程中的传输状态。 - `--version`:打印版本信息。 - `-h, --help`:显示帮助信息。 以上是rsync命令的核心知识点,涵盖了其使用场景、命令格式、选项含义等。掌握了这些知识点,基本上就可以熟练使用rsync命令进行数据的备份和同步工作。

相关推荐