it-swarm-id.com

Ke mana hibrida ditangguhkan?

Jadi apa yang terjadi dengan hybrid suspend, di mana ia akan menangguhkan RAM dan disk? Agak panas beberapa tahun yang lalu, tapi sepertinya sudah jatuh. Apakah ada cara untuk mengatur ini dalam versi Ubuntu terbaru?

16
Ryan Thompson

Ada program yang disebut pm-is-supported yang dapat digunakan untuk memeriksa kemampuan menangguhkan sistem.

Di sistem saya, inilah hasilnya (0 berarti didukung, 1 berarti tidak didukung):

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

Halaman manual pm-is-supported menunjukkan bahwa s2both mendukung penangguhan hibrid. Saya telah menginstal s2both, tersedia dalam paket uswsusp tetapi masih melaporkan bahwa hybrid suspend tidak didukung. Saya punya firasat bahwa itu perlu reboot karena memperbarui gambar initrd. Saya akan reboot dan melaporkan kembali. Doakan saya keberuntungan .

Pembaruan: Menjalankan Sudo s2both menulis snapshot ke disk dan ditangguhkan ke RAM dengan benar, namun ketika saya menekan tombol untuk melanjutkan sistem reboot (dan tidak mengembalikan snapshot dari disk).

Saya pikir ada sesuatu yang salah dengan paket uswsusp di ubuntu. Paket splashy (yang digunakan oleh uswsusp) memiliki konflik file dengan lsb-base yang telah dibiarkan tidak diperbaiki sejak lela ( https://bugs.launchpad.net/ubuntu/+source/splashy/+) bug/328089 )

Coba jalankan Sudo s2both atau Sudo pm-suspend-hybrid, lihat apakah itu berfungsi pada sistem Anda.

9
Li Lo

Anda dapat mengaktifkan penangguhan hibrid dengan mengikuti jawaban untuk pertanyaan ini:

3
Jorge Castro

Pertanyaan ini cukup sering muncul di Google sehingga saya pikir ini layak untuk ditabrak. Li menjelaskan penangguhan hibrida dengan sempurna. Namun, s2both membutuhkan uswsusp (sehingga tidak menggunakan in-kernel suspend), dan pm-hsuspend-hybrid melakukan hal yang salah karena tidak dipelihara [1].

Berikut cara mengaktifkan hibrida yang ditangguhkan secara mulus:

  • Ganti panggilan "tunda" untuk melakukan "hybrid_suspend" di pm-utils.
% cat /etc/pm/config.d/00-use-suspend-hybrid
 # Selalu gunakan suspend_hybrid alih-alih menangguhkan 
 jika ["$ METHOD" = "menangguhkan" ]; lalu 
 METODE = suspend_hybrid 
 fi 
  • Buat cadangan dari fungsi/usr/lib/pm-utils/pm
  • Dapatkan tambalan dari sini: https://bugs.freedesktop.org/attachment.cgi?id=68712
    • Patch ini memungkinkan penangguhan hybrid jika tersedia (mis. Pada kernel 3.6+)
  • Baik menerapkannya menggunakan 'patch -p0' atau menggabungkannya secara manual jika itu gagal

Metode ini berfungsi untuk saya di Sony Vaio SVS saya.

PS: Mereproduksi tambalan di sini jika file dihapus di masa depan:

 beda - 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 @@ jika [-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 %%] *}" &&\[.____] gema -n "$ {HIBERNATE_MODE}"> /sys/power/disk
 echo -n "disk"> /sys/power/state[.____.[+ RET = $? 
 + echo -n "$ HIBERNATE_MODE_SAVE"> /sys/power/disk[.____.[+ mengembalikan "$ RET" 
 +} 
 + fi 
 + 
 + # untuk kernel yang mendukung suspend untuk keduanya (yaitu hybrid suspend) 
 + # sejak kernel 3.6 
 + jika [-z "$ SUSPEND_HYBRID_MODULE"] &&\
 + [-f/sys/power/disk] &&\
 + grep -q disk/sys/power/state &&\
 + grep -q menangguhkan/sys/power/disk; lalu 
 + SUSPEND_HYBRID_MODULE = "kernel" 
 + do_suspend_hybrid () 
 + {
 + HIBERNATE_MODE = "menangguhkan" 
 + do_hibernate 
} 
 fi 

Sumber:

[1]: pm-utils mendahului suspend hibrida dalam kernel tersedia di kernel 3.6+. Apa yang pm-suspend-hybrid lakukan adalah menempatkan mesin Anda dalam mode sleep selama 15 menit secara default, dan kemudian hibernate.

0
Rohan Dhruva