这一节学习了压缩,归档以及如何利用scp和rsync的传送文件。

归档(archive)和压缩(compress)是两个不同的概念,尽管我们经常放在一起使用。归档类似打包的概念,把一堆内容放入一个文件;而压缩则是把归档好的文件进行压缩以便节约空间。


先看看归档,tar命令,最常用的是 tar -cvf, c=create(创建),v=verbose(详细),f=file(文件名)这样会创建一个归档的tar文件


可以通过-t 来查看已经创建的归档文件的内容


archivelog是什么 archive什么意思啊了_压缩文件


取消归档很简单,把 c(创建)替换成 x (extract,解压)就行了

archivelog是什么 archive什么意思啊了_运维_02


接下来看看压缩,RHEL常用的压缩方式有 gzip,bzip2,zip


做个试验,首先创建一个100M的数据块

archivelog是什么 archive什么意思啊了_运维_03


看看大小

archivelog是什么 archive什么意思啊了_操作系统_04


用gzip进行压缩

archivelog是什么 archive什么意思啊了_运维_05


压缩之后变成100K了,注意压缩文件的后缀变成gz了

archivelog是什么 archive什么意思啊了_archivelog是什么_06


看看gzip的语法,如果希望解压 用-d就行了


archivelog是什么 archive什么意思啊了_archivelog是什么_07


类似的,我们可以用bzip2来压缩和解压,后缀变成了bz2

archivelog是什么 archive什么意思啊了_运维_08


或者zip和unzip来压缩和解压,注意zip是windows和linux都通用的格式

archivelog是什么 archive什么意思啊了_压缩文件_09


如何把归档和压缩命令放在一起使用呢?

例如,可以用z代表gzip,j代表bzip2 生成的文件后缀使用.tar.gz 或者 tar.bz2


利用tar和gzip进行归档压缩和解压

archivelog是什么 archive什么意思啊了_运维_10

archivelog是什么 archive什么意思啊了_后缀_11


利用tar和bzip2进行归档压缩和解压

archivelog是什么 archive什么意思啊了_后缀_12

archivelog是什么 archive什么意思啊了_操作系统_13


接下来看看本节的第二个部分,如何进行文件的传递。这里学习了scp和rsync命令,这两个命令都是基于SSH的,因此如果熟悉前面的SSH,这里学习很容易。


首先传递一个之前的归档压缩文件到远程服务器,因为我之前已经配置过root账户的密钥了,所以这里确认了指纹信息之后直接就传送过去了


archivelog是什么 archive什么意思啊了_压缩文件_14


查看确认一下

archivelog是什么 archive什么意思啊了_操作系统_15


类似的,我也可以指定用户来传递,比如我用beanxyz来传递,这个账户没有配置密钥,那么就通过密码来进行验证。


archivelog是什么 archive什么意思啊了_操作系统_16


确认一下

archivelog是什么 archive什么意思啊了_操作系统_17


注意,使用上面的命令之前,必须确认openssh已经在双方服务器安装,如果是最小化界面安装,这个包是没有的,需要手动安装


archivelog是什么 archive什么意思啊了_操作系统_18


上面的例子是拷贝一个文件,如果拷贝一个目录呢?

直接拷贝会报错,这个和cp命令差不多,需要-r 进行递归的操作

archivelog是什么 archive什么意思啊了_运维_19


最后我们看看另外一个命令 rsync,这个命令在备份文件的时候很常见。这个命令的最大好处是可以进行同步文件。


比如 -a 可以直接归档了,简单的说是保持文件所有的权限,时间戳和快捷方式

archivelog是什么 archive什么意思啊了_压缩文件_20

archivelog是什么 archive什么意思啊了_运维_21


豆子个人习惯喜欢加vv参数, 这样可以超详细的列出拷贝的内容是否最新,有的时候拷贝几个T的文件,还需要根据需要重定向正确结果和错误的结果,以便查询

archivelog是什么 archive什么意思啊了_运维_22


喜欢图像界面的话,还可以下载安装grsync,这个软件我曾经试过在windows 下面也是可以运行的。