自动从睡眠或休眠模式唤醒您的 Linux 系统

今天,我们将讨论一个有用的主题,描述如何使用以下命令自动将 Linux 系统从睡眠或休眠模式唤醒 ‘Rtcwake’ 效用。 rtcwake 用于进入 Linux 系统睡眠或休眠状态,并在特定时间自动唤醒。 无需关闭并再次打开系统电源。 只需将您的系统置于睡眠或休眠模式,并在指定时间后返回并开始做您的东西。

推荐下载免费电子书:“Elasticsearch 教程”

提醒一句:

请注意,RTC 代表实时时钟。 它实际上是您的硬件时钟,可以在您的 BIOS 中设置。 如果您有 CMOS 电池或 BIOS 问题,此命令将不起作用。 您需要在 BIOS 中设置正确的时间才能正确使用 rtcwake。 此外,您在使用此实用程序时需要小心,因为它需要 root 权限才能工作。 对该实用程序的任何滥用都可能导致内核和/或系统崩溃。

使用“rtcwake”实用程序从睡眠或休眠模式自动唤醒您的 Linux 系统

Rtcwake 默认预装在大多数 Linux 操作系统中,所以不必费心安装它。 让我给你看一些实际的例子。 我在我的 Arch Linux 桌面上测试了以下命令,它们运行良好,符合我的预期。

rtcwake 命令的典型语法是:

$ rtcwake [options] [-d device] [-m standby_mode] {-s seconds|-t time_t}

在特定时间后唤醒系统

首先,确保在运行此程序之前已关闭所有正在运行的程序或保存所有打开的文档。 rtcwake 命令需要 工作的权限。

现在让我们暂停系统并在 60 秒后将其唤醒。 为此,请运行:

$ sudo rtcwake -m disk -s 60

示例输出为:

rtcwake: assuming RTC uses UTC ...
rtcwake: wakeup from "disk" using /dev/rtc0 at Fri Apr 21 09:04:49 2017

这里,

  • -m 表示模式。
  • -s 表示系统的唤醒时间。 在我们的例子中,我们给了 60 秒。

rtcwake 命令支持以下模式。

  • 支持 – 这是默认模式,如果你没有提到 -m 切换到你的命令。 这种状态提供了最小的,但真正的节能,同时提供了一个非常低的延迟转换回工作系统。
  • 冻结 – 在这种模式下,所有进程都被冻结,所有设备都被挂起,所有处理器都处于空闲状态。
  • 内存 – 挂起到 RAM。 在这种状态下,所有东西都将进入低功耗状态,除了内存以提供显着的节能效果。 RAM 的内容被保留。
  • 磁盘 – 挂起到磁盘。 这种状态提供了最大的功率节省。 此状态的操作类似于 Suspend-to-RAM,但包括将内存内容写入磁盘的最后一步。
  • f – 它完全关闭你的电脑。 这是通过调用“/sbin/shutdown”来完成的。 ACPI 未正式支持,但通常可以使用。
  • – 不暂停,只设置 RTC 唤醒时间。
  • – 不要暂停,而是读取 RTC 设备,直到出现警报时间。 这种模式对于调试很有用。
  • 禁用 – 禁用先前设置的警报。
  • 显示 – 打印报警信息,格式为:“alarm: off|on

在特定时间唤醒系统

我们还可以使用在特定时间唤醒我们的系统 -t 选项如下图 example.

$ sudo rtcwake -m no -l -t "$(date -d 'today 16:00:00' '+%s')"

样本输出:

这里,

  • -m 没有 – 此选项不会挂起电脑,只会设置 RTC 唤醒时间。
  • -l – 指示在 Bios 中设置的本地时间。
  • -t $(日期 +%s -d ‘今天 16:00:00’) – 将唤醒时间设置为今天下午 4 点。

有用的提示: 要了解 Linux/Unix 命令中的每个参数的作用,请查看 解释壳.

如果您想在明天的特定时间唤醒您的系统,命令将是:

$ sudo rtcwake -m no -l -t $(date +%s -d 'tomorrow 10:00')

上述命令将在明天上午 10 点唤醒您的系统,但不会立即将其挂起。

要在特定日期和时间唤醒您的系统:

$ sudo rtcwake -m no -l -t "$(date -d '2017-04-25 16:00:00' '+%s')"

此外,您可以在使用“&&”运算符唤醒系统后运行特定程序,如下所示 example.

$ sudo rtcwake -m mem -s 60 && chromium

上面的命令将我们的系统挂起到 RAM 并在 60 秒后将其唤醒并启动 chromium 网络浏览器。 酷,不是吗?

有关更多详细信息,请参阅手册页。

$ man rtcwake

建议阅读:

  • 在特定时间自动关闭、重启、挂起、休眠您的 Linux 系统

就这样。 现在,您知道如何在特定时间或之后从睡眠或休眠状态自动唤醒运行 Linux 的计算机。

感谢您的光临!

帮助我们帮助您:

祝你有美好的一天!!