Portál AbcLinuxu, 30. dubna 2025 09:16

Uspávání notebooku v Gentoo

4.2.2006 18:58 | Přečteno: 10577× | PC

Tak se mi povedlo rozchodit uspávání notebooku a mám z toho takovou radost, že jsem se rozhodl napsat takový lehký návod.

Jedná se o DELL Latitude CPi A366XT, ale základní myšlenky budou zřejmě společné většině přenosných počítačů.

Nastavil jsem svůj počítač tak, že pokud stisknu vypínač, vejde do režimu Suspend2, pokud stisknu tlačítko "Suspend", vejde do režimu "standby". Jaký je mezi nimi rozdíl ?

Suspend2 trvá asi 15s (uspání). Počítač si vlastně všechno potřebné uloží na disk a pak se vypne. Při zapnutí během bootování najde uložená data a obnoví je, takže bootování trvá asi 20s. Výhoda je, že notebook spí opravdu tvrdě, takže nemá během spánku žádnou spotřebu (je vlastně po HW stránce vypnutý).

Do režimu Standby vejde počítač rychleji (asi 4s) a během 6s se probudí. Vypne se monitor, disk a karty v PCMCIA slotu. Počítám, že data budou v RAM a NB tedy bude mít nějakou spotřebu, i když řádově nižší, než za běhu.

Chvíli jsem taky zkoušel režim "Suspend To RAM", ale po probuzení mi nešel zvuk. Z předchozího je tedy jasné, Suspend2 se hodí pro dlouhodobější "spánek", zatímco Standby je dobré třeba na krátký přenos počítače z místa A do místa B (...event. C).

Co tedy budeme potřebovat? Stáhneme skripty pro hibernaci,patch do jádra pro Suspend2 a ACPI daemona pro obsluhu tlačítek:

emerge hibernate-script

emerge suspend2-sources

emerge acpid

Potom zapneme podporu Suspend2 v jádře a překompilujeme ho. Protože používám LILO a SWAP oddíl mám na hda1, napsal jsem do lilo.conf:append="resume2=swap:/dev/hda1" Po jakékoli úpravě souboru lilo.conf je nutné napsat jako root příkaz lilo.

Ted zkuste jako root napsat hibernate. Počítač by měl "vejít" do režimu Suspend2. Jinak konfigurační soubor je v /etc/hibenrate/hibernate.conf a pro Suspend2 by měl vypadat nějak takto:

UseSuspend2 yes
Reboot no
#3EnableEscape yes
DefaultConsoleLevel 1
Compressor lzf
Encryptor none
# ImageSizeLimit 200
## useful for initrd usage:
# SuspendDevice swap:/dev/hda2
## Powerdown method - 3 for suspend-to-RAM, 4 for ACPI S4 sleep, 5 for poweroff
PowerdownMethod 5
## Any other /proc/software_suspend setting can be set like so:
# ProcSetting expected_compression 50
## Or traditionally like this:
Suspend2AllSettings 0 0 2056 65535 5
## Or even from the results of hibernate --save-settings with this:
# Suspend2AllSettingsFile /etc/hibernate/suspend-settings.conf
## For filewriter:
# FilewriterLocation /suspend_file 1000
# VerifyFilewriterResume2 yes
# ProcSetting userui_program /sbin/suspend2ui_text
Verbosity 0
LogFile /var/log/hibernate.log
LogVerbosity 1

Povedlo se ? OK. A teď zkusíme standby. To bude soubor hibernate.conf vypadat takto:

### suspend2 (for Software Suspend 2)
#UseSuspend2 yes
#Reboot no
#3EnableEscape yes
#DefaultConsoleLevel 1
#Compressor lzf
#Encryptor none
# ImageSizeLimit 200
## useful for initrd usage:
# SuspendDevice swap:/dev/hda2
## Powerdown method - 3 for suspend-to-RAM, 4 for ACPI S4 sleep, 5 for poweroff
#PowerdownMethod 5
## Any other /proc/software_suspend setting can be set like so:
# ProcSetting expected_compression 50
## Or traditionally like this:
#Suspend2AllSettings 0 0 2056 65535 5
## Or even from the results of hibernate --save-settings with this:
# Suspend2AllSettingsFile /etc/hibernate/suspend-settings.conf
## For filewriter:
# FilewriterLocation /suspend_file 1000
# VerifyFilewriterResume2 yes
# ProcSetting userui_program /sbin/suspend2ui_text

