CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
13.12.2017

Последние комментарии

ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 December, 22:53
Kubuntu Feisty (15)
24 December, 18:42
Один на один с Windows XP (3758)
24 December, 11:46

Каталог софта

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Заметки :: Блогометки :: Системы

pm-utils — openSUSE

http://susenotes.ru/

Вольный перевод. Кстати, оригинал лежит здесь

Итак:

Pm-utils — инфраструктура спящего режима нового поколения

pm-utils будет новой структурой спящего режима. Обычно используется HAL для выполнения различных хаков в обход багов в драйверах и подсистемах, которые еще не знают про спящий режим.

Хотя pm-utils — структура, которая будет общей среди всех Linux-дситрибутивов в будущем, есть еще некоторые Suse-специфичные особенности и патчи, которые пока неизвестны. Я укажу варианты конфигураций, которые до сих пор относятся только к Suse.

Основные функциональные возможности (или «Как это работает»)

Концепция очень проста: основной скрипт (pm-action, вызываемый через символическую ссылку как pm-suspend или pm-hibernate) выполняет так называемые «крюки», скрипты, расположенные в /etc/pm/hooks в алфавитном порядке, с параметрами suspend (suspend to RAM) или hibernate (suspend to disk). Как только все «крюки» сделаны, компьютер отправляется в «сон». После того, как машина снова пробудилась, все «крюки» выполняются в обратном порядке с параметром resume (resume from RAM) или thaw (resume from disk). «Крюки» делают различные вещи, например, готовят bootloader, останавливают подсистему bluetooth или выгружают критические модули.

Обычно pm-suspend и pm-hibernate вызываются HAL’ом, который в свою очередь вызывается апплетами Рабочего Стола, такими как gnome-power-manager или kpowersave.

Конфигурация

Основной файл конфигурации — /etc/pm/config. Дополнительные файлы могут быть расположены в /etc/pm/config.d. Необходимо отметить, что файлы конфигурации и «крюки» должны быть исполняемыми файлами (иметь установленный бит «x»).

Переменные в /etc/pm/config

SUSPEND_MODULES="button" # список модулей, которые должны быть выгружены до остановки.

Suse-специфичные варианты

HIBERNATE_METHOD={userspace,kernel} # выбирается метод suspend-to-disk. По-умолчанию, userspace.
S2RAM_OPTS= "« # опции, передающиеся s2ram.

Смотрите также s2ram для большей информации.

Поиск неисправностей

Если suspend или hibernate не сработают корректно, вы вероятно сможете найти некоторую информацию в лог-файле /var/log/pm-suspend.log, например, какие „крюки“ были запущены и каков был их выход.

Создание собственных „крюков“

Если вы хотите сделать нечто специфическое во время выполния suspend/hibernate, вы можете легко поместить ваш собственный „крюк“ в /etc/pm/hooks. „Крюки“ в этой директории будут вызываться по очереди в алфавитном порядке в течение выполнения suspend (это причина того, что их название начинается с двух цифр, чтобы сделать порядок выполнения более явным) и в обратном порядке в течение выполнения resume.

Я показываю для демонстрации довольно бесполезный „крюк“, который просто поместит некоторую информацию в ваш лог-файл:

#!/bin/sh
case $1 in
hibernate)
echo „Hey guy, we are going to suspend to disk!“
;;
suspend)
echo „Oh, this time we’re doing a suspend to RAM. Cool!“
;;
thaw)
echo „Oh, suspend to disk is over, we are resuming…“
;;
resume)
echo „Hey, the suspend to RAM seems to be over…“
;;
*) echo „somebody is calling me totally wrong.“
;;
esac

Поместите это в /etc/pm/hooks/66dummy, сделайте chmod +x /etc/pm/hooks/66dummy, и оно будет изрыгать некоторые ссобщения в течение работы suspend/resume.

Внимание: Все „крюки“ запускаются от пользователя root. Это означает, что вы должны быть осторожны, создавая временные файлы, проверьте, чтобы переменные PATH были установлены корректно и т.д., чтобы избежать проблем с безопасностью.

Различные tips & tricks

Вызов suspend вручную

Если вы хотите вызвать suspend вручную для отладки, без использования HAL или других структур, вызывайте pm-suspend или pm-hibernate от имени пользователя root.

Внимание: Это полезно для отладки. И было бы хорошо, если бы вы знали, что делаете, используя это.

Использование suspend-to-RAM на машинах, не входящих в whitelist s2ram

Если вы хотите вызвать suspend-to-RAM, вам необходимо добавить -f к переменной S2RAM_OPTS в /etc/pm/config. Вы также должны поместить все другие варианты, которые вам необходимы, в эту переменную. Например:
S2RAM_OPTS=»-f -a 3″

Это может быть хорошей идеей, чтобы сообщить о вашей машине, как о прописанной в S2RAM-Page, так, чтобы вам не пришлось этого делать в дальнейшем.

Отключение «крюка»

Если вам не нравится, как работает «крюк», или он бесполезен, или даже вреден, мы бы оценили bugreport от вас по этому поводу. Вы можете, однако, просто отключить «крюк», удалив бит «x» из файла при помощи
chmod -x /etc/pm/hooks/the_hook



Комментарии

аноним, Mon Mar 23 03:27:16 2009:
imho - ни-о-чём. тема не раскрыта совершенно. где примеры как из командной строки завалить машину в suspend/hiber? аппеляция к версии openSUSE-10.2 - это ахтунг! на дворе 11.1 и 11.2 скоро будут! где примеры практического применения?

P.S. наши товарищи именно pmtools пользуют для E17-го вот тут:
http://sda.scwlab.com/soad_linux.html
и две строки в их файле "/etc/enlightenment/sysactions.conf" стоят всей этой лабуды...

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)

24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds