Linux 中的 Suspend 和 Hibernate 有什么区别。为什么休眠按钮不见了?
关闭 Linux 时,可以选择 Suspend 或 Hibernate,而不是完全关闭计算机。在不活动期间配置计算机的行为(以节省电量)、笔记本电脑电池电量低时以及在关闭笔记本电脑的盖子后配置行为时,也会提供这些模式。

暂停 表示停止所有应用程序并将计算机置于低功耗模式。当您打开计算机时,它会返回到挂起之前的状态。与 Hibernate 的不同之处在于计算机启动速度更快,尽管它会继续消耗能量。也就是说,数据保留在 RAM 中,但计算机进入低功耗模式,类似于关机。在这种状态下,电池消耗非常缓慢。打开后,计算机会很快唤醒。但如果电池在开机前完全放电,那么 RAM 中的当前数据将会丢失)
休眠是指将计算机和RAM的当前状态写入硬盘并关闭计算机。当您打开计算机时,它会恢复到休眠之前的状态。与Suspend不同的是电脑完全停止耗电,不会因为电池没电而丢失数据。但是在 Hibernate 模式下,计算机比退出 Suspend 状态时需要更长的时间才能打开。也就是说,休眠模式意味着将所有数据从 RAM 保存到磁盘并关闭计算机。下次打开时,磁盘中的数据将加载到 RAM 中,计算机将能够从睡眠前停止的同一点继续运行
也就是说,如果计算机经常处于空闲状态并且您需要非常快速地打开它,则为此选择Suspend 模式。如果您希望计算机长时间关闭,请选择休眠。
为什么 Linux 中没有 Hibernate 模式?
在下面的屏幕截图中,您可以看到当您关闭计算机时,没有选择休眠的选项。这是由于指定系统上没有Swap分区(Swap文件),或者大小不够所致。

为了显示休眠选项,您需要创建一个交换文件或增加其大小,使其等于或大于计算机的 RAM。
创建的交换分区不仅可以用于在计算机运行时从 RAM 中存储一些信息,还可以在休眠模式下使用。添加此模式时,关机菜单中会出现一个附加选项——休眠。如果选择它,那么 RAM 的当前状态将被写入交换分区。下次打开计算机时,它会从交换文件中读取信息并恢复计算机的状态。即,将重新打开那些已打开的程序并保存其结果。
在现代 Linux 中,当向系统添加分区或交换文件时,应自动启用休眠(睡眠)。
有关如何在各种发行版中创建交换文件的信息,请参阅以下文章:
- 如何在 Linux Mint 和 Ubuntu 中增加交换分区。如何在 Linux 中创建交换文件
- 如何在 Kali Linux 中创建或扩大交换文件
- Arch Linux (BlackArch) 中的交换文件和交换分区:选择什么以及如何添加交换
- 动态交换文件仅在需要时创建
- 如何在 Linux 中检查交换文件使用情况