ไฮบริดอยู่ที่ใด


16

แล้วเกิดอะไรขึ้นกับไฮบริดสลีชั่วคราวซึ่งมันจะหยุดทั้งแรมและดิสก์ เมื่อไม่กี่ปีที่ผ่านมามันค่อนข้างร้อนแรง มีวิธีการตั้งค่านี้ใน Ubuntu รุ่นล่าสุดหรือไม่


ประเด็นของไฮบริดสลีคืออะไร ??
LassePoulsen

5
Hybrid suspend คือเมื่อคอมพิวเตอร์ของคุณทำการ suspend-to-disk และ suspend-to-RAM ในเวลาเดียวกัน ดังนั้นคุณจะได้รับความเร็วในการกลับมาทำงานที่รวดเร็วของ suspend-to-RAM แต่คุณจะไม่สูญเสียเซสชันของคุณหากคุณสูญเสียพลังงานหรือแบตเตอรี่หมด ตามหลักการแล้วมันดีกว่า suspend-to-ram หรือ suspend-to-disk เพียงอย่างเดียว นี่คือเหตุผลที่ฉันสงสัยว่าทำไมมันถึงหายไปจากรายการฟีเจอร์ของ distros Linux ที่ทันสมัย
Ryan C. Thompson

ในแท็บ "ใช้พลังงานแบตเตอรี่" ในเครื่องมือจัดการพลังงานฉันเห็นตัวเลือก "เมื่อพลังงานแบตเตอรี่เหลือน้อยมาก: ไฮเบอร์เนต" อาจเป็นเพราะคุณไม่จำเป็นต้องใช้ระบบไฮบริดชั่วคราวหรือไม่
Jorge Castro

1
@Jorge: กรณีการใช้งานอื่นคือถ้าคุณต้องการถอดแบตเตอรี่แล็ปท็อปของคุณ (หรือถอดปลั๊กคอมพิวเตอร์ตั้งโต๊ะที่ถูกระงับ) ด้วยเหตุผลบางอย่าง หากคุณอยู่ในช่วงไฮบริดชั่วคราวก็ไม่เป็นไร หากคุณอยู่ในสถานะ suspend-to-RAM ปกติคุณจะต้องดำเนินการต่อแล้วจึงหยุดการทำงานของดิสก์
Ryan C. Thompson

คำตอบ:


9

มีโปรแกรมที่เรียกpm-is-supportedว่าสามารถใช้เพื่อตรวจสอบความสามารถในการระงับของระบบ

ในระบบของฉันนี่คือผลลัพธ์ (0 หมายถึงได้รับการสนับสนุน 1 หมายถึงไม่ได้รับการสนับสนุน):

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

manpage ของpm-is-supportedแสดงให้เห็นว่า s2both รองรับระบบไฮบริดสลี ฉันได้ติดตั้ง s2both แล้วมีอยู่ในuswsuspแพ็คเกจ แต่ก็ยังรายงานว่าไม่รองรับการระงับแบบไฮบริด ฉันมีลางสังหรณ์ว่าต้องรีบูตเพราะมันอัปเดตอิมเมจเริ่มต้น ฉันจะรีบูตและรายงานกลับ โชคดีที่ต้องการฉัน

อัปเดต: การทำงานsudo s2bothเขียนสแน็ปช็อตไปที่ดิสก์และระงับการใช้ RAM อย่างถูกต้องอย่างไรก็ตามเมื่อฉันกดปุ่มเพื่อให้ระบบเริ่มระบบใหม่ (และไม่ได้เรียกคืนสแน็ปช็อตจากดิสก์)

