Linux中dd命令使用说明

版权声明:如果对您有帮助,求点赞!本文为博主原创作品,转载请声明出处! https://blog.csdn.net/u011086209/article/details/87272684

[root@study ~]# dd if="input_file" of="output_file" bs="block_size" count="number"
选项与参数:
if :就是 input file 啰~也可以是装置喔!
of :就是 output file 喔~也可以是装置;
bs :规划的一个 block 的大小,若未指定则预设是 512 bytes(一个 sector 的大小)
count:多少个 bs 的意思。
范例一:将 /etc/passwd 备份到 /tmp/passwd.back 当中
[root@study ~]# dd if=/etc/passwd of=/tmp/passwd.back
4+1 records in
4+1 records out
2092 bytes (2.1 kB) copied, 0.000111657 s, 18.7 MB/s
[root@study ~]# ll /etc/passwd /tmp/passwd.back
-rw-r--r--. 1 root root 2092 Jun 17 00:20 /etc/passwd
-rw-r--r--. 1 root root 2092 Jul
2 23:27 /tmp/passwd.back
# 仔细的看一下,我的 /etc/passwd 文件大小为 2092 bytes,因为我没有设定 bs ,
# 所以默认是 512 bytes 为一个单位,因此,上面那个 4+1 表示有 4 个完整的 512 bytes,
# 以及未满 512 bytes 的另一个 block 的意思啦!事实上,感觉好像是 cp 这个指令啦~
范例二:将刚刚刻录的光驱的内容,再次的备份下来成为映像挡
[root@study ~]# dd if=/dev/sr0 of=/tmp/system.iso
177612+0 records in
177612+0 records out
90937344 bytes (91 MB) copied, 22.111 s, 4.1 MB/s
# 要将数据抓下来用这个方法,如果是要将映像文件写入 USB 磁盘,就会变如下一个范例啰!
范例三:假设你的 USB 是 /dev/sda 好了,请将刚刚范例二的 image 刻录到 USB 磁盘中
[root@study ~]# lsblk /dev/sda
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda
8:0
0
2G
0 disk
# 确实是 disk 而且有 2GB 喔!
[root@study ~]# dd if=/tmp/system.iso of=/dev/sda
[root@study ~]# mount /dev/sda /mnt
[root@study ~]# ll /mnt

dr-xr-xr-x. 131 root root 34816 Jun 26 22:14 etc
dr-xr-xr-x.
5 root root
2048 Jun 17 00:20 homedr-xr-xr-x.
8 root root
4096 Jul
2 18:48 root
# 如果你不想要使用 DVD 来作为开机媒体,那可以将映像档使用这个 dd 写入 USB 磁盘,
# 该磁盘就会变成跟可开机光盘一样的功能!可以让你用 USB 来安装 Linux 喔!速度快很多!
范例四:将你的 /boot 整个文件系统透过 dd 备份下来
[root@study ~]# df -h /boot
Filesystem Size
/dev/vda2 1014M
Used Avail Use% Mounted on
149M
866M
# 请注意!备份的容量会到 1G 喔!
15% /boot
[root@study ~]# dd if=/dev/vda2 of=/tmp/vda2.img
[root@study ~]# ll -h /tmp/vda2.img

-rw-r--r--. 1 root root 1.0G Jul
2 23:39 /tmp/vda2.img
# 等于是将整个 /dev/vda2 通通捉下来的意思~所以,文件容量会跟整颗磁盘的最大量一样大!

猜你喜欢

转载自blog.csdn.net/u011086209/article/details/87272684