On Sun, 5 Sep 2004, Dmitry E. Oboukhov wrote: > играюсь с засыпанием на ноуте thinkpad А31 > > значит так: > > в lilo.conf > append "resume=/dev/hda3" > > кернел Дебиановский включил SOFTWARE_SUSPEND > > есho 1 > /proc/acpi/sleep > > экран гаснет на 1 секунду > и потом сразу просыпается > > echo 2 > говорит операция записи не поддерживается > > echo 3 > все останавливается, ноут засыпает, но экран не гаснет > > echo 4 > начинает сохранять на диск, но потом говорит нет места для сохранения - > кернел паник > > свап размером 2 Гига, ОЗУ - 512 > > сколько нужно свап чтобы места хватило? > > при этом он пишет "буду сохранять чуть больше 12000 страниц" > страница это сколько? 4К? тогда вообще непонятно - место должно быть... > > > > и еще, можно погасить экран в echo 3? > > пробовал включить/выключить Suspend-to-Disk Support и прописать > pmdisk=/dev/hda3 > результаты строго те же > > у кого работает засыпание без патчей suspend2 поделитесь конфигами lilo > и кернела в этой области плз > IMHO лучше использовать software suspend 2.0: http://softwaresuspend.berlios.de/
Правда для этого прийдется патчить ядро, но ведь для ACPI всё равно прийдется это делать. Для начала, прочитайте FAQ: http://tldp.org/HOWTO/ACPI-HOWTO/index.html Я делал всё это на ядре 2.6.7-3 debian, но не думаю, что будут сильные отличия. Сначало вытаскивается ACPI патч из: ftp://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/release/26-stable-release/ и устанавливается $ cd /usr/src/linux/ $ patch -Np1 < acpi-20040715-2.6.8.diff.gz Затем вытаскиваются swsusp патчи из: http://developer.berlios.de/project/showfiles.php?group_id=1412 (Для Вас это видимо будет software-suspend-2.0.0.105-for-2.6.8.1.tar.bz2) и hibernate скрипт. Патчи развёртываются в отдельную директорию и делается что-то типа: cd /usr/src/linux/ for p in /location-of-swsusp-patch/* do patch -Np1 < $i done Тут возможен сбой если дебиановские патчи конфликтуют с swsusp. Тогда либо снять все дебиановские патчи, либо искать, что случилось. :) Потом ядро собирается: $ make menuconfig Loadable module support ---> [*] Enable loadable module support [*] Module unloading Power management options (ACPI. APM) ---> [*] Power Management support [ ] Software Sspend (EXPERIMENTAL) Software Suspend 2 ---> --- Image Storage (you need at least one writer) [*] Swap Writer [ ] Null Writer --- Page Transformers [*] LZF image compression [ ] GZIP image compression [ ] Null Page Transformer (For debugging) --- General Options [ ] Compile in debugging output [ ] Variation Analysis [ ] Metadata dump [ ] Allow keep Image Mode [*] Relaxed /proc/swsusp permissions () Default resume device name [ ] Suspend-to-Disk Support Перед тем как перебучиваться надо в lilo.conf добавить append="resume2=swap:/dev/hda2"( вместо /dev/hda2 - положение своп раздела ). Затем устанавливается скрипт: $sh suspend.sh --install и правится /etc/suspend.conf. Дальше перезагрузка, dmsg | less на предмет, что swsusp и acpi говорят. Потом вызывается /usr/local/sbin/hibernate и возможно, что Вам повезет. Мне не повезло, но у меня и лептоп другой. Мне еще пришлось заводить sysfs (2.6 я первый раз пробовал) Надо добавить в /etc/fstab sysfs /sys sysfs defaults 0 0 Потом пришлось долго и вдумчиво править suspend.conf, некоторые модули вешали ядро и их надо "вручную" выгружать до засыпания (поэтому и нужен скрипт). Затем, когда решил добавить ipw2100 модуль (wlan), пришлось лезть в код модуля, иначе он с swsusp конфликтовал. Но в результате все замечательно работает :) Успехов, Юра. p.s. А вот suspend to RAM так и не заработал (ASUS M2400), а жаль... Собственно поэтому swsusp и поставил, работает довольно шустро.