如何在特定时间后自动关闭系统?

如何在特定时间后自动关闭系统?

如何在一定可定制的时间后自动关闭系统?

答案1

打开终端窗口并输入:

sudo shutdown -h +60

并将 60 替换为您想要花费的分钟数。

更多信息请点击这里:

http://ubuntuforums.org/archive/index.php/t-473173.html http://www.linux.org/lessons/beginner/l5/lesson5a.html

答案2

  • 您可以使用关机 安装 gshutdown
  • 安装后,可以在应用程序 → 附件 → GShutdown 下找到它 替代文本
  • 另请查看此方法

答案3

因为关于关闭 PC 的主题一段时间不活动重定向关于这个话题,我在这里解释一下这个问题。

我花了很多时间来解决这个问题,所以我觉得分享它很有用,可以让其他人也轻松解决同样的问题。我试过不同的程序,但它们对我不起作用,所以我发现使用简短脚本计划任务最好的解决方案。

首先我参考了帖子定时关机 - 30 分钟后关机

我将在下面复制它,然后解释如何进行改进以使其发挥作用:

安装 xprintidle。此工具可显示用户的空闲时间。

sudo apt-get install xprintidle

制作一个脚本 autoshutdown.sh,检查空闲时间并指示计算机在空闲 30 分钟后关闭。

idle=$(xprintidle)

if [ $idle -gt 1800000 ]; then
    shutdown -h now
fi

为此创建一个 cronjob,不时检查系统是否空闲时间过长,如果空闲时间超过 30 分钟,系统将关闭。请注意,必须为 root 用户创建 cronjob。


该脚本需要一些改进才能运行,例如:

idle=`env DISPLAY=:0 su OUR_USER -c xprintidle 2>&1`

OUR_USER是我们检查空闲时间时所指的用户(不是 root 用户)

DISPLAY=:0对于一个桌面显示来说是正确的(根据您的情况运行env命令来读取)DISPLAY

如果脚本由运行OUR_USER,则上面的行可以减少:

idle=`env DISPLAY=:0 xprintidle 2>&1`

本主题描述http://ubuntuforums.org/showthread.php?t=1069602

如果脚本由运行OUR_USERshutdown则命令前面应该有sudo

sudo shutdown -h now

我的脚本是通过 cron 文件中的行从 cron 运行的:

*/5 * * * * /home/OUR_USER/autoshutdown.sh 
  • 每 5 分钟
  • OUR_USER 应该像之前一样替换为我们引用的用户。

如果脚本不是由 root 运行,我们应该记得添加以下行:

ALL ALL=(ALL) NOPASSWD: /sbin/shutdown 

sudoers文件,所以关闭命令不需要密码即可执行。


我在 2 个类似的发行版上尝试过这样的 cronjobsLubuntu 12.04.4 RC LXLE 32 位http://www.lxle.net/

在一个系统中,它仅使用文件中设置的 root cronjob 来工作:

/var/spool/cron/crontabs/root


警告

另一个问题是我的系统中的 xprintidle 有时会给出随机值有时逻辑上是递增的。最终结果是 - 如果我将最大空闲值设置为 30 分钟,我的系统通常会在 20 分钟后关闭。我认为罪魁祸首是屏幕保护程序它不能按照输入的参数设置的方式工作。

答案4

您可以用sleep它来实现这一点。它们用于延迟/暂停操作。将其与shutdown电源关闭定时器结合使用。例如,1 小时后进入睡眠状态:

sleep 3600 && sudo shutdown now

您也可以使用数学,这是 3 小时后关机的方法:

sleep $((3600*3)) && sudo shutdown now

相关内容