美文网首页
Linux基础篇-第八章-文件与文件系统的压缩,打包与备份

Linux基础篇-第八章-文件与文件系统的压缩,打包与备份

作者: taogan | 来源:发表于2021-06-25 13:17 被阅读0次

常用指令

gzip, zcat/zmore/zless/zgrep

gzip [-cdtv#] 文件名 :压缩或解压文件(在预设的状态下原本的文件会被压缩成为 .gz 的档名,源文件就不再存在了)
      -c :将压缩的数据输出到屏幕上,可透过数据流重导向来处理;
      -d :解压缩的参数;
      -t :可以用来检验一个压缩文件的一致性~看看文件有无错误;
      -v :可以显示出原文件/压缩文件案的压缩比等信息;
      -# :#代表数字,代表压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!预设是 -6

zcat/zmore/zless 纯文本档压缩文件名:可以读取纯文本档被压缩后的压缩文件

egrep [option] 文件名:搜寻关键词

zegrep [option] 纯文本档压缩文件名:搜寻关键词

bzip2, bzcat/bzmore/bzless/bzgrep

bzip2 [-cdkzv#] 文件名:压缩或解压文件
      -c :将压缩的过程产生的数据输出到屏幕上!
      -d :解压缩的参数
      -k :保留源文件,而不会删除原始的文件喔!
      -z :压缩的参数 (默认值,可以不加)
      -v :可以显示出原文件/压缩文件案的压缩比等信息;
      -# :与 gzip 同样的,都是在计算压缩比的参数, -9 最佳, -1 最快

bzcat/bzmore/bzless 纯文本档压缩文件名:可以读取纯文本档被压缩后的压缩文件

bzegrep [option] 纯文本档压缩文件名:搜寻关键词

xz, xzcat/xzmore/xzless/xzgrep

xz [-dtlkc#] 文件名:压缩或解压文件
      -d :就是解压缩啊!
      -t :测试压缩文件的完整性,看有没有错误
      -l :列出压缩文件的相关信息
      -k :保留原本的文件不删除~
      -c :同样的,就是将数据由屏幕上输出的意思!
      -# :同样的,也有较佳的压缩比的意思!

tar

tar [-z|-j|-J] [cv] [-f 待建立的新檔名] filename...          <==打包与压缩
tar [-z|-j|-J] [tv] [-f 既有的 tar 檔名]                     <== 查看压缩文件内容
tar [-z|-j|-J] [xv] [-f 既有的 tar 檔名] [-C 目录]           <==解压缩
      -c :建立打包文件,可搭配 -v 来察看过程中被打包的档名(filename)
      -t :察看打包文件的内容含有哪些档名,重点在察看『档名』就是了;
      -x :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开,特别留意的是, -c, -t, -x 不可同时出现在一串指令列中。
      -z :透过 gzip 的支持进行压缩/解压缩:此时档名最好为 *.tar.gz
      -j :透过 bzip2 的支持进行压缩/解压缩:此时档名最好为 *.tar.bz2
      -J :透过 xz 的支持进行压缩/解压缩:此时档名最好为 *.tar.xz,特别留意, -z, -j, -J 不可以同时出现在一串指令列中
      -v :在压缩/解压缩的过程中,将正在处理的文件名显示出来!
      -f filename:-f 后面要立刻接要被处理的档名!建议 -f 单独写一个选项啰!(比较不会忘记)
      -C 目录 :这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
      -p(小写) :保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件
      -P(大写) :保留绝对路径,亦即允许备份数据中含有根目录存在之意;

      其实最简单的使用 tar 就只要记忆底下的方式即可:
            压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
            查 询:tar -jtv -f filename.tar.bz2
            解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录

XFS 文件系统的备份与还原

xfsdump [-L S_label] [-M M_label] [-l #] [-f 备份档] 待备份资料 :XFS 文件系统备份 xfsdump
       使用 xfsdump 时,请注意底下的限制喔:
            xfsdump 不支援没有挂载的文件系统备份!所以只能备份已挂载的!
            xfsdump 必须使用 root 的权限才能操作 (涉及文件系统的关系)
            xfsdump 只能备份 XFS 文件系统啊!
            xfsdump 备份下来的数据 (文件或储存媒体) 只能让 xfsrestore 解析
            xfsdump 是透过文件系统的 UUID 来分辨各个备份档的,因此不能备份两个具有相同 UUID 的文件系统

      -L :xfsdump 会纪录每次备份的 session 标头,这里可以填写针对此文件系统的简易说明
      -M :xfsdump 可以纪录储存媒体的标头,这里可以填写此媒体的简易说明
      -l :是 L 的小写,就是指定等级~有 0~9 共 10 个等级喔! (预设为 0,即完整备份)
      -f :有点类似 tar 啦!后面接产生的文件,亦可接例如 /dev/st0 装置文件名或其他一般文件档名等
      -I :从 /var/lib/xfsdump/inventory 列出目前备份的信息状态

xfsrestore [-f 备份档] [-L S_label] [-s] 待复原目录 :文件系统还原
      -I :跟 xfsdump 相同的输出!可查询备份数据,包括 Label 名称与备份时间等
      -f :后面接的就是备份档!企业界很有可能会接 /dev/st0 等磁带机!我们这里接档名!
      -L :就是 Session 的 Label name 喔!可用 -I 查询到的数据,在这个选项后输入!
      -s :需要接某特定目录,亦即仅复原某一个文件或目录之意!
      -r :如果是用文件来储存备份数据,那这个就不需要使用。如果是一个磁带内有多个文件, 需要这东西来达成累积复原
      -i :进入互动模式,进阶管理员使用的!一般我们不太需要操作它!

其他常见的压缩与备份工具

dd   if=input_file   of=output_file   bs=block_size   count=number :
      if :就是 input file 啰~也可以是装置喔!
      of :就是 output file 喔~也可以是装置;
      bs :规划的一个 block 的大小,若未指定则预设是 512 bytes(一个 sector 的大小)
      count:多少个 bs 的意思。

总结:
1、压缩指令为透过一些运算方法去将原本的文件进行压缩,以减少文件所占用的磁盘容量。 压缩前与压缩后的文件所占用的磁盘容量比值, 就可以被称为是『压缩比』

2、压缩的好处是可以减少磁盘容量的浪费,在 WWW 网站也可以利用文件压缩的技术来进行数据的传送,好让网站带宽的可利用率上升喔

3、压缩文件案的扩展名大多是:『*.gz, *.bz2, *.xz, *.tar, *.tar.gz, *.tar.bz2, *.tar.xz』

4、常见的压缩指令有 gzip, bzip2, xz。压缩率最佳的是 xz,若可以不计时间成本,建议使用 xz 进行压缩。

5、tar 可以用来进行文件打包,并可支持 gzip, bzip2, xz 的压缩。

6、压 缩:tar -Jcv -f filename.tar.xz 要被压缩的文件或目录名称

7、查 询:tar -Jtv -f filename.tar.xz

8、解压缩:tar -Jxv -f filename.tar.xz -C 欲解压缩的目录

9、xfsdump 指令可备份文件系统或单一目录

10、xfsdump 的备份若针对文件系统时,可进行 0-9 的 level 差异备份!其中 level 0 为完整备份;

11、xfsrestore 指令可还原被 xfsdump 建置的备份档;

12、要建立光盘刻录数据时,可透过 mkisofs 指令来建置;

13、可透过 wodim 来写入 CD 或 DVD 刻录机

14、dd 可备份完整的 partition 或 disk ,因为 dd 可读取磁盘的 sector 表面数据

相关文章

网友评论

      本文标题:Linux基础篇-第八章-文件与文件系统的压缩,打包与备份

      本文链接:https://www.haomeiwen.com/subject/attfyltx.html