压缩
压缩命令
- compress (源文件不存在)
- uncompress
compress -c -v services > services.Z
-c(保留源文件)
-v(显示压缩过程)
gzip 压缩或者解压.gz文件
- gzip + 文件名 压缩文件
gzip -d hosts.gz 解压
gzip -c hosts > hosts.gz 保留源文件压缩 - zcat hosts.gz 查看 hosts.gz 文件内容
- gzip + 文件名 压缩文件
bzip -d 解压
bzip -c hosts > hosts.bz2 保留源文件
bzcat + 文件,查看内容
zip hosts.zip hosts 压缩,保留源文件
ubzip hosts.zip
打包
tar只能打包,没有压缩功能,可以把很多文件放到一起,会变大
tar cvf hosts.tar hosts
c 创建一个归档文件
v 显示创建归档过程
f 指名打包之后的名字
tar cvf hosts.tar hosts --remove-files #不保留源文件归档
tar tvf hosts.tar #不解档查看归档文件的内容
tar xvf hosts.tar #解档到当前路径下
tar xvf hosts.tar -C /aa #解档到/aa下面
tar xvf hosts.tar hosts #解压归档文件中某个文件hosts
想要tar进行压缩,可以调用gzip
tar zcvf hosts.tar.gz *
[z:使用gzip压缩功能。生成 .tar.gz ]
想要tar进行压缩,可以调用bzip2
tar jcvf hosts.tar.bz2 *
[j:使用bzip压缩功能。生成 .tar.bz2 ]
tar jxvf hosts.tar.bz2
[bzip解压]
备份
- 完全备份
- 增量备份
- 差异备份
备份工具 dump
数字指明备份级别:0完全备份,
备份的内容从 上次备份的 比本次小的[级别] 算起开始备份~
所以增量备份是 0 1 2 3
差异备份是 0 9 8 7 6
详见老段 9(2) 12min
dump -0u -f zlin/1.dump /dev/sda3
-0 以完全备份的形式备份
-u 将备份时间存储到/etc/dumpdates
-f 指明备份路径
dump -0u -f zlin/1.dump /dev/sda3
touch /xx/dd
dump -1u -f zlin/2.dump /dev/sda3
touch /xx/ee
dump -2u -f zlin/3.dump /dev/sda3
2.dump 备份了dd
3.dump 备份了从上次开始增长的文件 ee
恢复
restore -t -f /rche/1.dump
不恢复的情况下查看备份文件内容。
例子中使用全备份,恢复应该顺序恢复1,2,3
restore -r -f /root/zlin/1.dump
restore -r -f /root/zlin/2.dump
restore -r -f /root/zlin/3.dump
-r按照备份文件全部恢复
注意,目录下有个restroesymtable文件,千万不要删除
restore -i -f /root/zlin/1.dump
进入交互的页面:
restore > ?
restore > ls 备份文件下的内容
restore > add aa bb 恢复aa和bb文件
restore > extract 解压aa和bb的备份文件。
这里会问道: set owner/mode for ‘.’ ? [yn]
是否恢复所有者的信息
restore >quit
光盘写入
mkisofs:新建镜像文件
mkisofs -o xx.iso file1 file2 file3
将file1 file2 file3放到镜像文件xx.iso中
直接使用cp可以将光盘拷成镜像文件:
cp /dev/cdrom xxx.iso
Cdrecord:光盘刻录工具
其他工具
dd
dd创建文件
dd if=/dev/zero of=file4 bs=1M count=1
输入/dev下面的zero,每个zero的大小定义为1m,拿一个zero组成一个file4
备份:
dd if=/dev/sda3 of=test
会把整个sda3的内容都拿出来放到test中。
dd if=test of=/dev/sda3
将test内容恢复到sda3中
对拷
dd if=/dev/sda of=/dev/sdb
cpio 可以备份数据,但是不知道备份哪些数据
find -name 'file*' | cpio -o > xx.cpio
备份前面的命令找到的结果,并将结果打包到xx.cpio
-o 打包
cpio -iu < xx.cpio
将xx.cpio解压出来-i 解包
-u 解包出来文件更新的话将覆盖源文件