导航:首页 > 程序命令 > dd存储命令

dd存储命令

发布时间:2022-06-14 05:19:57

A. dd命令的介绍

dd是linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。

B. Linux dd 命令怎么用具体例子

举个例子说明一下:

将硬盘a克隆到硬盘b:

ddif=/dev/sf=/dev/sdbbs=4M

可能在这个过程中的速度会比较慢,但是是有原因的,因为有用的和无用的数据都要复制。

——答案来自<xisai>Linux界大牛老师

C. dd命令的DD应用实例。

1.将本地的/dev/hdb整盘备份到/dev/hdd
dd if=/dev/hdb of=/dev/hdd
2.将/dev/hdb全盘数据备份到指定路径的image文件
dd if=/dev/hdb of=/root/image
3.将备份文件恢复到指定盘
dd if=/root/image of=/dev/hdb
4.备份/dev/hdb全盘数据,并利用gzip工具进行压缩,保存到指定路径
dd if=/dev/hdb | gzip > /root/image.gz
5.将压缩的备份文件恢复到指定盘
gzip -dc /root/image.gz | dd of=/dev/hdb
6.备份磁盘开始的512个字节大小的MBR信息到指定文件
dd if=/dev/hda of=/root/image count=1 bs=512
count=1指仅拷贝一个块;bs=512指块大小为512个字节。
恢复:
dd if=/root/image of=/dev/hda
7.备份软盘
dd if=/dev/fd0 of=disk.img count=1 bs=1440k
(即块大小为1.44M)
8.拷贝内存内容到硬盘
dd if=/dev/mem of=/root/mem.bin bs=1024
(指定块大小为1k)
9.拷贝光盘内容到指定文件夹,并保存为cd.iso文件
dd if=/dev/cdrom(hdc) of=/root/cd.iso
10.增加swap分区文件大小
第一步:创建一个大小为256M的文件:
dd if=/dev/zero of=/swapfile bs=1024 count=262144
第二步:把这个文件变成swap文件:
mkswap /swapfile
第三步:启用这个swap文件:
swapon /swapfile
第四步:编辑/etc/fstab文件,使在每次开机时自动加载swap文件:
/swapfile swap swap default 0 0
11.销毁磁盘数据
dd if=/dev/urandom of=/dev/hda1
注意:利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据。
12.测试硬盘的读写速度
dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file
dd if=/root/1Gb.file bs=64k | dd of=/dev/null
通过以上两个命令输出的命令执行时间,可以计算出硬盘的读、写速度。
13.确定硬盘的最佳块大小:
dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file
dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file
dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file
dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file
通过比较以上命令输出中所显示的命令执行时间,即可确定系统最佳的块大小。
14.修复硬盘
dd if=/dev/sda of=/dev/sda
当硬盘较长时间(比如1,2年)放置不使用后,磁盘上会产生magnetic fluxpoint。当磁头读到这些区域时会遇到困难,并可能导致I/O错误。当这种情况影响到硬盘的第一个扇区时,可能导致硬盘报废。上边的命令有可能使这些数据起死回生。且这个过程是安全,高效的。
15.dd命令做usb启动盘
dd if=xxx.iso of=/dev/sdb bs=1M
root用户或者sudo,用以上命令前必须卸载u盘,sdb是你的u盘,bs=1M是块的大小,后面的数值大,写的速度相对块一点,但也不是无限的,我一般选2M,注意,执行命令后很块完成,但u盘还在闪,等不闪了,安全移除。

D. LINUX下如何用DD命令来测试存储的读写性能

通常就是 计算读写一定大小的块耗费的时间 ,本身有速度输出
基本的测试如下
磁盘读速度
sync;time dd if=[mountpoint] of=/dev/null bs=4096k count=2000
测试数据大小为:4096k×2000
磁盘写速度
sync;time dd if=/dev/zero of=[mountpoint] bs=4096k count=2000
测试数据大小为:4096k×2000
[mountpoint]替换为你实际的挂载点
以上都是测试 2000个 4M块的速度 可以通过改变 bs大小来分析不同级别块的性能

可以通过写更详细的脚本来实现更详细的输出

E. dd命令能拷贝目录或者分区吗

DD命令可以实现拷贝分区。
1、设置BIOS从光盘启动,进入SUSE系统,这个系统一个微型的linux系统,能够支持reiserfs文件系统。

