服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - linux学习日记六 文件与文件系统的压缩与打包

linux学习日记六 文件与文件系统的压缩与打包

2019-12-06 18:25Linux教程网 Linux

这系列文章主要是一刀写的linux相关学习资料,这篇文章主要介绍了linux下的文件与文件系统的压缩与打包 ,需要的朋友可以参考下

====gzip压缩命令====

# gzip [-cdtv#] 文件名 –> 可以解开compress,zip,gzip软件压缩的文件

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

-d:解压缩参数

-t:验证一个压缩文件的一致性,看看文件是否有无错误

-v:显示源文件/压缩文件的压缩比等信息

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

====bzip2压缩命令====

# bzip2 [-cdkzv#] 文件名

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

-d:解压缩命令

-k:保留原文件,不删除源文件

-z:压缩参数

-v:显示源文件/压缩文件的压缩比等信息

====压缩/解压缩并打包命令tar====

# tar -jcvf file.tar.bz2 file1 file2 file3… –> 利用bzip2来压缩并打包

# tar -jxvf file.tar.bz2 -C 目录 –> 利用bzip2解压缩到指定文件夹

# tar -jtvf file.tar.bz2 –> 查看bz2的压缩文件内容

——————————————————————————-

# tar -zcvf file.tar.gz file1 file2 file3… –> 利用gzip来压缩并打包

# tar -zxvf file.tar.gz -C 目录 –> 利用gzip来解压缩到指定文件夹

# tar -ztvf file.tar.gz –> 查看gz的压缩文件内容

——————————————————————————–

-p:保留备份数据的原本权限与属性,常用语备份(-c)重要的配置文件(常用)

-P:保留绝对路径,即允许备份数据中含有根目录存在之意(不常用)

–exclude=FILE:在压缩过程中,不要将FILE打包

如果只想解开一个单独的文件,可以使用命令:

先查看:# tar -jtvf file.tar.bz2 | grep ‘myfile’

# tar -jxvf file.tar.bz2 待解开文件名

====dump备份完整的文件系统====

# dump -S /dev/sda1 –> 仅仅列出需要多少磁盘空间才能备份

# dump -0u -f /root/boot.dump /boot –> 备份等级为0表示完整备份,-u表示并且将dump的时间记录到/etc/dumpdatas文件中

如果是一个目录而非单一的文件系统,则只能完整备份并且不能使用-u参数,而且需要备份的数据都在这个目录下:

# dump -0j -f /root/etc.dump.bz2 /etc

====restore 恢复dump备份的东东====

# restore [-tir] -f dumpfile

# restore -C -f dumpfile -D 挂载点 –> 比较dump与实际文件

-t:查看dump文件内容

-i:进入互动模式

-r:整个文件系统的还原

====光盘写入工具====

* 先将所需要备份的数据构建成一个镜像文件(ISO),利用mkisofs命令

* 将该镜像文件刻录至光盘或DVD中,利用cdrecord命令

# mkisofs -o 镜像文件 -rv -m file 待备份文件… -v vol -graft-point isodir=systemdir

举个例子:# mkisofs -r -v ‘linux_file’ -o /tmp/system.img -m /home/lost+found -graft-point /root=/root /home=/home /etc=/etc

接下来讲讲光盘刻录工具cdrecord

# 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

参数列表:

-data:指定以数据格式写入,而不是以默认的CD音轨(-audio)方式写入

speed=X:指定刻录速度,例如CD可用speed=40,DVD可用speed=4之类。

-eject:刻录完自动弹出

fs=8m指定多少缓冲存储器,默认4M,可用增加到8M

针对DVD参数功能:

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

-sao:支持DVD-RW的格式

一个完整的利用DVD-RW刻录的例子:

先擦除数据:# cdrecord -v dev=ATA:1,1,0 blank=fast

开始写入:# cdrecord -v dev=ATA:1,1,0 fs=8m -data -sao driveropts=burnfree /tmp/system.img

# mount /dev/cdrom /mnt

# df -h /mnt <==看看光盘里面有没有刻录的数据吧

# umount /mnt <== 卸载光盘

====备份工具dd====

# dd if=/etc/passwd /tmp/passwd.back

# dd if=/dev/hdc of=/tmp/mbr.bak bs=512 count=1 <==将自己的磁盘第一个扇区备份下来(放置MBR和磁盘分区表的那个扇区)

注:tar用来备份重要数据,而dd用来备份整块分区或者是整块磁盘,dd甚至可以完整复制启动扇区(boot sector)的区块,这个是tar无法做到的

延伸 · 阅读

精彩推荐