dd 是 Linux/UNIX
下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
其命令选项也比较多,下面只是提取几个比较常用的命令来说 如:
1 dd if=/dev/zero of=a.img bs=1M count=500 这是一个创建500M的a.img文件
bs指的是设置读入/输出的块大小 bs可取代ibs与obs (ibs是读入块大小,obs是写入块大小)
blocks仅拷贝 blocks 个块,块大小等于 ibs 指定的字节数
2 有关skip与seek参数
skip 从输入文件开头跳过 blocks 个块后再开始复制
seek 从输入文件开头跳过 blocks 个块后再开始复制
举个例子进行说明:
假如我有一个文件abc.gz,大小为83456k,我想用dd命令实现如下备份结果:首先将备份分成三个部分,第一部分为备份文件abc.gz的前10000k,第二部分为中间的70000k,最后备份后面的3456k.
dd if=abc.gz f=abc.gz.bak1 bs=1k count=10000
dd if=abc.gz f=abc.gz.bak2 bs=1k skip=10000 count=70000
dd if=abc.gz f=abc.gz.bak3 bs=1k skip=80000
恢复方法如下:
dd if=abc.gz.bak1 f=abc.gz
dd if=abc.gz.bak2 f=abc.gz bs=1k seek=10000
dd if=abc.gz.bak3 f=abc.gz bs=1k seek=80000
说明skip=xxx是在备份时对if后面的部分也就是原文件跳过多少块再开始备份;seek=xxx则是在备份时对of后面的部分也就是目标文件跳过多少块再开始写
阅读(534) | 评论(0) | 转发(0) |