访问手机版  

Linux常用命令|Linux培训学习|考试认证|工资待遇与招聘,认准超级网工!

招聘|合作 登陆|注册

网络工程师培训

当前位置:网络工程师 > 技术课程 > linux > 热点关注 > linux常用命令

Linux dd命令详解:数据备份,并在备份过程中进行格式转换

时间:2019-07-14

linux命令windows命令_linux解压命令_linux命令

dd 命令主要用来进行数据备份,并且可以在备份的过程中进行格式转换。其实 dd 命令可以把源数据复制成目标数据,而且不管源数据是文件、分区、磁盘还是光盘,都可以进行数据备份。

dd 命令的基本格式如下:

[root@localhost ~]# dd if="输入文件" of="输出文件" bs="数据块" count="数量"

参数:

if:定义输入数据的文件,也可以是输入设备;

of:定义输出数据的文件,也可以是输出设备;

bs:指定数据块的大小,也就是定义一次性读取或写入多少字节。模式数据块大小是 512 字节;

count:指定 bs 的数量;

conv=标志:依据标志转换文件。标志有以下这些:

【例 1】备份文件

[root@localhost ~]# cat /etc/ntp.conf |awk '{if($0 。[root@localhost ~]#vim/etc/httpd/conf/httpd.conf。[root@test~]#vi/etc/httpd/conf/httpd.conf。

记录了67+1 的读入

#数据占了写满的67个数据块,以及1个没有写满的数据块

记录了67+1 的写出

#默认数据块大小是512字节

34439字节(34 kB)已复制,0.0524897 秒,656 kB/秒

linux解压命令_linux命令windows命令_linux命令

#如果要备份文件,那么dd命令和cp命令非常类似

[root@localhost ~]# ll -h /tmp/httpd.bak

-rw-r--r--.1 root root 34K 6月 5 18:04 /tmp/httpd.bak

#查看一下生成的备份文件的大小

【例 2】备份分区为一个备份文件

[root@localhost ~]# df -h

文件系统 容量 已用 可用 已用%% 挂载点

/dev/sda3 20G 2.0G 17G 11% /

tmpfs 306M 0 306M 0% /dev/shm

/dev/sda1 194M 27M 157M 15% /boot

/dev/sr0 3.5G 3.5G 0 100% /mnt/cdrom

#查看一下分区容量linux命令,我们备份/boot分区

dd if=/dev/sda1 of=/tmp/boot.iso。root@dd-wrt:~# dd if=/dev/mtd1 of=linux.bin。dd if=/tmp/k3_v10.bin of=/dev/mtdblock6 && reboot。

#备份完成

[root@localhost ~]# ll -h /tmp/boot.bak

-rw-r--r--.1 root root 200M 6月 5 18:14 /tmp/boot.bak

linux命令windows命令_linux命令_linux解压命令

#查看生成的备份文件

#如果需要恢复,则执行以下命令

[root@localhost ~]# dd if=/tmp/boot.bak of=/dev/sda1

如果想要把分区直接备份成另一个分区,就需要生成一个新的分区,这个分区的大小不能比源分区小,只能和源分区大小一致或比它大。命令如下:

[root@localhost ~]# dd if=/dev/sda1 of=/dev/sdb1

#如果需要恢复,则只需把输入项和输出项反过来即可,命令如下

[root@localhost ~]# dd if=/dev/sdb1 of=/dev/sda1

【例 3】整盘备份

[root@localhost ~]# dd if=/dev/sda of=/dev/sdb

#把磁盘a备份到磁盘b

[root@localhost ~]# dd if=/dev/sda of=/tmp/disk.bak