我有一家小型网吧,里面有 7-9 台 Ubuntu 12.04 工作站。不幸的是,我不能每周都去那里。
我见过一个 Java 解决方案来升级系统,在普通(非 sudo/admin)用户请求关机(但不重启!)后,系统会自动升级 - 我记得基础系统是 Ubuntu 10.04,但程序和桌面管理器是完全定制的,使用自定义软件(例如检查打印机的墨水量......)
这就是为什么我认为,如果我能在我们的环境中设置类似的东西,那将非常有用。我已经用 Bash 编写了脚本,并使用禅意,所以我只想知道:
- 我如何调用/运行我的脚本?
- 如何在该脚本中运行 root 命令(需要 sudo)?(例如 sudo poweroff 或 halt)
答案1
以下是您可以执行的操作的概述。
如果您想在每次机器关闭时检查升级,您可以将脚本转换为在级别 0(关闭)上运行的系统 v 初始化脚本。
去做这个:
- 将您的脚本更改为初始化脚本。简单示例 -http://www.cyberciti.biz/tips/linux-write-sys-v-init-script-to-start-stop-service.html
- 将其放入/etc/init.d/
- 创建一个符号链接,如:/etc/rc0.d/K01myscipt -> /etc/init.d/myscript
这将发送停止命令(钾01myscript) 在关机过程开始时添加到脚本中 (K01myscript - 意思是,在其他脚本之前)。我不确定,但也许你必须在脚本开始时取消关机 -shutdown -c now
并在脚本结束时再次发出它 - shutdown -h now
。
该脚本将以 root 身份执行,因此您不需要任何 sudo 命令。您只需要拥有创建上述文件的权限。