กลับมาที่ตัวเลือกไฮเบอร์เนต แต่ไม่สามารถดำเนินการต่อจากไฮเบอร์เนต


10

ใน Ubuntu 12.04 ของฉันตัวเลือกไฮเบอร์เนตทำงานได้ดีและใช้ได้ อย่างไรก็ตามฉันติดตั้ง Debian บนพาร์ติชั่นอื่นเมื่อไม่นานมานี้และเมื่อฉันพยายามบูทไปยัง Ubuntu อีกครั้งฉันได้รับข้อความบนหน้าจอ boot splash ที่บอกว่า:

ดิสก์ไดรฟ์สำหรับ / ยังไม่พร้อมหรือยังไม่มีอยู่ รอต่อไป หรือกด s เพื่อข้ามการติดตั้งหรือ M สำหรับการกู้คืนด้วยตนเอง

หลังจากเข้าสู่ Ubuntu ฉันพบว่าตัวเลือกไฮเบอร์เนตของฉันหายไป

อย่างไรก็ตามมีการกู้คืนตัวเลือกไฮเบอร์เนตหรือไม่

แก้ไข: ฉันแก้ไขปัญหาดิสก์ไดรฟ์และฉันได้ตัวเลือกไฮเบอร์เนตกลับมา เมื่อฉันทำ "sudo pm-hibernate" ระบบของฉันไปที่โหมดไฮเบอร์เนต อย่างไรก็ตามเมื่อเปิดเครื่องขึ้นอีกครั้งมันจะทำการบู๊ตตามปกติดังนั้นจึงไม่มีผลของการไฮเบอร์เนต

สิ่งนี้จะแก้ไขได้อย่างไร?

EDIT1: ระบบ - Lenovo ideapad s10-2

ป้อนคำอธิบายรูปภาพที่นี่

EDIT2: / etc / fstab

ป้อนคำอธิบายรูปภาพที่นี่

EDIT3: ภาพหน้าจอของฮาร์ดดิสก์ของฉัน

ป้อนคำอธิบายรูปภาพที่นี่

คำตอบ:


12

ฉันคิดว่าคุณได้ติดตั้ง Debian ในลักษณะที่ใช้เป็นพาร์ทิชัน swap แยกต่างหาก หากคุณยังไม่มีฉันขอแนะนำให้ทำเช่นนั้น (สร้าง swap partition ใหม่และเปลี่ยน/etc/fstabไฟล์ตามลำดับ) เนื่องจากระบบปฏิบัติการอื่นที่เขียนไปยัง swap partition เดียวกันอาจทิ้งข้อมูลการจำศีลที่เก็บไว้ในพาร์ติชันโดยระบบปฏิบัติการอื่น

จากนั้นคุณต้องตรวจสอบให้แน่ใจว่าระบบปฏิบัติการที่คุณต้องการใช้การจำศีลบน นี่คือการกำหนดค่าใน/etc/initramfs-tools/conf.d/resumeไฟล์ คุณต้องใส่ UUID ของพาร์ทิชัน swap ที่ถูกต้องในนั้น (ใช้sudo blkid /dev/$device_nameเพื่อรับ UUID) ในที่สุดคุณต้องอัปเดต ramdisk เริ่มต้น:

sudo update-initramfs -u -k all

ที่ควรแก้ไข


1
มันใช้งานได้ดีอย่างสมบูรณ์ ขอบคุณฉันได้รับการไฮเบอร์เนตกลับมา :)
harisibrahimkv

1
ฉันก็มีปัญหาเช่นเดียวกับการทำงานต่อจากโหมดไฮเบอร์เนต หลังจากเปลี่ยน UUID ของพาร์ติชั่นสว็อปของฉันแล้วระบบของฉันจะไม่ทำงานต่อไม่ว่าฉันจะทำอะไร การแก้ไข/etc/initramfs-tools/conf.d/resumeของฉันโดยการคัดลอกการวาง UUID sudo blkidดูเหมือนจะช่วยแก้ไขปัญหาได้แล้ว
TSJNachos117

2

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

ทดสอบว่าจำศีลทำงาน

หมายเหตุ : บันทึกงานของคุณก่อนที่จะจำศีลเสมอ
คุณควรบันทึกงานทั้งหมดก่อนที่จะจำศีลในคอมพิวเตอร์ในกรณีที่มีบางอย่างผิดปกติและแอปพลิเคชันและเอกสารที่เปิดอยู่ของคุณจะไม่สามารถกู้คืนได้เมื่อคุณเปิดคอมพิวเตอร์อีกครั้ง

คุณสามารถใช้บรรทัดคำสั่งเพื่อทดสอบว่าไฮเบอร์เนตทำงานบนคอมพิวเตอร์ของคุณหรือไม่

  1. เปิด Terminal โดยกด Ctrl+ Alt+ Tหรือค้นหา Terminal ใน Dash

  2. พิมพ์ลงในสถานีและกดsudo pm-hibernate ป้อนรหัสผ่านของคุณเมื่อได้รับแจ้งEnter

  3. หลังจากปิดคอมพิวเตอร์แล้วให้เปิดอีกครั้ง แอปพลิเคชันที่เปิดอยู่ของคุณเปิดใหม่หรือไม่

หากไฮเบอร์เนตไม่ทำงานให้ตรวจสอบว่าพาร์ทิชัน swap ของคุณมีขนาดใหญ่กว่า RAM ที่มีอยู่ของคุณหรือไม่

เปิดใช้งานไฮเบอร์เนต

หากการทดสอบการจำศีลใช้งานได้คุณสามารถใช้sudo pm-hibernateคำสั่งเมื่อคุณต้องการไฮเบอร์เนตต่อไป

คุณยังสามารถเปิดใช้งานตัวเลือกไฮเบอร์เนตในเมนู /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pklaต้องการทำเช่นนั้นใช้โปรแกรมแก้ไขข้อความที่คุณชื่นชอบในการสร้าง เพิ่มสิ่งต่อไปนี้ในไฟล์และบันทึก:

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate; org.freedesktop.login1.hibernate-multiple-sessions
ResultActive=yes

รีสตาร์ทและไฮเบอร์เนตกลับมาแล้ว!

หรือเรียกใช้killall unity-panel-serviceเพื่อรีเซ็ตเมนู

ผู้ใช้บางคนจะต้องเรียกใช้sudo update-grubเพื่อให้ตัวเลือกไฮเบอร์เนตสามารถใช้งานได้ในเมนูพลังงาน ผู้ใช้บางคนอาจต้องออกจากระบบอย่างน้อยจากนั้นเข้าสู่ระบบเพื่อให้ปรากฏในเมนูพลังงาน (ด้านบนขวา)

ที่มา : เอกสาร Ubuntu - Power Hibernate

ที่มา : Ubuntu Wiki - การดีบักเคอร์เนลไฮเบอร์เนต


0

พยายามที่จะเพิ่มnobootwaitตัวเลือกให้กับ/etc/fstabสิ่งที่เป็นเช่นนี้:

/dev/sda1 / ext4 rw,nobootwait 0 1


คุณช่วยอธิบายได้ไหม / etc / fstab ของฉันมีรายการต่อไปนี้สำหรับพาร์ติชัน swap ของฉัน: # swap อยู่บน / dev / sda8 ระหว่างการติดตั้ง UUID = 08a07061-165b-4f0a-87c3-470a02d1ea4c ไม่มี swap sw 0 0 ฉันควรเปลี่ยน "sw" เป็น "rw, nobootwait "?
harisibrahimkv

คุณต้องเพิ่มลงในรูทพอยต์ไม่ใช่การสลับ โพสต์ fstab แบบเต็มของคุณและฉันจะโพสต์เวอร์ชั่นที่อัปเดตให้คุณ
Frantique

ฉันได้เพิ่มไปยังคำถาม
harisibrahimkv

1
ข้อผิดพลาด = remount-ro, nobootwait
Frantique

0

เมื่อเข้าสู่โหมดไฮเบอร์เนต RAM เต็มรูปแบบของคุณจะถูกคัดลอกเพื่อสลับ ดังนั้นคนส่วนใหญ่มีปัญหากับการจำศีลไม่ทำงานสลับของพวกเขามีขนาดเล็กเกินไป

คุณต้องสลับอย่างน้อยเท่ากับ RAM หากคุณมีจำนวนมากของแรมชุดswappiness = 0 ดังนั้นถ้าคุณมี RAM 8GB ให้ใช้การสลับ 8.5 หรือ 9GB หากคุณมี RAM 4GB, การสลับ 6GB เป็นตัวเลขที่ดี


ฉันมี RAM 1GB และมีพื้นที่สว็อป 1.95GB คำถามที่อัปเดตด้วยภาพหน้าจอของฮาร์ดดิสก์ของฉัน
harisibrahimkv

0

เท่าที่ฉันรู้ Linux รวมถึง Ubuntu ควรมี swap space 2x ของ ram ติดตั้งอยู่

วิธีการกำหนดค่าคอมพิวเตอร์บิลด์แบบกำหนดเองของฉันบางอย่างไม่สามารถใช้โหมดไฮเบอร์เนตได้ฉันมีพื้นที่สว็อปเพียงพอแล้ว ภาพ

หากคุณคิดว่าการแลกเปลี่ยนของคุณช้าลงคุณสามารถใช้สคริปต์นี้ที่ฉันพบบนอินเทอร์เน็ต มันล้างการแลกเปลี่ยน

#!/bin/bash

free_data="$(free)"
mem_data="$(echo "$free_data" | grep 'Mem:')"
free_mem="$(echo "$mem_data" | awk '{print $4}')"
buffers="$(echo "$mem_data" | awk '{print $6}')"
cache="$(echo "$mem_data" | awk '{print $7}')"
total_free=$((free_mem + buffers + cache))
used_swap="$(echo "$free_data" | grep 'Swap:' | awk '{print $3}')"

echo -e "Free memory:\t$total_free kB ($((total_free / 1024)) MB)\nUsed swap:\t$used_swap kB ($((used_swap / 1024)) MB)"
if [[ $used_swap -eq 0 ]]; then
    echo "Congratulations! No swap is in use."
elif [[ $used_swap -lt $total_free ]]; then
    echo "Freeing swap..."
    swapoff -a
    swapon -a
else
    echo "Not enough free memory. Exiting."
    exit 1
fi

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