这个问题类似于关于在双启动 PC 中从休眠状态恢复的问题,但我不假设这两个系统共享交换。尽管这些问题的答案可能非常相似,但我认为我的问题有点不同。
如下来自这个答案对于我的另一个问题,并根据这个文件在内核.org,在系统休眠和随后恢复之间,不应修改任何已安装的分区。
在我看来,这对双启动配置来说是一个相当严格的要求:如果我想让两个系统都可写一个分区(例如, for /home
),我可能应该禁用休眠功能......
有人找到解决方法了吗?例如,在我看来,允许机器在休眠后仅启动进入休眠系统将是一个完美的解决方案。
答案1
如果您休眠双引导计算机,卸载所有共享分区。如果无法卸载任何共享分区,请确保休眠失败。
您可以稍微放松一下,在以下条件下将其中一个操作系统设置为共享分区的“所有者”:
- 只有所有者才能以读写方式挂载该分区。其他操作系统仅将其挂载为只读。
- 当所有者休眠时,以只读方式重新挂载该分区。
如果文件系统当前挂载在休眠系统中,请勿以读写方式挂载该文件系统,即使休眠系统已将其挂载为只读!这将导致休眠系统中的大量数据损坏,因为索引节点缓存将与实际数据不同步。
注意:即使安装的是只读分区,也要小心安装休眠系统使用的分区。例如,对未完全卸载的 ext4 文件系统进行只读挂载(如果该文件系统正在被休眠系统使用,则属于这种情况)会重播日志并写入磁盘,从而破坏休眠系统。调用mount -o ro,noload
以挂载在休眠系统中以读写方式挂载的 ext4 文件系统。
如果您不想在其中一个操作系统处于休眠状态时启动其他操作系统,这是可能的:安排您的休眠脚本来修改引导加载程序设置。具体如何执行此操作取决于您运行的操作系统和引导加载程序配置。对于Grub来说,重写该grub.cfg
文件就足够了:当你休眠系统S时,生成一个grub.cfg
只有一个菜单项的文件来恢复系统S;当S从休眠中恢复时,恢复grub.cfg
有多种选择。