一、DD命令介绍
Linux dd 命令用于读取、转换并输出数据。dd 可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。
参数说明:
if=文件名:输入文件名,默认为标准输入。即指定源文件。
of=文件名:输出文件名,默认为标准输出。即指定目的文件。
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=<关键字>
conv | fdatasync | 系统决定何时写入data |
fsync | 系统决定何时写入meta+data | |
flag(分为 iflag(读模式) 和 oflag(写模式)) | dsync | 每接收到一次 IO, 就写一次data |
sync(跳过hdd缓存) | 每接收到一次 IO, 就写一次meta+data | |
direct(跳过内存缓存) | 绕过系统高速缓存, 系统决定落盘 |
1.1 /dev/zero
/dev/zero,是一个输入设备,可用它来初始化文件。该设备无穷尽地提供0,可以使用任何需要的数目,因此可以用来测试纯写速度。
1.2 /dev/null
/dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。可以用来测试纯读速度。
二、磁盘读写测试
2.1 测试磁盘写能力
[root@10-60-24-95 ~]# time dd if=/dev/zero of=/data/testw.dbf bs=4k count=1000000 1000000+0 records in 1000000+0 records out 4096000000 bytes (4.1 GB) copied, 16.6643 s, 246 MB/s real 0m16.691s user 0m0.085s sys 0m1.891s
2.2 测试磁盘的读能力
[root@10-60-24-95 ~]# time dd if=/dev/vdb of=/dev/null bs=4k count=100000 100000+0 records in 100000+0 records out 409600000 bytes (410 MB) copied, 2.53905 s, 161 MB/s real 0m2.540s user 0m0.008s sys 0m0.159s
2.3 测试磁盘同时读写能力
[root@10-60-24-95 ~]# time dd if=/dev/vdb of=/testrw.dbf bs=4k count=100000 100000+0 records in 100000+0 records out 409600000 bytes (410 MB) copied, 4.69953 s, 87.2 MB/s real 0m4.767s user 0m0.011s sys 0m0.397s
2.4 测试纯写入性能
[root@10-60-24-95 ~]# cd /data/ [root@10-60-24-95 data]# dd if=/dev/zero of=testw bs=8k count=10000 oflag=direct 10000+0 records in 10000+0 records out 81920000 bytes (82 MB) copied, 3.07226 s, 26.7 MB/s
2.5 测试纯读取性能
# 创造一个2G的可读文件 [root@10-60-24-95 data]# dd if=/dev/zero of=testr bs=10M count=200 200+0 records in 200+0 records out 2097152000 bytes (2.1 GB) copied, 2.88613 s, 727 MB/s # 测试纯读速度 [root@10-60-24-95 data]# dd if=testr of=/dev/null bs=8k count=10000 iflag=direct 10000+0 records in 10000+0 records out 81920000 bytes (82 MB) copied, 3.07104 s, 26.7 MB/s
三、磁盘备份与恢复
3.1 备份整块磁盘
注:备份系统vda1到vdb磁盘。
[root@10-60-24-95 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vdb 253:16 0 20G 0 disk /data vda 253:0 0 20G 0 disk └─vda1 253:1 0 20G 0 part /
[root@10-60-24-95 ~]# dd if=/dev/vda of=/data/vda-backup.disk 41943040+0 records in 41943040+0 records out 21474836480 bytes (21 GB) copied, 157.193 s, 137 MB/s [root@10-60-24-95 ~]# ll -h /data/ total 20G -rw-r--r-- 1 root root 20G Jul 13 15:09 vda-backup.disk
3.2 挂载查看dd备份的文件
(1)新建挂载点
[root@10-60-63-128 ~]# mkdir /mnt/backup
(2)计算偏移量
[root@10-60-63-128 ~]# fdisk -l -u -C 1 /data/vda-backup.disk Disk /data/vda-backup.disk: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000acb44 Device Boot Start End Blocks Id System /data/vda-backup.disk1 * 2048 41943039 20970496 83 Linux
(3)挂载copy数据
# 数据copy到中转机 [root@10-60-24-95 ~]# scp /data/vda-backup.disk root@10.60.63.128 # 首次挂载报错坏块 [root@10-60-63-128 ~]# mount -o loop,offset=1048576 /data/vda-backup.disk /mnt/backup mount: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so. # 修复磁盘 [root@10-60-63-128 ~]# yum install xfsprogs-devel -y [root@10-60-63-128 ~]# xfs_repair /data/vda-backup.disk [root@10-60-63-128 ~]# mount -o loop,offset=1048576 /data/vda-backup.disk /mnt/backup mount: mount /dev/loop0 on /mnt/backup failed: Structure needs cleaning [root@10-60-63-128 ~]# xfs_repair -L /dev/loop0 Phase 1 - find and verify superblock... superblock read failed, offset 0, size 524288, ag 0, rval 0 fatal error -- Success # 再次执行挂载 [root@10-60-24-95 ~]# mount -o loop,offset=1048576 /data/vda-backup.disk /mnt/backup [root@10-60-63-128 ~]# ll /mnt/backup/ total 440016 lrwxrwxrwx. 1 root root 7 May 25 2019 bin -> usr/bin dr-xr-xr-x. 5 root root 4096 Jul 13 14:32 boot drwxr-xr-x. 2 root root 6 May 25 2019 data drwxr-xr-x. 2 root root 6 May 25 2019 dev drwxr-xr-x. 83 root root 8192 Jul 13 14:32 etc drwxr-xr-x. 2 root root 6 Apr 11 2018 home lrwxrwxrwx. 1 root root 7 May 25 2019 lib -> usr/lib lrwxrwxrwx. 1 root root 9 May 25 2019 lib64 -> usr/lib64 drwxr-xr-x. 2 root root 6 Apr 11 2018 media drwxr-xr-x. 2 root root 6 Apr 11 2018 mnt drwxr-xr-x. 2 root root 6 May 29 2019 opt drwxr-xr-x. 2 root root 6 May 25 2019 proc dr-xr-x---. 7 root root 201 Jul 13 14:49 root drwxr-xr-x. 2 root root 6 May 25 2019 run lrwxrwxrwx. 1 root root 8 May 25 2019 sbin -> usr/sbin drwxr-xr-x. 2 root root 6 Apr 11 2018 srv drwxr-xr-x. 2 root root 6 May 25 2019 sys -rw-r--r-- 1 root root 40960000 Jul 13 14:41 test.dbf -rw-r--r-- 1 root root 409600000 Jul 13 14:47 testrw.dbf drwxrwxrwt. 8 root root 188 Jul 13 15:06 tmp drwxr-xr-x. 13 root root 155 May 25 2019 usr drwxr-xr-x. 20 root root 282 May 25 2019 var
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/128113.html
摘要:分区分区是当内存空间不够使用时,将磁盘中的空间作为内存来使用的分区称为交换分区。 swap分区 swap分区是当内存空间不够使用时,将磁盘中的空间作为内存来使用的分区称为swap交换分区。 # free: 查看物理内存和交换空间的使用情况; -m: 以兆为单位显示; swap分区管理 1、fdisk命令创建磁盘分区时,调整分区类型为82; 2、创建交换分区...
摘要:数据可以持久化,而且支持的数据类型很丰富。和我应该用哪一个如果你非常关心你的数据但仍然可以承受数分钟以内的数据丢失,那么你可以只使用持久。支持同时开启和系统重启后,会优先使用来恢复数据,这样丢失的数据会最少。 Redis是一种高级key-value数据库。数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(differenc...
摘要:压缩比压缩后压缩前占用磁盘空间大小程序压缩程序压缩程序压缩可以解开压缩的文件只能针对一个文件进行压缩文件压缩单个文件,原本的文件被压缩为的档名,源文件不存在文件显示压缩比文件查看解压缩之后的源文件文件解压缩文件,文件不存在关键字文件在 压缩比:压缩后/压缩前占用磁盘空间大小 【 .Z 】compress程序压缩 【 .zip 】zip程序压缩 【 .gz 】gzip程序压缩 可以解...
摘要:博文参考命令预览基础命令文本搜索权限管理文件搜索帮助命令用户管理压缩解压网络配置关机重启常用命令系统信息显示机器的处理器架构显示正在使用的内核版本显示的信息校验内存使用显示哪些被使用显示内核的版本显示网络适配器及统计显示已加载的文件系统 博文参考 http://www.178linux.com/78199 http://www.cnblogs.com/suliuer/p/5448747...
摘要:博文参考命令预览基础命令文本搜索权限管理文件搜索帮助命令用户管理压缩解压网络配置关机重启常用命令系统信息显示机器的处理器架构显示正在使用的内核版本显示的信息校验内存使用显示哪些被使用显示内核的版本显示网络适配器及统计显示已加载的文件系统 博文参考 http://www.178linux.com/78199 http://www.cnblogs.com/suliuer/p/5448747...
阅读 1279·2024-02-01 10:43
阅读 366·2024-01-31 14:58
阅读 432·2024-01-31 14:54
阅读 813·2024-01-29 17:11
阅读 2198·2024-01-25 14:55
阅读 1474·2023-06-02 13:36
阅读 2074·2023-05-23 10:26
阅读 468·2023-05-23 10:25