忘记密码   免费注册 查看新帖 | 论坛精华区
ChinaUnix.net
  平台论坛 博客 微博 读书 人才 精华 文库 自测 | 频道操作系统 开发 数据库 存储 服务器 网络 IT新闻 Linux 下载 Power用户组
最近访问板块 发新帖
查看: 3001 | 回复: 7

[CentOS] 按下电源键(Poweroff button)就关机 需要改哪些配置 [复制链接]
更多

Rank: 2

帖子
747
主题
77
精华
1
可用积分
1270
专家积分
5
在线时间
807 小时
注册时间
2005-06-29
最后登录
2012-02-04
论坛徽章:
0
发表于 2009-05-22 13:19:57 |显示全部楼层
本人一台 Headless CentOS 5.3机器。 平时都是远程ssh去shutdown关机。

如果笔记本没开,想直接按电源键触发Linux关机指令 (和按住电源键5,6秒关电源不同)。我应该做些什么操作呢?

稍微查了些资料,和ACPI有关,看了比较早的帖子说要内核支持,还有开系统服务。 来龙去脉有点迷糊。


下面是看到的一文

for short, here is how i added shutting down via power button (on redhat 9):
1. compile the kernel with acpi support (be sure to include as built in
or module : ospm_busmgr, ospm_button,ospm_system)
2. either disable apm in kernel or add 'apm=off' to grub/lilo
3. get acpmd and install it (got rpms from sourceforge:
http://acpid.sourceforge.net/ )
4. if you have compiled the acpi modules as modules, be sure to insmod
them before /etc/inid.d/acpid runs
( what i did is add a 'modprobe' for them at the 'start()' in
/etc/init.d/acpid )
5.create a file : /etc/acpi/events/powerbtn with the following lines:

event=button[ /]power
action=/sbin/poweroff

6. reboot

硬件不太懂, 还没试验,有经验的人可否说下要注意的地方?谢先。
热爱Linux......现在开始接触Solaris。softwarezjut@gmail.com/IRC FreeNode ID:FrankLv。
PC:120G+80G+60G  LVM   OS:ubutuServer
NB:ThinkPad T61p,100G    OS:Win7 +Solaris11

Rank: 2

帖子
747
主题
77
精华
1
可用积分
1270
专家积分
5
在线时间
807 小时
注册时间
2005-06-29
最后登录
2012-02-04
论坛徽章:
0
发表于 2009-05-22 14:13:47 |显示全部楼层
check了点资料:
http://www.linuxsir.org/bbs/thread43852.html
检查了下内核编译参数
CONFIG_ACPI_BUTTON=m

button的module的在内核中的
# lsmod  | grep button
button                 10705  0

apcid已经启动的
acpid (pid 2031) is running...

顺利的话改改对应的关机事件处理脚本应该就可以了吧。
# cat /etc/acpi/events/power.conf
# ACPID config to power down machine if powerbutton is pressed, but only if
# no gnome-power-manager is running

event=button/power.*
action=/bin/ps awwux | /bin/grep gnome-power-manager | /bin/grep -qv grep || /sbin/shutdown -h now
热爱Linux......现在开始接触Solaris。softwarezjut@gmail.com/IRC FreeNode ID:FrankLv。
PC:120G+80G+60G  LVM   OS:ubutuServer
NB:ThinkPad T61p,100G    OS:Win7 +Solaris11

Rank: 2

帖子
747
主题
77
精华
1
可用积分
1270
专家积分
5
在线时间
807 小时
注册时间
2005-06-29
最后登录
2012-02-04
论坛徽章:
0
发表于 2009-05-22 21:59:22 |显示全部楼层
啊哈 这次是最简单的一次实验了。

和上面查的一样,系统已经是默认工作的。
电源键触发事件的处理在 /etc/acpi/event/power.conf

以后就可以直接按下电源键关机咯(按一下,非长按)。
热爱Linux......现在开始接触Solaris。softwarezjut@gmail.com/IRC FreeNode ID:FrankLv。
PC:120G+80G+60G  LVM   OS:ubutuServer
NB:ThinkPad T61p,100G    OS:Win7 +Solaris11

Rank: 8Rank: 8

帖子
4468
主题
452
精华
1
可用积分
1027
专家积分
20
在线时间
3756 小时
注册时间
2008-03-04
最后登录
2012-02-03
论坛徽章:
0
发表于 2009-05-23 09:08:00 |显示全部楼层
windows下见过bios里装系统时要把acpi打开,要不然点了关机后不会自动切断电源,显示"您现在可以安全的关机"了

Rank: 2

帖子
630
主题
191
精华
0
可用积分
1383
专家积分
10
在线时间
603 小时
注册时间
2007-03-14
最后登录
2012-02-04
论坛徽章:
0
发表于 2009-05-23 09:38:00 |显示全部楼层
万一不小心按了下关机键,怎么办。

Rank: 5Rank: 5

帖子
11936
主题
627
精华
1
可用积分
5042
专家积分
10
在线时间
854 小时
注册时间
2005-05-27
最后登录
2012-02-03
论坛徽章:
0
发表于 2009-05-23 10:35:41 |显示全部楼层

回复 #5 tianlijian 的帖子

windows在电源管理中有设置,Linux的不知道。等待答案。

Rank: 2

帖子
747
主题
77
精华
1
可用积分
1270
专家积分
5
在线时间
807 小时
注册时间
2005-06-29
最后登录
2012-02-04
论坛徽章:
0
发表于 2009-05-23 10:50:15 |显示全部楼层
我这里的电源键是机箱上的,键盘没有试(Headless啦,机箱啥都没接)。

按电源键有两种情况:
1)按一下,就松开。
2)长按5,6秒。

我测试的就是第一种情况,第二种可能是BIOS级别的吧,因为5,6秒后是直接关机箱电源的(和异常掉电效果一样).

当按一下时,系统会收到一个power的事件,刚才的配置文件里可以自己设置要如何处理,可以直接调用一个脚本。
这个就自由发挥了,比如我可以在这里关闭些init不会关的程序,然后5分钟后关机。(默认是shutdown -h now)


Windows 中可以设置应该也同样效果,只是对这个事件的设置是图形化的。
热爱Linux......现在开始接触Solaris。softwarezjut@gmail.com/IRC FreeNode ID:FrankLv。
PC:120G+80G+60G  LVM   OS:ubutuServer
NB:ThinkPad T61p,100G    OS:Win7 +Solaris11
站长

Rank: 7Rank: 7Rank: 7

帖子
34529
主题
1941
精华
1
可用积分
65248
专家积分
257
在线时间
6934 小时
注册时间
2003-11-18
最后登录
2012-02-04
论坛徽章:
0
发表于 2009-05-23 14:37:18 |显示全部楼层
多谢LZ的经验共享。没整过,学习了。
您需要登录后才可以回帖 登录 | 注册

北京皓辰网域网络信息技术有限公司. 版权所有 京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:1101082001
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP