Quale sospensione ibrida?


16

Quindi, cosa è mai successo alla sospensione ibrida, dove avrebbe sospeso sia la RAM che il disco? Faceva un po 'caldo qualche anno fa, ma sembra che sia caduto. C'è un modo per configurarlo nelle recenti versioni di Ubuntu?


Qual è il punto di sospensione dell'ibrido ??
LassePoulsen,

5
La sospensione ibrida si verifica quando il computer esegue la sospensione su disco e la sospensione su RAM contemporaneamente. In questo modo ottieni la velocità di ripristino rapida della sospensione su RAM, ma non perdi la sessione se perdi energia o esaurisci la batteria. Quindi, in linea di principio, è meglio della sospensione su ram o della sospensione su disco da sola. Questo è il motivo per cui mi chiedo perché sembra essere scomparso dagli elenchi delle caratteristiche delle moderne distribuzioni Linux.
Ryan C. Thompson,

Nella scheda "Alimentazione a batteria" in Power Manager vedo un'opzione per "Quando la carica della batteria è estremamente bassa: ibernazione", forse ciò elimina la necessità di una sospensione ibrida?
Jorge Castro,

1
@Jorge: un altro caso d'uso è se è necessario rimuovere la batteria del laptop (o scollegare il PC desktop sospeso) per qualche motivo. Se sei in sospensione ibrida, non importa. Se sei regolarmente in sospensione su RAM, dovresti riprendere e quindi sospendere su disco.
Ryan C. Thompson,

Risposte:


9

Esiste un programma chiamato pm-is-supportedche può essere utilizzato per verificare le capacità di sospensione del sistema.

Sul mio sistema ecco i risultati (0 significa supportato, 1 significa non supportato):

$ pm-is-supported --suspend ; echo $?  
0  
$ pm-is-supported --hibernate ; echo $?
0
$ pm-is-supported --suspend-hybrid ; echo $?
1

La manpage di pm-is-supportedsuggerisce che s2both supporta la sospensione ibrida. Ho installato s2both, disponibile nel uswsusppacchetto ma riporta comunque che la sospensione ibrida non è supportata. Ho la sensazione che abbia bisogno di un riavvio perché ha aggiornato l'immagine initrd. Riavvio e riporto la segnalazione. Augurami buona fortuna .

Aggiornamento: Running ha sudo s2bothscritto l'istantanea su disco e sospesa correttamente su RAM, tuttavia quando ho premuto un tasto per riprendere il sistema riavviato (e non ho ripristinato l'istantanea dal disco).

Penso che ci sia qualcosa di sbagliato nel uswsusppacchetto in Ubuntu. Il splashypacchetto (che viene utilizzato da uswsusp) ha un conflitto di file con il lsb-basequale è stato lasciato libero da Jaunty ( https://bugs.launchpad.net/ubuntu/+source/splashy/+bug/328089 )

Prova a eseguire sudo s2botho sudo pm-suspend-hybrid, vedi se funziona sul tuo sistema.


Ho provato s2bothe ho ottenuto i tuoi stessi risultati. Ho anche provato a passare a un kernel tuxonice e dire a pm-utils di usare tuxonice, e quindi usare l'ibrido tuxonice in sospensione via pm-suspend-hybrid. Lo schermo non si è mai acceso quando ho ripreso, ma Control + Alt + Canc ha funzionato per riavviarsi, quindi penso che abbia effettivamente funzionato, ma non è riuscito ad accendere lo schermo.
Ryan C. Thompson,

Immagino che non sia supportato.
Ryan C. Thompson,


0

Questa domanda si presenta abbastanza frequentemente in Google che penso che valga la pena di essere respinta. Li spiega perfettamente la sospensione ibrida. Tuttavia, s2both richiede uswsusp (quindi non utilizza la sospensione nel kernel) e pm-hsuspend-hybrid fa la cosa sbagliata perché non viene mantenuta [1].

Ecco come abilitare la sospensione ibrida senza problemi:

  • Sovrascrivi la chiamata "suspend" per eseguire un "hybrid_suspend" in pm-utils.
    % cat /etc/pm/config.d/00-use-suspend-hybrid
    # Usa sempre suspend_hybrid invece di suspend
    if ["$ METHOD" = "suspend"]; poi
        METODO = suspend_hybrid
    fi
  • Effettua un backup delle funzioni / usr / lib / pm-utils / pm-
  • Ottieni la patch da qui: https://bugs.freedesktop.org/attachment.cgi?id=68712
    • Questa patch abilita la sospensione ibrida se disponibile (ad es. Sui kernel 3.6+)
  • Applicalo usando 'patch -p0' o uniscilo manualmente se fallisce

Questo metodo funziona per me sul mio Sony Vaio SVS.

PS: Riproduzione della patch qui nel caso in cui il file venga eliminato in futuro:

diff --git a / pm / pm-functions.in b / pm / pm-functions.in
--- a / pm / pm-functions.in
+++ b / pm / pm-functions.in
@@ -316,8 +316,28 @@ if [-z "$ HIBERNATE_MODULE"] && \
    {
        [-n "$ {HIBERNATE_MODE}"] && \
        grep -qw "$ {HIBERNATE_MODE}" / sys / power / disk && \
+ HIBERNATE_MODE_SAVE = $ (cat / sys / power / disk) && \
+ HIBERNATE_MODE_SAVE = "$ {HIBERNATE_MODE_SAVE ## * [}" && \
+ HIBERNATE_MODE_SAVE = "$ {HIBERNATE_MODE_SAVE %%] *}" && \
        echo -n "$ {HIBERNATE_MODE}"> / sys / power / disk
        echo -n "disk"> / sys / power / state
+ RET = $?
+ echo -n "$ HIBERNATE_MODE_SAVE"> / sys / power / disk
+ ritorna "$ RET"
+}
+ fi
+
+ # per i kernel che supportano la sospensione di entrambi (ovvero la sospensione ibrida)
+ # dal kernel 3.6
+ if [-z "$ SUSPEND_HYBRID_MODULE"] && \
+ [-f / sys / power / disk] && \
+ grep -q disk / sys / power / state && \
+ grep -q suspend / sys / power / disk; poi
+ SUSPEND_HYBRID_MODULE = "kernel"
+ do_suspend_hybrid ()
+ {
+ HIBERNATE_MODE = "sospendi"
+ do_hibernate
    }
 fi

fonti:

[1]: pm-utils precede la sospensione ibrida nel kernel disponibile nei kernel 3.6+. Quello che fa pm-suspend-hybrid è mettere la macchina in modalità di sospensione per 15 minuti per impostazione predefinita, quindi ibernare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.