通過電源按鈕優雅關機
我希望能夠通過按下電源按鈕來關閉我的 CentOS 7 機器。由於它不能開箱即用,我嘗試了以下方法:
yum -y install acpid service acpid start chkconfig acpid on
不幸的是沒有效果,可能是因為這僅對 CentOS 6.x 有效。有誰知道如何通過按電源按鈕啟用關機?
我也有這個問題。
從本質上講,您將在日誌中看到什麼(如果 systemd 配置正確,上述任何一種方法都有效——systemd 為您翻譯舊的“服務”命令……至少在 CentOS7 中)
Nov 20 11:12:06 localhost systemd-logind: Power key pressed. Nov 20 11:12:06 localhost systemd: SELinux policy denies access
因此,您需要繼續瀏覽 /var/log/audit/audit.log,您會看到如下內容:
init_t:s0 msg='avc: denied { start } for auid=-1 uid=0 gid=0 path="/usr/lib/systemd/system/poweroff.target" scontext=system_u:system_r:apmd_t:s0 tcontext=system_u:object_r:power_unit_file_t:s0 tclass=service exe="/usr/lib/systemd/systemd" sauid=0 hostname=? addr=? terminal=?'
好的,為什麼系統配置文件不在 /etc 中了?無論如何,我離題了……關於 /usr/lib/systemd/system/poweroff.target 的東西是關閉的?:順便說一句,我真的很喜歡新的自動化文件現在如何混淆自己……現在沒有真正的方向…這個文件完全沒用。這些選項中的任何一個是什麼意思?我猜一些 PFY 管理員的工作保障……對我來說加班更多。(必須是另一個“功能”!)
# This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. [Unit] Description=Power-Off Documentation=man:systemd.special(7) DefaultDependencies=no Requires=systemd-poweroff.service After=systemd-poweroff.service AllowIsolate=yes [Install] Alias=ctrl-alt-del.target
好的,至此,我們有足夠的資訊來真正尋找答案。問題是阻止 systemd 關閉系統的 SELinux 策略。
瞧!有一個錯誤: https ://bugzilla.redhat.com/show_bug.cgi?id=1224211
基本上,在評論 #60 左右,他們發現存在策略錯誤。它將通過定期更新修復,但我只想安裝“所有 dvd”中的軟體包。所以,看來我必須等到 CentOS 人員發布 7.2 才能解決這個問題!
RHEL 7 和 Centos 7 已經從 System V (SysV) 啟動腳本和執行級別切換到 systemd。因此,啟動 acpid 的命令應該是:
systemctl start acpid systemctl enable acpid