红帽RHCE考试上午-RHCSA(RH200)
servera.example.com 任务
13. 创建归档打包压缩文件夹
• 创建一个名为/root/backup.tar.bz2 的tar 包,用来压缩/usr/local 目录。
实操演示过程:
[root@servera ~]# tar -cvjf /root/backup.tar.bz2 /usr/local/
...............
命令解析:
tar:将文件或文件夹进行打包
-c:表示进行tar打包动作
v:打印打包的过程
j:表示采用bzip2压缩规则
f:表示是指定压缩包文件名称
-z:有gzip属性的
-J:具有xz属性的
-Z:有compress属性的
-v:显示所有过程
-x: 解压
-O:将文件解开到标准输出
-f: 输出到文件
验证:
[root@servera ~]# ll /root/backup.tar.bz2
total 12
-rw-r--r--. 1 root root 0 May 2 14:22 backup.tar.bz2
tar包管理:
作用:实现将文件或目录进行打包压缩、解包解压
查看文件大小:
[root@root ~]# ls -lh /etc/passwd # -l是显示属性,-h人性化显示容量单位(k、M、G)
-rw-r--r-- 1 root root 1.2K 3月 4 11:01 /etc/passwd
查目录大小:
[root@root ~]# du -hs /etc #-h-h人性化显示容量单位(k、M、G),-s是只显示总大小(sum)
21M /etc
tar:可以实现打包并压缩,解包解压缩这两种功能。
tar打包和压缩
tar 即 Tape ARchive 磁带归档,可以对目录和多个文件打包一个文件,并且可以压缩,保留文件属性不丢失,常用于备份功能,
tar [常用选项组合] [生成的包] [被打包的源文件或者目录]
tar xf [要被解压的包] -C [指定释放到的目录]
常用选项组合
czvf #创建tar.gz
cjvf #创建tar.bz2
cJvf #创建tar.xz
-c:创建压缩包
-z:有gzip属性的
-j:有bz2属性的
-J:具有xz属性的
-Z:有compress属性的
-v:显示所有过程
-x: 解压
-O:将文件解开到标准输出
-f: 输出到文件
查看帮助:
[root@root ~]# tar --help | more
tar打包并压缩:
[root@root ~]# tar -czvf etc.tar.gz /etc
说明:-c是打包 -z是用gzip压缩 -v显示过程 -f是指定压缩包文件包 -j是用bzip2压缩
(注:-f 一定要放在最后的选项)
tar解包解压缩:
[root@root ~]# tar -xzvf etc.tar.gz -C /tmp/
说明:-x是解包 -C是指定解压到的目录
查看tar包中的文件列表:
[root@root ~]# tar -tf etc.tar.gz
往tar包中添加新文件、删除文件:
[root@root ~]# tar -cvf host.tar /etc/host* 打包
[root@root ~]# tar -tf host.tar 查看tar包中的文件列表
[root@root ~]# tar -rvf host.tar /etc/passwd /etc/group 往tar包中追加passwd、group文件
[root@root ~]# tar -vf host.tar --delete etc/host* 从tar包中删除host*文件
zip压缩,unzip解压缩
用法:zip a.zip -r 要压缩的文件
选项:-r 递归压缩目录
实例:
[root@root ~]# zip etc.zip /etc/* 压缩/etc目录中的文件,不包含子目录中的文件
[root@root ~]# unzip etc.zip -d /tmp/ 解压到/tmp目录中
[root@root ~]# zip etc1.zip -r /etc 递归压缩/etc目录
打包压缩:
格式:tar -czvf 包名.tar.gz 要打包的文件
例:
[root@root ~]# tar -czvf etc.tar.gz /etc
[root@root ~]# du -hs /etc etc.tar.gz 统计文件大小(disk use)
解释:
tar后面的-c是打包(create),z是采用gzip压缩,v显示过程,f是指定包文件名。
du后的-h是显示容量单位,-s是sum统计总大小(通常用于目录)
解包解压缩:
格式:tar -xvf 包名.tar.gz -C 解压到的目录
例:
[root@root ~]# tar -xvf etc.tar.gz -C /opt/
[root@root ~]# ls /opt 显示/opt目录中的文件名列表
[root@root ~]# rm -rfv /opt/etc 强制删除/opt目录下的etc目录
解释:tar后面的-x是解包解压。
rm是删除文件,-r是递归删除目录,-f强制(即不提示yes/no),-v显示过程。