### sysfs_power_state
## To use /sys/power/state to suspend your machine (which may offer
## suspend-to-RAM, suspend-to-disk, standby, etc) comment out all the options
## above for Software Suspend 2, below for acpi_sleep, and uncomment this line.
## You may replace mem with any one of the states from "cat /sys/power/state"
 UseSysfsPowerState standby
 PowerdownMethod shutdown

Tak, když napíšete hibernate teď, měj by NB jít do "standby" režimu.

Teď je nutné zařídit, aby se konfigurační soubor měnil podle potřeby. Já jsem to udělal tak, že konfigurační soubor pro režim Suspend2 jsem uložil do /etc/hibernate/suspend2.conf a soubor pro standby mám v /etc/hibenrate/standby.conf

Dále jsem v adresáři /etc/hibernate/ vytvořil dva spustitelné soubory:

suspend2:

ln -sf /etc/hibernate/suspend2.conf /etc/hibernate/hibernate.conf
hibernate 

standby:

ln -sf /etc/hibernate/standby.conf /etc/hibernate/hibernate.conf
hibernate 

Teď by to mělo fungovat tak, že pokud napíšete jako root:/etc/hibernate/suspend2 tak počítač usne tvrdým spánkem Suspend2 a pokud napíšete /etc/hibernate/standby, vleze do StandBy módu.

Nadále je potřeba přiřadit vytvořené skripty jednotlivým ACPI tlačítkům. To provedeme editací souboru /etc/acpi/default.sh. Měl by vypadat nějak takhle:

#!/bin/sh
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-power/acpid/files/acpid-1.0.4-default.sh,v 1.1 2005/03/15 19:15:53 ciaranm Exp $

# Default acpi script that takes an entry for all actions

set $*

group=${1/\/*/}
action=${1/*\//}

case "$group" in
	button)
		case "$action" in
			power)	/etc/hibernate/suspend2
				;;
			*)	logger "ACPI action $action is not defined"
				;;
		esac
		
		
		case "$action" in
		         sleep) /etc/hibernate/standby
		         	;;
		        *)	logger "ACPI action $action is not defined"
		
		esac
		
		;;

	*)
		logger "ACPI group $group / action $action is not defined"
		;;
esac

No a to je asi všechno. Ještě dodám, že aby se ACPIDaemon spouštěl automaticky při bootu, je nutné napsat jako root:rc-update add acpid default

Poznámka: Když se mě občas někdo zeptá, proč že vlastně používám ten Linux, odpovím mu mimojiné, že mi umožňuje nastavit si počítač lépe obrazu svému. Proto se ptám zkušenějších: Bylo by možné podobné chování počítače (tzn. Suspend při stisku vypínače, apod.) nastavit i ve Windows ?

       

Hodnocení: 93 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

David Watzke avatar 4.2.2006 19:00 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Odpovědět | Sbalit | Link | Blokovat | Admin
suspend2-sources jsou jen pro x86 :P
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
4.2.2006 19:38 Spike | skóre: 30 | blog: Communicator | Praha
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Odpovědět | Sbalit | Link | Blokovat | Admin
ANO! Bylo by to možné! Dokonce je to záležitost asi tří kliknutí myší. Ignorance některých lidí mě stále překvapuje.
4.2.2006 19:56 Hrabosh | skóre: 26 | blog: HBlog | Brno
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo

Kdybych napsal rozsáhlý článek o tom, že LINUX RULEZZZ ! a Windows SUCKS!, tak bych takovou reakci čekal, a snad bych si ji i zasloužil.

Ale jako odpověď na prostý dotaz mi to přijde... řekněme přehnané. Byla ta poslední věta opravdu nutná ?

Z.H.

To jsem psal já ... to není bordel, to je modulární!
4.2.2006 20:22 Jan Jílek | skóre: 6 | blog: Strider
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Někteří lidé trpí komplexem dokonalosti. Sem tam z toho se i dostanou. Nic si z toho nedělejte, já jsem podstatně větší ignorant a váš článek mi objasnil věci o nichž jsem neměl ani tušení. Díky
Čas od času jsem sražen k zemi. Ale vždy vstanu a nedovolím nikomu držet mě na zemi.
5.2.2006 08:34 Spike | skóre: 30 | blog: Communicator | Praha
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Omlouvám se, pochopil jsem ten dotaz jako další jízlivou řečnickou otázku.
5.2.2006 05:30 machr | skóre: 2 | blog: machr
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
> ANO! Bylo by to možné! Dokonce je to záležitost asi tří kliknutí myší.

a pak ses najednou probudil....
(__) (oo) /-------\/ / | || * ||----|| ~~ ~~
4.2.2006 23:05 Petr Soběslavský | skóre: 2 | blog: Sobův blog
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Odpovědět | Sbalit | Link | Blokovat | Admin
Bylo by možné podobné chování počítače (tzn. Suspend při stisku vypínače, apod.) nastavit i ve Windows ?
Bylo, Dell přímo instaluje aplikaci jménem Dell QuickSet s průvodcem. V závislosti na rychlosti čtení to může zabrat 60-90 vteřin.
4.2.2006 23:24 Hrabosh | skóre: 26 | blog: HBlog | Brno
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo

Aha. OK a bez té aplikace ? Spolubydlící má ACER a při stisku vypínače se vypne (překvapivě :o)) a při stisku "Suspend" usne, ale má nějaký odběr.

Kdyby to chtěl zařídit podobně, jako já, musí na to sehnat soft od ACERu, nebo to jde přímo ve Win ?

Z.H.

To jsem psal já ... to není bordel, to je modulární!
5.2.2006 01:37 Honza Jaroš | skóre: 6 | blog: moje_strana_plotu | Bohnice
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
W2K a výše tohle zvládají obvykle bez problémů, jak suspend-to-ram (to, pokud se nepletu, uměly nativně už Win98), tak hibernaci na disk (na to se na notebooky se staršími Windows instalovávaly speciální utility od výrobce). V Ovládacích panelech je možnost nastavit power management včetně akcí při stisku vypínacího tlačítka a zavření displaye nebo po určité době nečinnosti, opravdu je to otázka několika kliknutí myši.
5.2.2006 02:03 Haaja | skóre: 25 | blog: haaja | Praha
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Na mém starém notebooku, kde jsem měl ještě i windows to šlo, v ovládacích panelech ve správě napájení, nebo tak nějak se nastavovaly události po stisku tlačítka vypnout a toho dalšího tlačítka.
5.2.2006 10:58 Petr Soběslavský | skóre: 2 | blog: Sobův blog
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
WinXP: Start > Ovládací panely > Možnosti napájení > Upřesnit

Uspávání mají Windows opravdu vyřešena lépe, funugje to od začátku a spolehlivě. Pro mě to byl i jeden z hlavních důvodů, proč jsem se na svém notebooku po třech dnech bezvýsledných pokusů naučit totéž Ubuntu, vrátil k Windows...
5.2.2006 12:56 Honza Jaroš | skóre: 6 | blog: moje_strana_plotu | Bohnice
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Jo jo, mně trvalo půl roku, než jsem přišel na to, jak oživit display po probuzení ze suspend-to-ram. Vím, že za to může výrobce, je tam nějaký problém s videobiosem (pomohl mi vbetool), ale faktem zůstává, že tohle ve Windows funguje bez problémů a pod Linuxem ty problémy často jsou. Proto se ani moc Spikovi nedivím, že tu závěrečnou otázku pochopil jako provokaci. :-(
5.2.2006 21:11 Hrabosh | skóre: 26 | blog: HBlog | Brno
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo

Ubezpečuju všechny, že to jako provokace míněno nebylo. S uspáváním nemám totiž moc zkušeností.

Co se týká spaní ve WinXP, tak spolubydlící s tím měl na ACERu docela problémy (počítač se dycky tak měsíc po instalaci Win. přestal probouzet).

No a na Linuxu mi to zatím chodí dobře a zas tolik práce mi to nedalo...

Z.H.

To jsem psal já ... to není bordel, to je modulární!
Josef Kufner avatar 5.2.2006 01:30 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Odpovědět | Sbalit | Link | Blokovat | Admin
Ad zvukovka po suspend2ram: Odloaduj moduly před uspaním a naloaduj je zpět po probuzení. Mělo by to pomoct. Nevýhoda: Zvukovku nesmí nic používat.

Ad poslední odstavec: Zbytečná provokace.
Hello world ! Segmentation fault (core dumped)
5.2.2006 21:18 Hrabosh | skóre: 26 | blog: HBlog | Brno
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo

Mě to unloadnout nejde. Module is in use ... Ale díky za tip, teď mi to chodí, jak potřebuju.

Jak už jsem psal, jako provokace to míněno nebylo. Zajímalo mě to, abych pak nekecal blbosti a netvrdil lidem, že výhoda Linuxu je proti Windows v nečem, co se dá ve Win. nastavit na pár kliknutí...

Z.H.

To jsem psal já ... to není bordel, to je modulární!
Josef Kufner avatar 5.2.2006 01:32 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Odpovědět | Sbalit | Link | Blokovat | Admin
Ad zvukovka po suspend2ram: Odloaduj moduly před uspaním a naloaduj je zpět po probuzení. Mělo by to pomoct. Nevýhoda: Zvukovku nesmí nic používat.

Ad poslední odstavec: Zbytečná provokace.
Hello world ! Segmentation fault (core dumped)
5.2.2006 01:43 Honza Jaroš | skóre: 6 | blog: moje_strana_plotu | Bohnice
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
K tomu ještě doplním, že mně po probuzení zvukovka ožije obvykle až po několika vteřinách po znovunatažení modulů alsy, takže s obnovením nastavení mixeru musím chvilku počkat, jinak mám všechny kanály na nule. Nevím, nakolik je tenhle jev obecný...
5.2.2006 12:12 trancelius | skóre: 22
Rozbalit Rozbalit vše default.sh
Odpovědět | Sbalit | Link | Blokovat | Admin
#!/bin/sh
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-power/acpid/files/acpid-1.0.4-default.sh,v 1.1 2005/03/15 19:15:53 ciaranm Exp $

# Default acpi script that takes an entry for all actions

set $*

group=${1/\/*/}
action=${1/*\//}

case "$group" in
        button)
                case "$action" in
                        power)  /etc/hibernate/suspend2
                                ;;
                        sleep)  /etc/hibernate/standby
                                ;;
                        *)      logger "ACPI action $action is not defined"
                
                esac
                
                ;;

        *)
                logger "ACPI group $group / action $action is not defined"
                ;;
esac
takhle by to mělo správně vypadat
5.2.2006 21:21 Hrabosh | skóre: 26 | blog: HBlog | Brno
Rozbalit Rozbalit vše Re: default.sh

Jj..to je asi pravda. Hodil jsem sem první funkční konfiguraci, ale jak na to tak koukám, uznávám, že je to zhovadilost.

Z.H.

To jsem psal já ... to není bordel, to je modulární!
5.2.2006 23:18 Non_E | skóre: 24 | blog: hic_sunt_leones | Pardubice
Rozbalit Rozbalit vše Re: Uspávání notebooku v Gentoo
Odpovědět | Sbalit | Link | Blokovat | Admin
Shodou okolností jsem totéž vyrobil na svém desktopu včera. Naštěstí všechno funguje jak má, jen před hibernací doporučuju odpojit výměnná média.
Only Sith deals in absolutes.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.