Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
uspání_a_hibernace [2012/07/28 19:45]
Ubuntu
uspání_a_hibernace [2019/02/25 18:21] (aktuální)
Řádek 1: Řádek 1:
 +====== Uspání a hibernace ======
  
 +Tento návod je psán pro notebook, ale měl by analogicky fungovat i pro stolní počítače.
 +
 +|Návod je na smetišti! Znamená to, že je zastaralý, a může být více ke škodě než k užitku. Pokud máte zájem, můžete se ho ujmout a přepsat ho do aktuální platné podoby.|
 +
 +Existují dvě cesty, jak uspat (sleep, hibernate) váš notebook. Buď použijete přímo implementaci ACPI obsaženou v jádru nebo vylepšíte pomocí "​hibernate skriptů"​. Druhá varianta se (alespoň na mém notebooku) jeví jako lepší (zcela funkční).
 +
 +===== Podmínky =====
 +Tento text je psán pro notebook Lenovo R6O a systém Ubuntu 6.10. Nicméně bude funovat i jinde, jen možná budete muset provést drobné změny nastavení.
 +
 + :!: Nezapomeňte si všechny důležité upravované soubory zálohovat.
 +
 +===== Část první - ACPI =====
 +Implementace ACPI v distribučním jádru 2.6.17-10-generic není nejlepší, nicméně částečně funkční. I přes maximální snahu nejde vyřešit jeden problém - po probuzení (jen ze suspendu) nefunguje integrovaný [[Wi-Fi]] adaptér (wpa_supplicant jej dokola resetuje). Ale to vyřešíme později hibernate skriptem. Nejprve připravíme ACPI.
 +
 +Otevřete si v textovém editoru soubor **/​etc/​default/​acpi-support** a upravte následující řádky:
 +
 +<​code>​
 +ACPI_SLEEP=true
 +ACPI_HIBERNATE=true
 +ACPI_SLEEP_MODE=standby
 +SAVE_VBE_STATE=true
 +VBESTATE=/​var/​lib/​acpi-support/​vbestate
 +POST_VIDEO=true
 +SAVE_VIDEO_PCI_STATE=true
 +USE_DPMS=true
 +# Pokud používáte kartu ATI, pak ještě "​RADEON_LIGHT=true"​
 +DOUBLE_CONSOLE_SWITCH=true
 +</​code>​Zbylé volby nechte ve výchozím stavu.
 +
 +Dále editujte **/​etc/​X11/​xorg.conf **a do části **"​Device"​** přidejte volbu **Option ​   "​VBERestore"​ "​yes"​**
 +
 +**//​POZOR!!!** Tato volba způsobí zatuhnutí systému, pokud používáte Separate Heads konfiguraci a VBERestore zapnete v "​Device"​ sekcích, které přísluší Separate Heads. Při takové konfiguraci nelze v Separate Heads módu počítač uspávat.//
 +
 +
 +Nyní editujte ještě **/​boot/​grub/​menu.lst** a přidejte do příslušné řádky "​kernel"​ tyto parametry:
 +
 +  - "​resume=/​dev/​vas_swapovaci_soubor"​ a zkontrolujte,​ že váš swap má alespoň dvojnásobek velikosti operační paměti.
 +  - Doporučuje se přidat volbu ec_intr=0, ale suspend na některých systémech funguje i bez toho.
 +
 +Nyní restartujte počítač a zkuste, zda ACPI sleep/​hibernate pracuje.
 +
 +**//​POZOR!** Gnome-power-manager nemusí nutně volat ACPI! Nejlépe ACPI otestujete, pokud pracují tlačítka sleep/​hibernate,​ a nebo ručním spuštěním příslušného skriptu z /​etc/​acpi.//​
 +
 +
 +===== Část druhá - hibernate skript =====
 +Pokud používáte Ubuntu, stačí pouze stahnout skripty hibernate:
 +
 +%% apt-get install hibernate %%
 +
 +Nyní upravíme hlavní skript **/​etc/​hibernate/​common.conf:​**
 +
 +<​code>​
 +SaveClock restore-only
 +IbmAcpi yes                         # Pokud se jedná o notebook IBM
 +# Pokud používáte Xorg driver "​915"​ (vysoké rozlišení u IBM notebooků),​ pak ještě "​Runi915resolution yes"
 +LockGnomeScreenSaver yes
 +UnloadBlacklistedModules yes        # Budeme potřebovat pro síťovou kartu
 +LoadModules auto                    # ... a pak zase zpětně načíst.
 +DownInterfaces eth0 eth1            # Bez toho zas nejede drátová síť
 +UpInterfaces auto                   # ... a zase nahodit.
 +PauseAudio yes
 +EjectCards yes
 +RestartServices laptop-mode
 +EnableVbetool yes                   # Jinak se nevrátí obraz :)
 +RestoreVbeStateFrom /​var/​lib/​vbetool/​vbestate
 +VbetoolPost yes
 +RestoreVCSAData yes
 +SwitchToTextMode yes                # Velmi důležité pro rozsvícení obrazovky.
 +XStatus gnome
 +</​code>​Pak ještě zajistíme korektní probuzení síťové karty. Přidejte do **/​etc/​hibernate/​blacklisted-modules **řádky:
 +
 +<​code>​
 +tg3                 # Napište modul své síťové karty (u mne tg3).
 +speedstep-centrino
 +</​code>​Vše ostatní je připraveno. Nyní tedy začneme testovat. Otevřete konzoli a zadejte: %%sudo /​usr/​sbin/​hibernate -F /​etc/​hibernate/​ram.conf --dry-run %% Počítač se neuspí (dry-run volba), ale projeví se případné chyby v konfiguračním souboru. Když vše proběhne v pořádku, spusťte příkaz bez volby --dry-run. Počítač by se měl uspat a následně probudit (pravděpodobně stitkem tlačítka napájení). Hibernaci spustíte příkazem:​%% sudo /​usr/​sbin/​hibernate -F /​etc/​hibernate/​disk.conf %% Opět lze pro testování použít --dry-run.
 +
 +Až bude konfigurace funkční, je potřeba přiřadit skripty k ACPI tlačítkům. Nejjednodušší je editovat soubory **/​etc/​acpi/​events/​ibm-sleepbtn** a **ibm-hibernatebtn** (pokud máte jiný notebook, hledejte odpovídající soubory). Stačí pouze přepsat řádku action na **action=/​usr/​sbin/​hibernate -F /​etc/​hibernate/​ram.conf** (**disk.conf** pro hibernate tlačítko). Po restartu počítače jej lze uspat/​hibernovat pomocí ACPI tlačítek. Bohužel stále nemusí fungovat uspání přes gnome-power-manager.
 +
 +//Tento způsob uspání je u mne 100% funkční. Uspání přes gnome-power-manager se budu věnovat později, až vyřeším všechny problémy.//​