为什么当我的 Linux 帐户超时并锁定时,我的 USB 硬盘会暂停运行?

为什么当我的 Linux 帐户超时并锁定时,我的 USB 硬盘会暂停运行?

为什么当我的 Linux 帐户超时并锁定时,我的 USB 硬盘会暂停运行?

每当我的 Linux 桌面屏幕锁定时,它似乎都会暂停正在执行的操作,并在我解锁屏幕后继续。

这是我的具体情况:

昨天,我从 VMware ESXi 主机上更换了一个 1TB 驱动器,并将该驱动器放在我的外部 USB 驱动器外壳中以进行完全 dd 擦除。(使用的命令dd if=/dev/urandom | pv | dd of=/dev/sdb bs=1M:)

上述命令会用随机数据擦除驱动器,而“pv”会在屏幕上直观地显示进度。我使用过很多次,但通常都是用内部存储。如果没有“pv”提供的进度,dd 命令对于事情的进展就显得如此神秘。如果您以前没有使用过“pv”,那么您可以安装它,它不是我曾经使用过的任何 Linux 发行版上的标准命令。(例如sudo apt install -y pv

我开始擦除数据然后就走开了。后来我回到房间检查进度,发现我的屏幕被锁定了,正如预期的那样,机箱上的活动灯一直亮着,我以为这个过程已经正常完成了。电脑被唤醒了,它自己并没有睡着,只是锁屏出现了。我输入了密码并解锁了屏幕,突然 USB 机箱上的活动灯又开始闪烁了。我以为它已经完成了 dd 擦除,只是在睡觉,然后我把它唤醒了。然而事实并非如此,终端窗口显示它继续了这个过程。这种情况一遍又一遍地重复,我不能离开电脑,否则每次出现锁屏时操作都会暂停。为什么?

我已经尝试使用以下命令将电源级别从“自动”更改为“开”,但结果相同,每次出现帐户锁定屏幕时,USB 活动都会停止,然后在解锁后恢复。

这是我用来改变功率级别的命令:

echo on | sudo tee /sys/bus/usb/devices/*/power/level >/dev/null

我也让机器整夜开着,8 小时后进度是一样的,大约与锁屏出现前 10 分钟左右可以完成的擦除量完全相同,当我唤醒系统时,它就会恢复 dd 擦除。

我甚至没想到 dd 擦除可以像这样自行暂停。我完全可以理解驱动器在没有任何事情发生的情况下决定休眠,但我认为主动擦除会让驱动器保持唤醒状态。

有人能解释为什么,和/或有办法防止这种情况发生吗?

我将尝试将驱动器内部安装到工作台系统中,看看是否可以让它完成,而不需要我一直照看它,确保屏幕不会因不活动而锁定。

uname -a
(Linux kalidesk 6.0.0-kali3-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.0.7-1kali1 (2022-11-07) x86_64 GNU/Linux)

相关内容