找回密码
 注册
关于网站域名变更的通知
查看: 299|回复: 1
打印 上一主题 下一主题

怎样查看dd的拷贝进度呢?看下文

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-22 09:51 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

  C! M1 i- T" x0 x0 G如何查看dd的拷贝进度
0 `% `2 g0 b" c. T2 d
6 u* z$ E, o* ~  Wlinux中的DD命令可以很方便的作二进制拷贝,比如可以做硬盘克隆。7 W7 ]# O) l0 w7 Q. f
一般使用方式如下:9 o$ d/ m0 Q$ G- x# w" U
# k* i! ^2 n) {- e
dd if=/src/device/name of=/dst/device/name5 w4 A# [& r; u, j7 W
/ G6 o, L9 B% s3 Z' s: g
... 然后就等它完成,进程退出/ p7 [8 `0 s4 @
  o- h/ K1 r" t* L
但是当我们需要copy的东西很巨大的时候,这个过程是很痛苦的( w8 V: `% y8 S" g) F# P

6 h% @; D: |; L" Y/ m很多人会查看iostat, 来估算大概需要多少时间完成, 这是很不直观的, 也不可靠% u) S& G+ e4 M" `+ M
% {1 Z/ R3 s+ ]9 W: W! q0 k
如果我们dd --help9 @6 @$ q- i; {
会看到其实是有方法可以查看copy进度的, 帮助文件中的example如下:: L+ ?5 Y* V" s) [3 n$ }
' L1 P/ B9 G# g7 |9 k$ ?: F& I
$ dd if=/dev/zero of=/dev/null& pid=$!    后台运行dd测试,保存进程号到pid中2 Z( w( b0 F- \9 V) ]

+ }) G1 t$ }" I2 _( H$ _实际我们使用的时候可以新开一个终端,
; V$ e3 ~4 g6 T& ~9 w2 t5 K" m+ v0 X
% I4 L% \" _( {& _. Lps -ef | grep dd
+ s" V. H1 I2 {; g" @, p; x  Z$ E) y  j" u9 I
找到dd的PID, 然后发送USR1(用户自定义信号),查看copy进度
& j1 N; j' P/ C2 x- }4 g; d0 E7 l: P1 @1 I, u- M, U$ i
有些场合我们可能使用当前这个终端, 那么我们可以把当前运行的dd转到后台:ctrl+z, 这时候dd进程被stop了,使用bg %1让其在后台继续运行,并且编为1号,后面如果要它到前台运行,只要键入fg %1就可以了.+ H; @+ ~  `* N' N6 K1 G: `
3 [8 g0 ]  p: t* p
然后我们输入kill -USR1 PID, 这里的PID是前面用ps查看到的进程号
! x- |6 n# V( N% D5 e1 G这时候你就能看到当前的copy信息了,以及平均copy速度7 m; H; u3 ~3 y  d, p; Z% u) \7 ]

' ]) R: T$ Y& B& c0 ?
2 }* A- W7 a0 C$ d% g' s! W可以结合watch -n 1 kill -USR1 PID实时刷新copy进度。2 v8 S6 M( ]9 p" a+ q
& \! R0 m/ r  C0 Q7 T5 F

该用户从未签到

2#
发表于 2020-1-22 16:36 | 只看该作者
查看dd的拷贝进度呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-25 17:48 , Processed in 0.156250 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表