Жизнь заставила ) Во-первых, для продления времени автономной работы. Во-вторых, недавно комп стал выключатся по непонятным причинам. Эмпирическим путём пришел к выводу, что от перегрева. Браузер из-за тучи рекламных флешек, будучи долго открытым, так нагревал писюк, что он просто отрубался. Проблем добавляло то, что у меня Семпрон. В репозитарии ничего собранного для этих целей нет. К тому же Ubuntu красива снаружи, но наследие от Дебиана чуток сказывается на том, что все настройки системы как-то лишне раскиданы и напутаны. В том же Арче это как-то проще настраивается, хоть и со своими особенностями. В общем, думаю, ещё кому-то может пригодится. К тому же комп тише работать становится. Итого
Ставим
$ sudo apt-get install msrtool
Качаем
http://sourceforge.net/projects/cpupowerdРаспаковываем архив, заходим в папку src. В ней
$ make
$ sudo make install
Теперь стоит, но не работает.
Вначале убъём всё, что мешает
$ sudo killall gnome-power-manager
$ sudo killall hald-addon-cpufreq
Запустим модуль ядра
$ sudo modprobe msr
Проверяем
$ sudo cpupowerd -s
Должно выдать текущую частоту и напряжение на процессоре. Если всё нормально, идём дальше. Следующей командой понижаем на 0.1 вольта текущее напряжение по всем частотам, возможным для процессора
$ sudo cpupowerd -r 0.1
Или повышаем
$ sudo cpupowerd -e 0.1
Больше 0.2 В нельзя изменять такой командой. Ею просто лучше всего попробовать, чтобы нащупать желаемое напряжение без зависаний. Вообще шаг может быть кратный 0.0125 В. Желательно протестировать и под нагрузкой, допустим запуском какого-нибудь приложения, типа браузер с флешем. )
Однако, если не хочется каждый раз вбивать такую команду или хочется попробовать изменение напряжения более 0.2, то нужно использовать файл конфигурации. Для этого создадим его
$ sudo cpupowerd -a /etc/cpupowerd.conf
Откроем для редактирования под рутом этот файл.
$ sudo nano /etc/cpupowerd.conf
Допустим, мы хотим понизить вольтаж на 0.2250 В. После изменений у меня этот файл выглядит так
800 0.6750
1600 0.9000
1800 0.9250
2000 0.9500
2200 0.9750
Запускаем
$ sudo cpupowerd -d -c /etc/cpupowerd.conf
Пробуем, тестируем, смотрим
$ sudo cpupowerd -s
Можно закомментировать те строки, в которых нежелаемая частота, допустим для продления времени работы от батареи. На моём примере, если вначале последних двух строк поставить знак #, то частота будет максимум 1800М. По крайней мере более удобного и надёжного способа не нашел. В моём случае, если понизить напряжение, разрешить только самую минимальную частоту и выставить количество цветов видеокарты в 16 бит, то время автономной работы возрастает где-то в 1,5 раза. После каждого изменения конфига нужно делать $ sudo cpupowerd -d -c /etc/cpupowerd.conf
После того как подобрали нужные параметры, протестировали путём зависаний и перезагрузок, вешаем это на автозапуск. Новичкам в линукс нужно понимать, что все шаги до этого нужно повторять после каждого ребута. Важно добиться, чтобы перед настройкой автозапуска параметры были стабильными, ато может придётся через LiveCD перенастраивать /etc/cpupowerd.conf. И только после уверенности в настройках напряжения и частоты делаем следующее.
Gnome_Power_Manager лучше отключить через Система - Параметры - Запускаемые приложения
В файл /etc/modules добавляем отдельной строкой msr для автозагрузки этого модуля ядра.
Дальше создаём скрипт для правильного автозапуска и работы этого драйвера.
$ sudo nano /etc/init.d/cpupowerd
В него вставляем следующее содержание
#! /bin/sh
case "$1" in
start)
sleep 20
killall gnome-power-manager
killall hald-addon-cpufreq
cpupowerd -d -c /etc/cpupowerd.conf
;;
stop)
killall cpupowerd
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}" >&2
exit 3
;;
esac
На всякий случай пусть будет killall gnome-power-manager.
Делаем скрипт исполняемым
$ sudo chmod +x /etc/init.d/cpupowerd
Для автостарта делаем символическую ссылку на ранлевеле 2
$ cd /etc/rc2.d
$ sudo ln -s ../init.d/cpupowerd S99z_cpupowerd
Тоже на ранлевеле 6 для корректного выключения (рекомендуется разработчиками)
$ cd /etc/rc6.d
$ sudo ln -s ../init.d/cpupowerd K60cpupowerd
Перегружаемся, проверяем
$ sudo cpupowerd -s
А также
$ sudo ps- A | grep cpu
Важно чтобы не был запущен демон hald-addon-cpuf. При чём стоит обратить внимание, что у меня он числится в системе как hald-addon-cpuf, а убивается почему-то под именем hald-addon-cpufreq
Кажись усё. У меня на 9.10 работает.