Linux是一种性能优越的开源操作系统,随着其性能和知名度越来越高,最主要的是在价格上无与伦比的优势,许多厂家开始推出Linux笔记本电脑,并且这种趋势大有愈演愈烈之势。我们知道,笔记本受到电池续航时间的限制,所以特别注重机器的电源管理。因此,本文将讨论如何处理这些事项。
一、概述
实际上,除了利用主板上的BIOS来管理电源外,大多数Linux系统本身都自带了管理电源的实用工具软件,来处理各种电源事件,如:
1.电池电量不足--这时机器会发出警告,并显示相应图标,或者将硬件挂起。
2.闲置--如果在一段时间内机器一直处于非活动状态,那么可以让机器休眠(如关闭硬盘以及停用音频及网络等服务)从而有效延长电池供电时间。
通过检测你的笔记本使用的是交流电源还是电池,可以让机器进入相应的电源管理模式。在Fedora中,用于管理和检修电源问题的工具有:
1.高级电源管理(APM)--APM软件组成如下:一个pmd守护进程,用来监视电池的使用情况;多个实用工具软件,用来显示和响应电池事件。它们包含于apmd软件包中。
2.高级配置和电源接口(ACPI)--acpid事件守护进程一方面监视电源事件,另一方面用来设置响应这些事件的规则,这些规则用来关闭某些硬件或关掉系统电源等。ACPI是一款设计用来替代APM电源管理的更具通用性的工具软件,但是目前它还需进一步完善。
3.hdparm命令--hdparm命令可用于打开和关闭电源管理功能。另外,该命令还有许多选项,完成诸如停止硬盘启动器转动或让硬盘进入待机状态等操作。
需要说明的是,使用ACPI时,是操作系统在负责电源管理,而不是BIOS。尽管ACPI在管理电源问题方面功能更强也更灵活,但是,普通用户用起来却不是那么方便,如使用ACPI时,你必须亲自告诉它要关注哪些电源事件以及如何响应这些事件。目前,对一般用户而言,APM的功能不但丰富,并且对用户也更加友好。
下边我们将针对以上三种常见的电源管理工具分别加以讨论。
二、用APM管理电源
在Fedora中,可以配置APM,让其检测某些电源事件并做出响应。这时,它运行守护进程/usr/sbin/apmd来侦听事件,然后根据配置文件/etc/sysconfig/apmd 中的有关规定来处理这些事件。要配置运行APM,输入下列命令:
# chkconfig apmd on
# service apmd restart
注意:apmd和acpid不能同时使用,所以,如果此前系统正在使用acpid的话,应该先停用它,具体命令如下:
# chkconfig acpid off
# service acpid stop
APM成功启动后,在文件/var/log/messages中应该看到一则消息,指出该服务已启动,并列出当前电池的电量状况。默认时,pmd守护进程根据文件/etc/sysconfig/apmd 中的设置运行。我们可以列出当前运行的进程来查看运行中的apmd的使用了哪些选项:
# ps ax | grep apmd
/usr/sbin/apmd -p 10 -w 5 -W -P /etc/sysconfig/apm-scripts/apmscript
根据以上命令中列出的选项,apmd守护进程将会:
1.记录电池电量的变化--如果电量变化超过10%或更多,守护进程将向系统日志文件(默认时为/var/log/messages)发出一条消息。这一行为是由选项"-p 10"指定的。
2.记录电池电量不足--当电池电量低于5%并且仍未充电时,一条警告消息将发送到系统日志文件中。这一行为是由选项"-w 5"指定的。
3.提醒用户--如果电池电量低于"-w"选项所设定的值,将向所有登录系统的用户发送警报。此行为是由选项"-W"指定的。
4.利用apmscript响应事件--出现电源事件时,apmd将这些事件转给设定用于响应这些事件的脚本。根据上面的命令,运行的脚本应该是/etc/sysconfig/apm-scripts/apmscript。所用的文件取决于选项"- P"。