一、scp命令—拷贝
scp是linux中功能最强大的文件传输命令,可以实现从本地到远程以及远程到本地的轻松文件传输操作。
1、上传
scp 本地文件 远程主机用户@远程主机IP:远程主机目录 ##文件
scp -r 本地目录 远程主机用户@远程主机IP:远程主机目录 ##目录
例如:
2、下载
scp 远程主机用户@远程主机IP:远程主机文件 本地目录 ##文件
scp -r 远程主机用户@远程主机IP:远程主机目录 本地目录 ##目录
二、rsync命令—同步
rsync用法和scp类似,rsync主要完成异地文件的同步。
语法:
rsync [参数] 本地文件 远程主机用户@远程主机IP:远程主机目录
参数:
-r 同步目录
-l 不忽略链接
-p 不忽略权限
-t 不忽略时间戳
-g 不忽略文件所有组
-o 不忽略文件所有人
-D 不忽略块设备
安装包:
rsync.x86_64 0:3.0.9-17.el7
示例:
server1:172.25.51.11
server2:172.25.51.12
注意:server1、server2主机同时安装rsync.x86_64 0:3.0.9-17.el7
[root@server12 ~]# touch /mnt/file{1..5}
[root@server12 ~]# ln -s /mnt/file1 /mnt/test ##软链接
[root@server12 ~]# cp -r /dev/pts/* /mnt/. ##块设备
[root@server12 ~]# useradd student
[root@server12 ~]# chown student.student /mnt/*
测试:
[root@server12 ~]# rsync -r /mnt root@172.25.51.11:/mnt/ ##复制目录
[root@server12 ~]# rsync -lr /mnt root@172.25.51.11:/mnt/ ##复制目录、链接
[root@server12 ~]# rsync -Dlr /mnt root@172.25.51.11:/mnt/ ##复制目录、链接、块设备
[root@server12 ~]# rsync -ogDlr /mnt root@172.25.51.11:/mnt/ ##复制目录、链接、块设备、用户、组
[root@server12 ~]# rsync -pogDlr /mnt root@172.25.51.11:/mnt/ ##复制目录、链接、块设备、用户、组、权限
[root@server12 ~]# rsync -tpogDlr /mnt root@172.25.51.11:/mnt/ ##复制目录、链接、块设备、用户、组、权限和时间