Linux——文件与文件系统的压缩,打包与备份

栏目: 后端 · 发布时间: 6年前

内容简介:压缩比:压缩后/压缩前占用磁盘空间大小可以解开compress、zip、gzip压缩的文件

压缩比:压缩后/压缩前占用磁盘空间大小

  • 【 .Z 】compress程序压缩
  • 【 .zip 】zip程序压缩
  • 【 .gz 】gzip程序压缩

可以解开compress、zip、gzip压缩的文件

Linux——文件与文件系统的压缩,打包与备份

只能针对一个文件进行压缩

gzip【文件】  压缩单个文件,原本的文件被压缩为.gz的档名,源文件不存在
gzip -v 【文件】  显示压缩比
zcat 【文件.gz】   查看解压缩之后的源文件
gzip -d 【文件.gz】  解压缩.gz文件,.gz文件不存在
zgrep -n '关键字' 【文件.gz】  在.gz文件中,找出关键字在哪几行
gzip -c 【文件】>【文件.gz】  压缩文件保留源文件

.bz2

bzip2程序压缩,比gzip拥有更好的压缩比

Linux——文件与文件系统的压缩,打包与备份

bzip2【文件】  压缩单个文件,源文件不存在
bzip2 -v 【文件】  显示压缩比
bzcat 【文件.bz2】   查看解压缩之后的源文件
bzip2 -d 【文件.bz2】  解压缩文件,bz2文件不存在
bzgrep -n '关键字' 【文件.bz2】  在压缩文件中,找出关键字在哪几行
bzip2 -c 【文件】>【文件.gz2】  压缩文件保留源文件

.xz

xz程序压缩,比gz、bzip2拥有更高的压缩比

Linux——文件与文件系统的压缩,打包与备份

xz【文件】  压缩单个文件,源文件不存在
xz -v 【文件】  显示压缩比
xz -l 【压缩包】  显示文件压缩前后容量
xzcat 【文件.xz】   查看解压缩之后的源文件
xz -d 【文件.xz】  解压缩文件,xz文件不存在
xz -k 【文件】  保留源文件,并建立压缩文件

.tar

tar程序打包的文件,没有压缩

tarfile:tar -cv -f 【文件】  不压缩,只打包
tarball :tar -jcv -f 【文件】 压缩打包
tar -cvf - /etc | tar -xvf -   一边打包一边在/tmp解开

.tar.gz

tar程序打包的文件,经过gzip压缩

.tar.bz2

tar程序打包的文件,经过gzip压缩

.tar.xz

tar程序打包的文件,经过xz压缩

Linux——文件与文件系统的压缩,打包与备份

  • 压 缩:
tar -jcv -f 【文件/目录.tar.bz2】【要被压缩的文件/目录】
  • 查 询:
tar -jtv -f 【文件/目录.tar.bz2】
  • 解压缩:
tar -jxv -f 【文件/目录.tar.bz2】-C 【解压缩目录】
  • 查找压缩包里的文件:
tar -jtv -f 【文件/目录.tar.bz2】| grep '关键字'
  • 解压缩文件特定的文件:
tar -jxv -f 【文件/目录.tar.bz2】【待解开文件】

打包目录,但是不包含目录下的某些文件

tar -jcv -f 【文件.tar.bz2】-- exclude=【文件】 【要被压缩的文件目录】

/* tmp文件目录下的test开头的文件不压缩 */
# tar -jcv -f /root/test.tar.bz2 --exclude=/tmp/test* /tmp

/tmp目录下的文件

Linux——文件与文件系统的压缩,打包与备份

压缩后查找压缩包有关test的文件

Linux——文件与文件系统的压缩,打包与备份

打包比某个时刻还要新的文件

tar -jcv -f 【文件.tar.bz2】 -- newer-mtime="时间" 【要被压缩目录】

