两个压缩与备份工具:dd,cpio
dd:可以读取磁盘设备的内容,几乎是直接读取扇区,然后将整个设备备份成一个文件。
tar可以用来备份关键数据,而dd则可以用来备份整块分区或整块磁盘。
#dd if="inputfile" of="outputfile" bs="block size" count="number"
if:就是输入文件,也可以是设备
of:是输出文件,也可以是设备
bs:规划一个block的大小,未指定则默认为512bytes(一个扇区大小)
count:多少个bs的意思
例子1:将/etc/passwd备份到/tmp/passwd.back中
#dd if=/etc/passwd of=/tmp/passwd.back
例子2:将自己的磁盘的第一个扇区备份下来
#dd if=/dev/sda of=/tmp/mbr.back bs=512 count=1
例子3:找出系统中最小的分区,并将它备份下来
#df -h
#dd if=/dev/sda1 of=/tmp/boot.whole.disk
如果要还原,就反向回去
#dd if=/tmp/boot.whole.disk of=/dev/sda1
如果要将/dev/hdc1完整的复制到另外一个分区上,使用自己系统上未分区的剩余的磁盘空间再新建一个与 /dev/hdc1差不多大小的分区,然后将之进行完整的复制。
#fdisk -l /dev/hdc ==>可以看到有13个磁柱
#fdisk /dev/hdc ==>分配13个磁柱
#partprobe
(分配的新区不用格式化,dd可以讲原本旧分区中扇区表面的数据整个复制过来,连同superblock,boot sector,meta data等。)
#dd if=/dev/hdc1 of=/dev/hdc9
#mount /dev/hdc9 /mnt
#df
cpio:可以备份任何数据,包括设备文件,不过cpio有个大问题,那就是不会主动去找文件来备份。
#cpio -ovcB > [file|device] ==>备份
#cpio -ivcdu < [file|device] ==>还原
cpio -ivct < [file|device] ==>查看
备份使用到的参数:
-o:将数据copy输出到文件或者设备上
-B:让默认的blocks可以增加至5120bytes,默认是512bytes。这样的好处是可以让大文件的存储速度加快。
还原会使用到的参数:
-i:将数据自文件或设备复制到系统当中
-d:自动新建目录。使用cpio所备份的数据不见得会在同一层目录中,因此我们必须要让cpio在还原时可以新建目录,此时就要用这个参数。
-u:自动将较新的文件覆盖掉较旧的文件。
-t:需配合-i参数,可用在查看以cpio新建的文件或设备的内容。
一些可共享的参数:
-v:让存储的过程中文件名可以再屏幕上显示
-c:一种较新的portable format方式存储
因为cpio会将数据整个显示到屏幕上,所以我们要通过数据重定向来存储。
例子:找出/boot下面的文件,备份到 /tmp/boot.cpio
#find /boot |cpio -ocvB > /tmp/boot.cpio
将文件在/root/目录下解开
#cpio -idvc < /tmp/boot.cpio
cpio还可以将系统的数据完整的备份到磁带机上去
备份: #find / |cpio -ocvB > /dev/st0
还原: #cpio -idvc < /dev/st0
阅读(1196) | 评论(0) | 转发(0) |