首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁用Linux内核4.x中的挂起

如何禁用Linux内核4.x中的挂起
EN

Unix & Linux用户
提问于 2019-04-17 10:16:05
回答 1查看 803关注 0票数 4

我正在使用全磁盘加密,通过LinuxPBA和sedutil (https://github.com/Drive-Trust-Alliance/sedutil)。简而言之,在启动时,一个独立于BIOS的代码请求磁盘密码.如果正确,则磁盘被解锁,系统重新启动而不关闭磁盘,我可以看到grub,内核继续运行,发行版启动。

在这种情况下,暂停是危险的,它是已知的限制1。当这种情况发生时,数据就会被破坏。坏消息是我经常遇到随机的暂停事件。

我不需要暂停,但我使用冬眠。是否有一种方法可以禁用暂停(不影响冬眠)?也许重新编译内核,或者通过引导选项.

1挂起操作触发磁盘断电;这意味着,在恢复时,FS是加密的。Linux试图访问它以前映射过的扇区,这些扇区现在都是加密的,破坏了数据。它很快就会检测到问题,在只读环境中重新安装FS,并避免进一步的损坏。下次重新启动时,fsck.ext4通常会修复损坏。但是,由于我正在经历随机的暂停,而不是由我触发,很难调试/报告,我想完全禁用挂起,因为我找出了根本原因。

2类似的问题:像这样的建议https://wiki.debian.org/Suspend#Disable_挂起_和_冬眠是不够的。此外,似乎不可能告诉内核/ACPI“请不要在挂起时转动磁盘”(在暂停/睡眠/S3中可以不关闭SSD吗?)。

EN

回答 1

Unix & Linux用户

发布于 2019-06-03 20:01:08

CONFIG_SUSPEND=nCONFIG_HIBERNATION=y重新编译内核应该可以防止挂起,但仍然允许hibernate。挂起只在userspace的请求AFAIK时发生,所以您也应该能够以这种方式禁用它。

另外,我不确定驱动器是如何准确工作的,但我也担心重置可能会导致它们丢失密钥。如果是这样的话,请注意Linux存储堆栈会重置无法响应的设备--例如,如果它们忙着重试坏块很长一段时间。/sys/block/sd?/device/timeout是设置超时的地方;默认为30。

最后,您可以使用例如,hdparm -Y使驱动器进入睡眠模式。在默认情况下,可能什么都不做,但可能会将驱动器配置为将自己设置为待机(而不是睡眠)模式;如果是,希望不会丢失密钥。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/512960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档