您的位置:首页 > 运维架构 > Linux

Linux入职基础-5.20_命令dd实战磁盘维护(应用实战4)

2018-03-03 21:58 661 查看
命令dd实战磁盘维护(应用实战4)
简介:
dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
功能:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
语法:
指定数字的地方若以下列字符结尾乘以相应的数字:
b=512, c=1, k=1024, w=2, xm=number m
参数:
if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >
of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节
obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节
bs=bytes:同时设置读入/输出的块大小为bytes个字节
cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小
skip=blocks:从输入文件开头跳过blocks个块后再开始复制
seek=blocks:从输出文件开头跳过blocks个块后再开始复制
count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数
conv=conversion:用指定的参数转换文件
范例:
#1将本地的/dev/sda整盘备份到/dev/sdb
[root@localhost ~]#dd if=/dev/sda of=/dev/sdb
#2将/dev/sda1分区全盘数据备份到指定路径的image文件
[root@localhost ~]#dd if=/dev/sda1 of=/root/image
#3将备份文件恢复到指定盘
[root@localhost ~]#dd if=/root/image of=/dev/sda1
#4备份/dev/sda1分区全盘数据,并利用gzip工具进行压缩,保存到指定路径
[root@localhost ~]#dd if=/dev/sda1 | gzip > /root/image.gz
#5将压缩的备份文件恢复到指定盘
[root@localhost ~]#gzip -dc /root/image.gz | dd of=/dev/sda1
#6备份与恢复MBR
//备份磁盘开始的512个字节大小的MBR信息到指定文件
[root@localhost ~]#dd if=/dev/sda of=/root/image count=1 bs=512
//恢复MBR
[root@localhost ~]#dd if=/root/image of=/dev/sda
#7备份软盘
[root@localhost ~]#dd if=/dev/fd0 of=disk.img count=1 bs=1440k
#8拷贝内存内容到硬盘
[root@localhost ~]#dd if=/dev/mem of=/root/mem.bin bs=1024 (指定块大小为1k) 
#9拷贝光盘内容到指定文件夹,并保存为cd.iso文件
[root@localhost~]#dd if=/dev/cdrom(hdc) of=/root/cd.iso
#10增加swap分区文件大小
//创建一个大小为256M的文件
[root@localhost ~]# dd if=/dev/zeroof=/root/swapfile bs=1M count=256
//把这个文件变成swap文件
[root@localhost ~]# mkswap swapfile
//启用这个swap文件
[root@localhost ~]# swapon swapfile
#11销毁磁盘数据(注意数据安全)
dd if=/dev/urandom of=/dev/sda10    //利用随机的数据填充硬盘
#12测试硬盘的读写速度 
[root@localhost ~]# time dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file 
[root@localhost ~]# time dd if=/root/1Gb.file bs=64k | dd of=/dev/null 
#13确定硬盘的最佳块大小
[root@localhost ~]# time  dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file 
[root@localhost ~]#time  dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file 
[root@localhost ~]#time  dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file 
[root@localhost ~]# time  dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file
#14修复硬盘
[root@localhost~]#dd if=/dev/sda of=/dev/sda
或者
[root@localhost ~]#dd if=/dev/sda1 of=/dev/sda1
#15利用netcat远程备份 
//在源主机上执行此命令备份/dev/sda
[root@localhost ~]#dd if=/dev/sda bs=16065b | netcat < targethost-IP > 1234
//在目的主机上执行此命令来接收数据并写入/dev/sda
[root@localhost ~]#netcat -l -p 1234 | dd of=/dev/hdc bs=16065b
 
 
 
 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: