一、文件的传输
1.scp
(1).将A主机的文件(目录)上传到B主机上(在A主机上进行操作)
命令: scp dir/name username@B主机ip:/dir
scp /root/Desktop/file [email protected]:/mnt
当需要传输的时一个目录(包括目录下的文件)
命令 scp -r dir/name username@B主机ip:/dir
scp -r ./0923 [email protected]:/mnt
注意:保证B主机的sshd服务器开启
(2).下载A主机的某文件(目录)到B主机上(在B主机上进行操作)
命令 scp username@A主机ip:dir/name dir
scp [email protected]:/root/Desktop /mnt
同样,当需要传输一个目录时,加上-r即可
2.rsync
rsync [参数] file username@ip:/dir
rsync -r 同步目录
-l 不忽略链接
-p 不忽略文件权限
-t 不忽文件时间戳
-g 不忽文件所有组
-o 不忽文件所有人
-D 不忽略设备文件
做如下实验:
(1)在A主机/mnt目录下新建file{1..3},以及file3的名叫freya的链接。
(2)给A主机/mnt目录下的所有文件都授权777,以及更改A主机/mnt目录下所有文件所有人和所有组都为student。
(3)用rsync传输A主机/mnt下的所有文件给B主机的/mnt目录下。
(4)分别在A主机,和B主机上查看/mnt下所有文件信息。
注意:在A主机向B主机传输文件时,忽略了链接而且时间戳以及文件的权限和所有人所有组不同步。
(5)增加参数不忽略上述信息。
二、文件归档(俗称打包)
当传输文件或目录太大时,为加快传输速度,减小文件(目录)大小,可以将文件打包。tar +
c 创建
f 指定归档文件名称
t 显示归档文件中的内容
r 向归档文件中添加文件
--get 取出单个文件
--delete 删除单个文件
x 取出归档文件中的所有内容
-C 指定解档目录
注意:可以用" du -sh tar包名 ”查看tar包大小,来对比打包前后文件大小。
三、文件压缩与解压缩
1.zip格式压缩zip -r 压缩后的文件name 需要压缩的文件name
zip -r etc.tar.zip etc.tar 压缩成zip格式
unzip etc.tar.zip 解压zip格式压缩包
2.gz
gzip etc.tar 压缩成gz格式
gunzip etc.tar.gz 解压gz格式压缩包
3.bz2
bzip2 etc.tar 压缩成bz2格式
bunzip2 etc.tar.bz2 解压bz2格式压缩包
4.xz
xz etc.tar 压缩成xz格式
unxz etc.tar.xz 解压xz格式压缩包
四种压缩格式以及解压缩示例图:
注意:gz 、bz2、xz这三种压缩格式压缩一个文件,文件将变成“文件.zip”,原来的文件将不存在。同样,解压缩后该压缩文件变成原来的文件。
归档压缩一步完成:
tar zcf etc.tar.gz /etc 把文件归档为tar并压缩成gz
tar jcf etc.tar.bz2 /etc 把文件归档为tar并压缩成bz2
tar Jcf etc.tar.xz /etc 把文件归档为tar并压缩成zx
解压解档一步完成:
tar zxf etc.tar.gz 解压并解档gz格式压缩包
tar jxf etc.tar.bz2 解压并解档bz2格式压缩包
tar Jxf etc.tar.xz 解压并解档xz格式压缩包