第九章:文件与文件系统的压缩与打包

一、压缩文件的用途与技术

  1. 文件压缩 减少占用的内存 压缩技术例如:将计算机中bit数据转换成byte数据 + 重复数据进行统计记录(100个1)
  2. 用途:这样想,CPU处理速度快,文件下载速度慢,如果是下载压缩文件,再来解压缩,效率会高很多。
  3. Linux内核大小:300~400M

二、Linux常见的压缩命令

Linux压缩文件的扩展名:tar(compress压缩技术) gz(gzip) nz2(bzip2) tar(tar程序打包,并没有压缩) tar.gz(tar打包 + 压缩) Z tar.bz2(tar + bzip2) 不同扩展名对应不同的压缩技术 + compress不流行了,gzip和gzip2常用

2.1、compress

  1. yum install ncompress:安装ncompress压缩软件
  2. 压缩的源文件消失、压缩文件会被创建、并添加上扩展名,如果想要保留源文件,用-c option

2.2、gzip zcat

  1. 应用广泛、.gz为后后缀 -v显示压缩比 查看压缩文件的内容zcat 解压缩gzip -d
  2. 压缩也有等级,默认6,9是最佳的压缩比

2.3 bzip2 bzcat

  1. bzip2的用法与bzip用法差不多 后缀名为bz2 bzcat bunzip2=bzip2 -d

三、打包命令tar

3.1、tar

  1. 之前提供的三种命令的压缩也适用于目录,但是指的是对目录内的文件分别进行压缩操作,而并非打包
  2. tar的三种比较常用的用法
    ①、压缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
    ②、查询:tar -jtv -f filename.tar.bz2
    ③、解压缩:tar -jxv -f filename.tar.bz2 -C 要解压缩的目录
    filename.tar.bz2是自己取的文件名:
  3. 文件后缀名与option的对应关系为:
    ①、-j和-z ~ tar
    ②、-j ~ tar.bz2
    ③、-z ~ tar.gz
  4. -p option 打包时保留源文件的权限与属性
  5. 打包时文件名有无根目录的区别:
    ①、有:解压后的文件时绝对路径,可能会覆盖原来文件
    ②、无:在原来压缩的文件目录下进行解压
  6. -C 目录,在指定的目录下解开打包
  7. 只解开打包文件中的某一个文件:tar -jxv -f 打包文件.tar.bz2 带解开的文件名
  8. 打包一个目录,单不包含其中某一个文件:–exclude=文件名
  9. 备份比某个时候还要新的文件:–newer -mtime
  10. 基本称谓:只是打包的文件称之为tarfile,打包+压缩=tarball

四、完整备份工具dump

对文件系统进行备份

4.1、dump

  1. 使用dump备份整个文件系统,可以用于备份目录,但是有挺多限制 + 制定等级(0~9):首次级别为0,完美备份,之后进行差异备份。
  2. dump的简单说使用:dump -Suvj -level -f 备份文件 带备份的数据(挂载点或者是设备文件名都行)
    -s:显示备份该文件系统需要多少的容量;
    -u:本次备份的时候会记录到/etc/dumpdates
    -W:检查分区是否有备份过
    -j:dump本身没有压缩的功能,但是-j option提供了。
  3. dump备份单一目录的方式,只能是level0

4.2、restore

  1. 文件备份 ~ 文件恢复,
  2. -t查阅备份数据的内容
  3. -C:将dump备份的数据与源数据进行比较,并显示有差异的文件
  4. dump还原需要建立以一个全新的文件系统
  5. -r:dump备份数据的还原
  6. 仅还原部分文件的restore的互动模式:-i option

5、光盘写入工具

将数据备份到光盘中的操作:将数据构建成一个镜像文件iso,涉及mkisofs命令——将镜像文件刻录到DVD中,涉及cdrecord命令

5.1、mkisofs:勾践镜像文件

  1. 将数据保存到光盘中,首先需要将数据构建成iso镜像文件,再写入到光盘。
  2. 相关命令
    -r:文件信息会保存的比较完整
  3. 默认情况下,所有文件都会保存在镜像文件的根目录下,可以使用-graft-point来处理

5.2、cdrecord:光盘刻录工具

  1. 刻录步骤:
    ①、检测刻录机所在的位置:cdrecord -scanbus dev=ATA(查询模式)
    ②、进行刻录操作:擦除光盘中的旧数据:blank=false(没有这一步cdrecord也会自动帮你擦除,另外要注意-data参数指定写入的方式,而不是以默认的)

六、常见的压缩与备份工具

dd

  1. dd命令:制作一个文件 + 备份,可以读取磁盘设备的内容(几乎是直接读取扇区),备份整块分区或磁盘(superblock metadata boot sector等全都一样)
  2. dd if=input file of=out file bs=block size

cpio

  1. Cpio:可以备份任何东西,会结合find、数据流重定向、管道等命令结合使用。
  2. 备份:find 目录(设备) | cpio -ocvB > / 备份目录 + 还原:cpio -iddvc < 备份目录
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值