2、对新添加的磁盘进行分区,划分成一个逻辑分区。
3、把这个分区格式化为reiserfs文件系统。
4、把这个分区挂载到mnt目录下,然后用DD命令进行磁盘分区的对拷。
说明:
DD命令指示linux下的一个命令,要借助与linux操作系统进行实现,所以要用一个能够在光盘或者U盘里运行的系统来操作,而且这个系统要支持reiserfs文件系统,要不就没办法把reiserfs文件系统的分区挂载到目录下进行对拷。速度测试的在20M/s—50M/s之间。

F. 什么是dd文件

件直接写到硬盘上(或指定分区)
dd命令是LINUX下的磁盘读写常用命令.

功能:把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换。可以用该命令实现DOS下的disk命令的作用。先用dd命令把软盘上的数据写成硬盘的一个寄存文件,再把这个寄存文件写入第二张软盘上,完成disk的功能。需要注意的是,应该将硬盘上的寄存文件用rm命令删除掉。系统默认使用标准输入文件和标准输出文件。

语法:dd 〔选项〕

if =输入文件(或设备名称)。

of =输出文件(或设备名称)。

ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。

skip = blocks 跳过读入缓冲区开头的ibs*blocks块。

obs = bytes 一次写入bytes字节,即写入缓冲区的字节数。

bs = bytes 同时设置读/写缓冲区的字节数(等于设置ibs和obs)。

cbs = byte 一次转换bytes字节。

count=blocks 只拷贝输入的blocks块。

conv = ASCII 把EBCDIC码转换为ASCIl码。

conv = ebcdic 把ASCIl码转换为EBCDIC码。

conv = ibm 把ASCIl码转换为alternate EBCDIC码。

conv = block 把变动位转换成固定字符。

conv = ublock 把固定位转换成变动位。

conv = ucase 把字母由小写转换为大写。

conv = lcase 把字母由大写转换为小写。

conv = notrunc 不截短输出文件。

conv = swab 交换每一对输入字节。

conv = noerror 出错时不停止处理。

conv = sync 把每个输入记录的大小都调到ibs的大小(用NUL填充)。

例1:要把一张软盘的内容拷贝到另一张软盘上,利用/tmp作为临时存储区。把源盘插入驱动器中,输入下述命令:

$ dd if =/dev/fd0 of = /tmp/tmpfile

拷贝完成后,将源盘从驱动器中取出,把目标盘插入,输入命令:

$ dd if = /tmp/tmpfile of =/dev/fd0

软盘拷贝完成后,应该将临时文件删除:

$ rm /tmp/tmpfile

例2:把net.i这个文件写入软盘中,并设定读/写缓冲区的数目。

(注意:软盘中的内容会被完全覆盖掉)

$ dd if = net.i of = /dev/fd0 bs = 16384

例3:将文件sfile拷贝到文件 dfile中。

$ dd if=sfile of=dfile

dd命令复制硬盘
--------------------------------------------------------------------------------

1)确保原盘和目的盘几何特性相同
2)成为超级用户
3)在用主盘的系统中输入touch /reconfigure,有主盘的系统需要/reconfigure文件,以便在重新启动时发现复制盘
4)输入init 0关闭系统
5)将复制盘连接到系统并开机
6)在OK提示符下输入boot
7)输入dd if=/dev/dsk/device-name of=/dev/dsk/device-name bs=blocksize (输入文件if是主盘设备,输入文件of是复制盘设备)
8)输入fsck /dev/rdsk/device-name (检测新的文件系统)
9)输入mount /dev/rdsk/device-name /mnt 加载复制盘的root文件系统。
10)编辑复制盘上的/etc/vfstab文件,指向正确的设备名。
11)输入umount/mnt ,卸载复制盘的root文件系统。
12)输入init 0关闭系统。
13)输入boot diskN -s以单用户模式引导复制盘。
14)输入sys-uconfig恢复配置复制盘,在该盘配置恢复后系统关闭。
15)输入boot diskN 引导复制盘
16)提供相关的系统信息。(HOSTNAME TIMEZONE IP...)
17)系统完成,即作为超级用户登录验证系统信息。

例:
#dd if=/dev/dsk/c0t0d0s2 of=/dev/dsk/c0t1d0s2 bs=100k
#fsck /dev/rdsk/c0t1d0s2
#mount /dev/rdsk/c0t1d0s2 /mnt
#cd /mnt/etc
#vi /etc/vfstab
#cd /;umount /mnt
#init 0
OK boot disk2 -s
#sys-unconfig
OK boot disk2 -s

