统信UOS支持五种定时关机方式:一、crontab周期性关机;二、systemd timer精准日历触发;三、shutdown延时关机;四、at命令一次性关机;五、桌面图形界面设置。

如果您希望统信UOS系统在指定时间自动执行关机操作,则需根据任务类型(周期性、一次性或精准日历触发)选择对应的底层机制。以下是多种可行的配置方法:
一、使用crontab设置周期性定时关机
crontab是Linux标准的用户级定时调度工具,适用于每日、每周等重复性关机场景,通过编辑系统级crontab文件可实现精确到分钟的定时控制,且无需额外服务依赖。
1、以root身份打开系统级crontab编辑器:在终端中执行sudo crontab -e,首次运行时按提示选择编辑器(如输入2选择vim)。
2、在文件末尾添加一行定时规则,例如每天14:30关机:30 14 * * * /sbin/poweroff。
3、保存并退出编辑器(vim中按Esc键后输入:wq回车)。
4、验证任务是否写入成功:执行sudo crontab -l,确认输出中包含刚添加的规则行。
二、使用systemd timer设置精准定时关机
systemd timer提供日历式触发支持与系统生命周期深度集成能力,适合对执行稳定性要求高的环境,可规避休眠唤醒失败、登录会话阻塞等问题,真正实现无人值守。
1、创建关机服务单元文件:执行sudo nano /etc/systemd/system/auto-shutdown.service,写入以下内容:
[Unit]
Description=Automatically shut down the system
[Service]
Type=oneshot
ExecStart=/usr/sbin/poweroff
2、创建对应timer单元文件:执行sudo nano /etc/systemd/system/auto-shutdown.timer,写入以下内容:
[Unit]
Description=Run auto-shutdown.service at a specific time
[Timer]
OnCalendar=*-*-* 23:00:00
Unit=auto-shutdown.service
[Install]
WantedBy=timers.target
3、启用并启动timer:依次执行sudo systemctl daemon-reload、sudo systemctl enable auto-shutdown.timer、sudo systemctl start auto-shutdown.timer。
4、查看timer状态:执行systemctl list-timers --all | grep auto-shutdown,确认下一次触发时间已正确加载。
三、使用shutdown命令延时关机
shutdown命令适用于临时设定相对时间后的关机,例如当前时刻起30分钟后关机,操作即时生效,不依赖后台服务或持久化配置。
1、在终端中执行sudo shutdown -h +30,表示30分钟后执行关机。
2、若需取消已设定的延时关机,执行sudo shutdown -c。
3、如需立即关机,可直接运行sudo shutdown -h now。
四、使用at命令设置一次性关机任务
at命令专为单次任务设计,适用于临时安排关机,例如当前会话结束前完成特定操作后关机,任务执行完毕即自动清理,无需持久化配置,避免误触发风险。
1、确认at服务已安装并启用:执行sudo apt install at -y,随后启动服务:sudo systemctl enable --now atd。
2、以root权限提交一次性任务:执行echo "/sbin/poweroff" | sudo at 16:25,表示当天16:25执行关机。
3、验证任务是否提交成功:执行atq,查看待执行任务列表。
五、通过桌面环境图形界面设置定时关机
统信UOS 1070及以上版本在系统设置中集成了可视化定时关机功能,无需命令行操作,适用于不熟悉终端的用户,配置结果直接写入系统级定时策略。
1、点击左下角开始菜单,进入控制中心 → 电源管理 → 关机设置。
2、开启定时关机开关,点击右侧日历图标选择日期,再设定具体关机时间。
3、点击确定保存设置,系统将自动应用该计划。










