我有 3 个物理驱动器 -/
安装有 SSD,第一个 HDD 用作/var
和/home
,第二个 HDD - 用于备份的恢复存储。大部分时间应该保留带有备份的硬盘处于待机和未安装状态umount
由带有 和的cron 和 bash 脚本引起hdparm -y
。
问题是外部 USB 驱动器安装/卸载(使用 GUI 或终端)会导致休眠驱动器从待机状态恢复。
更深入的调查表明mount
实用umount
程序执行dumpe2fs -h /dev/sdXn
命令对于每个驱动器的每个分区(包括未安装的分区)安装后,这会导致直接休眠的驱动器被唤醒。
例如,如果/dev/sdd
正在安装/卸载外部 USB 驱动器/棒,在我的情况下,这会导致随后执行命令(来自真实日志的片段以及一些解释):
dumpe2fs -h /dev/sda1 #this is / (root) partition at SSD
[...]
dumpe2fs -h /dev/sdc4 #this is /var partition at HDD #1
[...]
dumpe2fs -h /dev/sdc3 #this is /home partition at HDD #1
[...]
dumpe2fs -h /dev/sdb1 #this is recovery storage partition at HDD #2
[...]
Ubuntu 16.04 和更早的版本(我在 2006 年从 Red Hat 迁移到 Debian 和 Ubuntu)没有这种奇怪的行为。由此,我们可以对Ubuntu 18.04的一个bug引起的行为得出合理的结论。有什么办法可以解决这个问题吗?
笔记:Unix & Linux 社区中有相关问题(但不是重复的):为什么在没有用户交互的情况下调用 dumpe2fs?。
更新。我已经找到了该问题的解决方案 - 它将在今天晚些时候发布。问题已经解决了。我最深切地感谢您的帮助@神秘德里克- 非常感谢你,朋友!
答案1
乌迪克斯德dumpe2fs -h /dev/sd??
当服务启动以及挂载/卸载任何磁盘时,为每个 ext2、ext3 和 ext4 分区调用命令。任何至少包含一个 ext* 分区的 HDD 都会被唤醒乌迪克斯德=> dumpe2fs
。
更多详细信息可以在对此的评论中找到尤迪卡漏洞:https://github.com/storagged-project/udisks/issues/611。该错误已修复在优盘 2.8.4,因此当安装或卸载不相关的分区时,它不再唤醒任何硬盘。
这里有一个类似的问题和答案:https://superuser.com/questions/1371955/why-one-of-two-hdds-wakes-from-sleep-during-the-first-linux-graphical-login。