G. linux里面dd命令作用是什么

Linux dd 命令用于读取、转换并输出数据。

dd 可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。

参数说明:

H. 如何使用Linux的dd命令

建议在bash下运行man dd 或者 dd --help.
以下请参考:
linux创建文件命令:dd命令
把指定的输入文件拷贝到指定的输出文件中,并且在拷贝的过程中可以进行格式转换。语法:
CODE:[Copy to clipboard]dd 〔选项〕
QUOTE:
if =输入文件(或设备名称)。
of =输出文件(或设备名称)。
ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。
skip = blocks 跳过读入缓冲区开头的ibs*blocks块。
obs = bytes 一次写入bytes字节,即写 入缓冲区的字节数。
bs = bytes 同时设置读/写缓冲区的字节数(等于设置obs和obs)。
cbs = bytes 一次转换bytes字节。
count = blocks 只拷贝输入的blocks块。
conv = ASCII 把EBCDIC码转换为ASCII码。
conv = ebcdic 把ASCII码转换为EBCDIC码。
conv = ibm 把ASCII码转换为alternate EBCDIC码。
conv = blick 把变动位转换成固定字符。
conv = ublock 把固定们转换成变动位
conv = ucase 把字母由小写变为大写。
conv = lcase 把字母由大写变为小写。
conv = notrunc 不截短输出文件。
conv = swab 交换每一对输入字节。
conv = noerror 出错时不停止处理。
conv = sync 把每个输入记录的大小都调到ibs的大小(用ibs填充)。
fdformat命令
低级格式化软盘。
实例:
创建一个100M的空文件
dd if=/dev/zero of=hello.txt bs=100M count=1

以上是linux创建文件命令:dd的用法。

I. 如何使用dd命令获得硬盘的mbr信息

dd命令:文件创建或复制命令
if=数据来源
of=数据存储目标
bs=1 blocksize 指定复制大小为复制单位
count=2 数量
seek=#: 创建数据文件时,跳过的空间大小;
备份和还原MBR文件:
dd if=/dev/sda of=/mnt/usb/mbr.backup bs=512 count=1
dd if=/mnt/usb/mbr.backup of=/dev/sda bs=512 count=1
创建1G大小的文件
dd if=/dev/zero of=/var/swapfile bs=1M count=1024

J. dd命令的DD命令的解释。

1.if=文件名:输入文件名,缺省为标准输入。即指定源文件。<if=inputfile>3.ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。bs=bytes:同时设置读入/输出的块大小为bytes个字节。4.cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。5.skip=blocks:从输入文件开头跳过blocks个块后再开始复制。6.seek=blocks:从输出文件开头跳过blocks个块后再开始复制。注意:通常只用当输出文件是磁盘或磁带时才有效,即备份到磁盘或磁带时才有效。7.count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。8.conv=conversion:用指定的参数转换文件。ascii:转换ebcdic为asciiebcdic:转换ascii为ebcdicibm:转换ascii为alternateebcdicblock:把每一行转换为长度为cbs,不足部分用空格填充unblock:使每一行的长度都为cbs,不足部分用空格填充lcase:把大写字符转换为小写字符ucase:把小写字符转换为大写字符swab:交换输入的每对字节noerror:出错时不停止notrunc:不截短输出文件sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。

阅读全文

与dd存储命令相关的资料

热点内容
我的世界嗨皮咳嗽服务器怎么下 浏览:1000
mvn命令顺序 浏览:978
车贷还完多少时间解压 浏览:964
java页面开发 浏览:816
学编程的小发明 浏览:25
为什么说程序员喜欢格子 浏览:253
代码编译后叫什么 浏览:969
电脑文件夹做了保护怎么删除 浏览:678
php数据库连接全局 浏览:528
葫芦岛有程序员吗 浏览:986
小胖机器人显示无命令 浏览:775
一日一画pdf 浏览:97
编程猫拔萝卜文字评价模板 浏览:252
cmdjava命令 浏览:237
扫描版pdf转文字版 浏览:535
单片机专用寄存器 浏览:501
学习python的手册 浏览:677
vue编译成js文件 浏览:90
给单片机供电的电池 浏览:341
什么app是分享教育的 浏览:900