/* 备份etc目录下时间比2015/06/17还要新的文件 */
tar -jcv -f /root/etc.newe/17r.then.passwd.tar.bz2 --newer-mtime="2015/06/17" /etc/*

xfsdump

文件系统备份,可以 累计备份 ,就是说可以更新与第一次备份中不一样的数据

Linux——文件与文件系统的压缩,打包与备份

  • 只能备份已挂载的文件系统
  • 必须使用root权限才能操作
  • 只能备份XFS文件系统
  • 备份的数据只能让xfsrestore
  • 不能备份两个具有相同UUID的文件系统

Linux——文件与文件系统的压缩,打包与备份

仅支持文件系统备份,不支持特定目录的备份。

xfsdump -l 0 -L boot_all -M boot_all -f /srv/boot.dump /boot
备份文件建立在/srv/boot.dump,备份文件相关信息/var/lib/xfsdump/inventory

Linux——文件与文件系统的压缩,打包与备份

xfsdump -I列出备份信息状态

Linux——文件与文件系统的压缩,打包与备份

xfsrestore

文件系统还原

Linux——文件与文件系统的压缩,打包与备份

xfsrestore和xfsdump显示的内容都一样,都是显示备份文件的信息状态

简单复原level 0的系统文件
xfsrestore -f 【备份文件】 -L 【session label】 【目的目录】
xfsrestore -f /srv/boot.dump -L boot_all /boot

仅还原部分文件的xfsrestore 互动模式

xfsrestore -f 【备份文件】 -i 【目录】

Linux——文件与文件系统的压缩,打包与备份

光盘写入工具

文本模式刻录光盘步骤:

  • mkisofs指令,将所需备份的数据建成一个映像档(iso)
  • cdrecord指令将文件刻录至光盘或DVD

mkisofs

建立映像档,制作一般数据光盘映像文件

Linux——文件与文件系统的压缩,打包与备份

光盘的格式一般为 iso9660 ,这种格式一般仅支持旧版的DOS档名,档名只能以 8.3 (文件名8个字符,扩展名3个字符)方式存在。

将home、etc目录的数据统统刻录到/tmp/system.img
mkisofs -r -v -o /tmp/system.img /home /etc
mkisofs -r -V 'linux_file' -o /tmp/system.img -graft-point /home=/home /etc=/etc

等号左边是映像文件内的目录,右边是实际数据

制作/修改可开机光盘映像档

Linux——文件与文件系统的压缩,打包与备份

rsync指令可以复制所有的权限属性等数据,也能够进行镜像处理

Linux——文件与文件系统的压缩,打包与备份

cdrecord

光盘刻录工具

Linux——文件与文件系统的压缩,打包与备份

查询刻录机的方式:

Linux——文件与文件系统的压缩,打包与备份

进行CD/DVD刻录:

Linux——文件与文件系统的压缩,打包与备份

开始刻录:

Linux——文件与文件系统的压缩,打包与备份

刻录完毕,测试挂载

Linux——文件与文件系统的压缩,打包与备份

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

【 dd 】——备份,直接读取扇区“sector”

Linux——文件与文件系统的压缩,打包与备份

dd if=【输入目录】 of=【输出目录】

示例1:备份光盘

Linux——文件与文件系统的压缩,打包与备份

示例2:备份到USB

Linux——文件与文件系统的压缩,打包与备份

示例3:将/boot整个文件系统通过dd备份下来 (df /boot 查看boot挂载点)

Linux——文件与文件系统的压缩,打包与备份

【 cpio 】——可以备份任何东西,包括设备文件

cpio不会主动去找文件备份,需要配合其它指令告诉cpio该备份的数据在哪里

Linux——文件与文件系统的压缩,打包与备份

find 【文件】 | cpio -ocvB >【备份文件】  备份文件
cpio -idvc <【备份文件】   解开备份文件

cpio很笨,不会理会给的路径是相对路径还是绝对路径,如果加上绝对路径的 / 开头,那么在解开的时候,它会一定会覆盖掉原本的/boot


以上所述就是小编给大家介绍的《Linux——文件与文件系统的压缩,打包与备份》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Programming in Haskell

Programming in Haskell

Graham Hutton / Cambridge University Press / 2007-1-18 / GBP 34.99

Haskell is one of the leading languages for teaching functional programming, enabling students to write simpler and cleaner code, and to learn how to structure and reason about programs. This introduc......一起来看看 《Programming in Haskell》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具