我的 Linux 安装在便携式 SSD 上,因此我可以轻松切换设备(家里的笔记本电脑,办公室的台式机),而无需考虑任何同步问题。这称为 Linux To Go。
已经很不错了,但还能更好吗?
要在工作流程中切换设备,我必须(优雅地)退出所有应用程序,完全关闭操作系统,然后分离并连接 SSD,启动操作系统,等待其通电,最后重新打开所有需要恢复的应用程序我的工作。
现在我想找到一种方法来实现“暂停和恢复”,而不是这样的“停止和重新启动”。我希望操作系统内存能够在不同的设备上持续存在。
似乎休眠是一个潜在的解决方案。也许我可以通过休眠操作系统将内存保存在交换分区中,然后分离并连接 SSD,启动操作系统,很快,内存就会恢复,这样我就可以继续我的工作流程了。
但经过一番谷歌搜索后,我找不到任何关于跨多个设备休眠的教程/博客。
如何休眠 Linux To Go 到磁盘并在不同的设备上恢复它?或者,这根本不可能?
我认为跨不同设备的休眠可能无法工作,除非设备在硬件配置(CPU、GPU、RAM、存储、外围设备)方面完全相同,即使在这种情况下也远未确定。
曾经有一个名为 CryoPID 的项目,它允许保存正在运行的应用程序的映像,然后再将其恢复,但它早已失效且无人维护,并且不适用于新的 Linux 内核。请查看此主题以获取更多可能的最新解决方案:https ://stackoverflow.com/questions/2134771/how-to-hibernate-a-process-in-linux-by-storing-its-memory-to-disk-和-恢复素
老实说,除了使用 VirtualBox/虚拟化来保留正在运行的应用程序的状态外,我在上述主题中看不到任何现代工作解决方案。这不是很愉快的处理,但它工作得很好。
这里有一个更好的主意:如果您有一个快速的 Internet 连接,您可能会考虑拥有一台始终在线的远程 PC,您可以在其中拥有您的工作流程并使用任何可能的方式访问它,例如 RDP/VNC/SSH -x/等。