我使用多种方式移动大量数据(命令、后台程序、nautilus),有时这些程序会通知我进程结束,但我看到设备的 LED 闪烁,我需要知道设备是否仍在使用中才能将其移除。是否有 shell 命令可以知道设备是否正在传输数据并显示此信息?
答案1
你应该卸载设备后再移除(通过命令或 GUI 无关umount
)。如果仍有数据正在传输 - 卸载将暂停,直到所有传输完成(如果无法在某个时间范围内卸载,GUI 可能会给出一些错误)。
您还可以使用:
sync
(可能几次)刷新未写入的数据(然后卸载);df
检查您要移除的设备是否已被卸载。
PS:umount
如果某个程序仍然打开了此设备中的某个文件/文件夹(通常是某个 shell,但您可以尝试用 找到它lsof
),则会显示“设备忙”。
答案2
iostat
是跟踪磁盘流量的最简单方法。只需运行iostat
<间隔(秒)> 它会显示每个设备上的活动。它的第一个输出是自启动以来的活动,因此至少要等待第二个输出。
[admin@centos6 ~]$ iostat 30
Linux 2.6.32-358.0.1.el6.x86_64 (centos6) 20/09/14 _x86_64_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
6.92 0.01 0.41 0.42 0.00 92.24
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 2.64 48.41 247.81 5396088 27622750
dm-0 1.67 42.88 1.44 4779498 161072
dm-1 0.05 0.05 0.35 5840 39104
dm-2 29.65 3.31 236.22 368442 26330928
dm-3 0.16 0.04 1.28 4610 142128
dm-4 1.08 0.43 8.51 48194 949032
avg-cpu: %user %nice %system %iowait %steal %idle
94.60 0.00 3.96 1.44 0.00 0.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 14.12 122.78 2437.28 3504 69560
dm-0 241.00 118.01 1901.61 3368 54272
dm-1 59.88 0.00 479.05 0 13672
dm-2 0.14 1.12 0.00 32 0
dm-3 0.18 0.00 1.40 0 40
dm-4 7.32 3.08 55.22 88 1576
^C
[admin@centos6 ~]$