Ke mana hibrida ditangguhkan?


16

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


Apa gunanya suspend hybrid ??
LassePoulsen

5
Hybrid suspend adalah saat komputer Anda melakukan suspend-to-disk dan suspend-to-RAM secara bersamaan. Jadi Anda mendapatkan kecepatan resume cepat suspend-to-RAM, tetapi Anda tidak kehilangan sesi Anda jika Anda kehilangan daya atau kehabisan baterai. Jadi pada prinsipnya, ini lebih baik daripada hanya suspend-to-ram atau suspend-to-disk saja. Itulah sebabnya saya bertanya-tanya mengapa tampaknya telah menghilang dari daftar fitur distro Linux modern.
Ryan C. Thompson

Pada tab "Daya Baterai" pada manajer daya, saya melihat opsi untuk "Ketika daya baterai sangat rendah: Hibernasi", mungkin itu menghilangkan kebutuhan untuk penangguhan hibrid?
Jorge Castro

1
@Jorge: Kasing penggunaan lain adalah jika Anda perlu melepas baterai laptop Anda (atau mencabut PC desktop yang ditangguhkan) karena suatu alasan. Jika Anda dalam penangguhan hibrid, itu tidak masalah. Jika Anda menggunakan suspend-to-RAM biasa, Anda harus melanjutkan dan kemudian menangguhkan ke disk.
Ryan C. Thompson

Jawaban:


9

Ada program yang disebut pm-is-supportedyang 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-supportedmenunjukkan bahwa s2both mendukung penangguhan hibrid. Saya telah menginstal s2both, tersedia dalam uswsusppaket tetapi masih melaporkan bahwa hybrid suspend tidak didukung. Saya punya firasat bahwa itu perlu reboot karena itu memperbarui gambar initrd. Saya akan reboot dan melaporkan kembali. Semoga beruntung .

Pembaruan: Menjalankan sudo s2bothmenulis 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 uswsusppaket di ubuntu. The splashypaket (yang digunakan oleh uswsusp) memiliki file konflik dengan lsb-baseyang telah ditinggalkan tidak tetap sejak lela ( https://bugs.launchpad.net/ubuntu/+source/splashy/+bug/328089 )

Coba jalankan sudo s2bothatau sudo pm-suspend-hybrid, lihat apakah itu berfungsi di sistem Anda.


Saya mencoba s2bothdan mendapatkan hasil yang sama seperti Anda. Saya juga mencoba beralih ke kernel tuxonice dan memberi tahu pm-utils untuk menggunakan tuxonice, dan kemudian menggunakan tuxonice hybrid suspend via pm-suspend-hybrid. Layar tidak pernah menyala ketika saya melanjutkan, tetapi Control + Alt + Delete bekerja untuk reboot, jadi saya pikir itu benar-benar berfungsi, tetapi gagal untuk menghidupkan layar.
Ryan C. Thompson

Saya kira itu tidak didukung.
Ryan C. Thompson


0

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 daripada suspend
    jika ["$ METHOD" = "menangguhkan"]; kemudian
        METHOD = 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 hibrid 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 %%] *}" && \
        echo -n "$ {HIBERNATE_MODE}"> / sys / power / disk
        echo -n "disk"> / sys / power / state
+ RET = $?
+ echo -n "$ HIBERNATE_MODE_SAVE"> / sys / power / disk
+ pengembalian "$ RET"
+}
+ fi
+
+ # untuk kernel yang mendukung penangguhan untuk keduanya (mis. penangguhan hibrid)
+ # 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; kemudian
+ 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.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.