ฉันคิดว่ามีบางอย่างผิดปกติกับuswsuspแพคเกจในอูบุนตู splashyแพคเกจ (ซึ่งถูกใช้โดยuswsusp) มีความขัดแย้งกับไฟล์lsb-baseที่ได้รับการปล่อยปล่อยตั้งแต่ร่าเริง ( https://bugs.launchpad.net/ubuntu/+source/splashy/+bug/328089 )

ลองเรียกใช้sudo s2bothหรือsudo pm-suspend-hybridดูว่าใช้งานได้กับระบบของคุณหรือไม่


ฉันพยายามs2bothและได้ผลลัพธ์เช่นเดียวกับคุณ ฉันยังพยายามเปลี่ยนเป็นเคอร์เนล tuxonice และบอก PM-utils กับการใช้ tuxonice แล้วใช้ไฮบริด tuxonice pm-suspend-hybridระงับผ่าน หน้าจอไม่เคยเปิดเมื่อฉันกลับมาทำงานต่อ แต่ Control + Alt + Delete ทำงานเพื่อรีบูตดังนั้นฉันคิดว่ามันใช้งานได้จริง แต่ไม่สามารถเปิดหน้าจอได้
Ryan C. Thompson

ฉันเดาว่ามันไม่รองรับ
Ryan C. Thompson


0

คำถามนี้เกิดขึ้นบ่อยพอใน Google ที่ฉันคิดว่ามันคุ้มค่าที่จะชน หลี่อธิบายไฮบริดสลีการระงับอย่างสมบูรณ์แบบ อย่างไรก็ตาม s2both ต้องการ uswsusp (ดังนั้นจึงไม่ใช้ในเคอร์เนลที่ระงับ) และ pm-hsuspend-hybrid นั้นทำสิ่งผิดเพราะมันไม่ได้ถูกกำจัด [1]

นี่คือวิธีการเปิดใช้งานไฮบริดสลีชั่วคราว:

  • ลบล้างการ "หยุดชั่วคราว" เพื่อทำการ "ไฮบริดสเฟียร์" ในช่วงเวลาปกติ
    % cat /etc/pm/config.d/00-use-suspend-hybrid
    # ใช้ suspend_hybrid แทนการระงับ
    if ["$ METHOD" = "ระงับ"]; แล้วก็
        วิธี = suspend_hybrid
    Fi
  • ทำสำเนาสำรองของ / usr / lib / pm-utils / pm-functions
  • รับแพตช์จากที่นี่: https://bugs.freedesktop.org/attachment.cgi?id=68712
    • แพทช์นี้เปิดใช้งานการระงับแบบไฮบริดหากมี (เช่นในเมล็ด 3.6+)
  • ใช้อย่างใดอย่างหนึ่งโดยใช้ 'patch -p0' หรือผสานเองหากล้มเหลว

วิธีนี้ใช้ได้กับ Sony Vaio SVS ของฉัน

PS: สร้างแพตช์ใหม่ที่นี่ในกรณีที่ไฟล์ถูกลบในอนาคต:

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 @@ ถ้า [-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
+ ส่งคืน "$ RET"
+}
+ Fi
+
+ # สำหรับเคอร์เนลที่รองรับการระงับทั้งสองอย่าง (เช่นไฮบริดชั่วคราว)
+ # ตั้งแต่เคอร์เนล 3.6
+ ถ้า [-z "$ SUSPEND_HYBRID_MODULE"] && \
+ [-f / sys / พลังงาน / ดิสก์] && \
+ grep -q ดิสก์ / sys / power / state && \
+ grep -q suspend / sys / power / disk; แล้วก็
+ SUSPEND_HYBRID_MODULE = "เคอร์เนล"
+ do_suspend_hybrid ()
+ {
+ HIBERNATE_MODE = "ระงับ"
+ do_hibernate
    }
 Fi

แหล่งที่มา:

[1]: pm-utils ถือกำเนิดในเคอร์เนลไฮบริดที่มีอยู่ในเมล็ด 3.6+ สิ่งที่ pm-suspend-hybrid ทำไว้ในเครื่องของคุณอยู่ในโหมดสลีปเป็นเวลา 15 นาทีโดยค่าเริ่มต้นแล้วไฮเบอร์เนต

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.