Linux 压缩解压及备份命令

linux中压缩与备份命令总结
一、压缩与解压缩

1、compress [-rcv] 文件或目录 <==压缩

uncompress 文件.Z <==解压缩

-r:可以连同目录下的文件也同时进行压缩

-c:将压缩数据输出成standard output(输出到屏幕)

-v:可以显示出压缩后的文件信息以及压缩过程中的一些文件名变化

(这个命令是非常老旧的一款)

2、gzip [-cdtv#] 文件名

-c:将压缩的数据输出到屏幕上,可通过数据流重定向来处理

-d:解压缩的参数

-t:可以用来检验一个压缩文件的一致性,看看文件有错误

-v:可以显示压缩比等信息

-#:压缩等级,-1最快,但压缩比最差,-9最慢,但压缩比最好,最好是默认的-6

注:默认的情况下,原文件会被覆盖,要想保留源文件可以使用-c与>的组合(例如gzip -c man.config > man.config.gz 此时源文件会被保留)

zcat 文件名.gz 读取.gz压缩包(前提示原本的文件为文本文件)

3、bzip2 [-cdkzv#] 文件名

-c:将压缩过程中产生的数据输出到屏幕上

-d:解压缩的参数

-k:保留源文件

-z:压缩的参数

-v:显示压缩比等信息

-#:同gzip

bzcat 文件名.bz2 读取.bz2压缩包

解压缩可以使用bunzip2来代替bzip2 -d

4、打包命令tar (可以将多个目录或者文件打包成一个大文件,同时还可以通过gzip/bzip2的支持,将该文件进行压缩)

tar [-j|-z] [cv] [-f 新建的文件名] filename... <==打包与压缩

tar [-j|-z] [tv] [-f 新建的文件名] <==查看文件名

tar [-j|-z] [xv] [-f 新建的文件名] [-C 目录] <==解压缩

-c:新建打包文件,可搭配-v来查看过程中被打包的文件名

-t:查看打包文件的内容有哪些文件名,重点在查看文件名

-x:解压缩或解打包的功能,可以搭配-C在特定的目录解开(-c,-t,-x不能同时出现在同一命令行)

-j:通过bzip2的支持进行压缩/解压缩,此时文件名最好为*.tar.bz2

-z:通过gzip的支持进行压缩/解压缩,此时的文件名最好为*.tar.gz

-v:在压缩/解压缩的过程中,将正在处理的文件名显示出来

-f filename:-f后面接被处理的文件名

-C目录:这个参数用在解压缩的时候,若要在特定目录进行解压缩

-p:保留备份数据的原本属性与权限

-P:保留绝对路径,即允许备份数据中含有根目录

--exclude=file:在压缩的过程中不要将file打包

--newer-mtime='date':仅更新比date这个时刻还要新的文件

二、备份命令

1、dump备份整个文件系统和单一目录(限制在于对单一目录的备份支持比较不足)

dump [-Suvj] [-level] [-f备份文件] 待备份的数据

-S:仅列出后面的待备份数据需要多少磁盘空间才能够备份完毕

-u:将这次dump的时间记录到/etc/dumpdates文件中

-v:将dump的文件过程显示出来

-j:加入bzip2的支持,将数据进行压缩,默认的压缩等级是2

-level:压缩等级,同前

-f:后面接产生的文件

-W:l列出在/etc/fstab里面的具有dump设置的分区是否有备过

如果待备份的数据只是,目录,并非单一文件系统则有限制:

(1)所有的备份数据都必须要在该目录下面

(2)且仅能使用leve 0,即支持完整备份而已

(3)不支持-u参数,即无法创建/etc/dumpdates这个level备份的时间记录文件

2、dump的恢复使用restore命令

restore -t [-f dumpfile] [-h] <==用来查看dump文件

restore -C [-f dumpfile] [-D 挂载点] <==比较dump与实际文件

restore -i [-f dumpfile] <==进入互动模式

restore -r [-f dumpfile] <==还原整个文件系统

-t:此模式用在查看dump起来的备份文件中含有什么重要的数据

-C:此模式可以将dump内的数据拿出来跟实际的文件系统做比较

-i:进入互动模式,可以仅还原部分文件,用在dump目录时的还原

-r:将整个文件系统还原的一种模式,用在还原对文件系统的备份

-h:查看完整备份数据中的inode与文件系统label等信息

-f:后面就接你要处理的那个dump文件

-D:与-C进行搭配,可以查出后面接的挂载点与dump内有不同的文件

3、有光盘写入工具

步骤一:新建镜像文件 mkisofs [-o 镜像文件] [-rv] [-m file] 待备份文件..[-V vol] -graft-point isodir=systemdir...

-o:后面接你想要产生的那个镜像文件名

-r:通过Rock Ridge产生支持UNIX/LINUX的文件数据

-v:显示构建ISO文件的过程

-m file:-m为排除文件

-V vol:新建Volume

-graft-point:graft有转嫁或移植的意思

步骤二:将该镜像文件刻录至光盘或者DVD当中

cdrecord -scanbus dev=ATA <==查询刻录机的位置

cdrecord -v dev=ATA:x,y,z blank=[fast|all] <==抹除重复读写片

cdrecord -v dev=ATA:x,y,z -format <==格式化DVD+RW

cdrecord -v dev=ATA:x,y,z [可用参数功能] file.iso

-scanbus:用在扫描磁盘总线并找出可用的刻录机,后续的设备为ATA接口

-v:在cdrecord运行的过程,显示过程而已

dev=ATA:x,y,z:后续的x,y,z为你系统上刻录机所在的位置,非常重要

blank=[fast|all]:blank为抹除可重复写入的CD/DVD-RW,使用fast较快,all较完整

-format:仅针对DVD+RW这种格式的DVD

[可用参数功能]主要是写入CD/DVD时可使用的参数:

-data:指定后面的文件以数据格式写入,不是以CD音轨方式写入

speed=X:指定刻录速度

-eject:指定刻录完毕后自动退出光盘

fs=Ym:指定多少缓冲存储器,可用在将镜像文件先暂存区,默认为4M,一般建议可增加到8M

针对DVD的参数功能:

driveropts=burnfree:打开Buffer Underrun Free模式的写入功能

-sao :支持DVD-RW的格式

4、dd可备份完整的分区或磁盘,因为dd可读取磁盘的扇区表面数据

dd if="input file" of="output file" bs="block size" count="number"

if:就是input file

of:就是output file

bs:规划的一个block的大小,若为指定则默认是512bytes

count:多少个bs的意思

5、cpio可以备注任何东西,cpio得要配合类似find等可以找到文件名的命令来告知cpiof该备份的数据在哪里

cpio -ovcB > [file|device] <==备份

cpio -ivcdu < [file|device] <==还原

cpio -ivct <[file|device] <==查看

备份会使用到参数:

-o:将数据copy输出到文件或设备上

-B:让默认的Bloks可以增加至5120bytes,默认是512beytes

还原会使用的参数:

-i:将数据自文件或设备复制到系当中

-d:自动新建目录

-u:自动将较新的文件覆盖较旧的文件

-t:需要配合-i参数,可以用在查看以cpio新建的文件或设备的内容

一些共享的参数:

-v:让存储的过程中文件名可以显示在屏幕上

-c:一种较新的portable format方式存储

上一篇:动手动脑-Java的方法重载


下一篇:C#组件系列———又一款日志组件:Elmah的学习和分享