最近在弄系统备份,看了很多文章,学习了很多,今儿给大家介绍下dd命令,用于备份系统,和Ghost有的一拼,而且还简单,下面给大家详细介绍下:
dd命令把指定的输入文件拷贝到指定的输出文件中,并且在拷贝的过程中可以进行格式转换。
dd指令选项详解
if=file——输入文件名,缺省为标准输入
of=file——输出文件名,缺省为标准输出
ibs=bytes——一次读入bytes个字节(即一个块大小为bytes个字节)
obs=bytes——次写bytes个字节(即一个块大小为bytes个字节)
bs=bytes——同时设置读写块的大小为bytes,可代替ibs和obs
cbs=bytes——一次转换bytes个字节,即转换缓冲区大小
skip=blocks——从输入文件开头跳过blocks个块后再开始复制
seek=blocks——从输出文件开头跳过blocks个块后再开始复制。(通常只有当输出文件是磁盘或磁带时才有效)
count=blocks——仅拷贝blocks个块,块大小等于ibs指定的字节数
conv=conversion[,conversion…]——用指定的参数转换文件
ascii——转换EBCDIC为ASCII
ebcdic——转换ASCII为EBCDIC
ibm——转换ASCII为alternateEBCDIC
block——把每一行转换为长度为cbs的记录,不足部分用空格填充
unblock——使每一行的长度都为cbs,不足部分用空格填充
lcase——把大写字符转换为小写字符
ucase——把小写字符转换为大写字符
swab——交换输入的每对字节
noerror——出错时不停止
notrunc——不截短输出文件
sync——把每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐
注意:指定数字的地方若以下列字符结尾乘以相应的数字:b=512,c=1,k=1024,w=2,xm=numberm,kB=1000,K=1024,MB=1000*1000,M=1024*1024,GB=1000*1000*1000,G=1024*1024*1024
备份系统的操作命令:
备份操作命令示例
恢复系统时操作命令:
如下是使用dd命令备份一个文件,并进行压缩
ddif=/dev/sdaof=~/disk1.img#disk1.img就是备份好的磁盘映像文件
后续是压缩文件
gzipdisk1.img#generatesdisk1.img.gz
或者在创建磁盘映像文件的同时就执行压缩:
ddif=/dev/sda|gzip>disk.img.gz
ddif=/dev/sda|bzip2>disk.img.bz2
备份系统的一个示例:
备份系统示例
恢复系统,那就执行如下步骤:
此外dd命令还可以用于增加swap分区的大小,参见如下示例
#ddif=/dev/zeroof=/root/bigfilebs=1Mcount=128
128+0recordsin
128+0recordsout
134217728bytes(134MB)copied,3.93615s,34.1MB/s
#mkswap/root/bigfile
Settingupswapspaceversion1,size=131068KiB
nolabel,UUID=4bdfb5e8-1aff-450a-a658-31b945e2d4e8
#swapon/root/bigfile
在每次开机的时候自动加载swap文件,需要在/etc/fstab文件中增加一行:
/root/bigfileswapswapdefaults00
dd备份总结完毕,希望大家喜欢。
马哥学习交流群马哥教育-Linux学习-1群485374463
马哥教育-Linux学习-2群339184057