Ubuntu 18.04 ไม่สามารถดำเนินการต่อหลังจากจำศีล


17

ไฮเบอร์เนตทำงานอย่างถูกต้องเมื่อฉันใช้ Ubuntu 17.04 หลังจากอัปเกรดเป็น 17.10 ฉันไม่สามารถทำงานต่อได้เนื่องจากหน้าจอสีดำหลังจากทำงานต่อ ( ข้อผิดพลาดนี้ )

หลังจากอัปเกรดเป็น 18.04 ถ้าฉันพยายามเริ่มต้นคอมพิวเตอร์หลังจากไฮเบอร์เนตเครื่องจะบู๊ตราวกับว่าไม่มีการไฮเบอร์เนต


ฉันมีปัญหาเดียวกันกับ 18.04 ฉันคิดวิธีแก้ปัญหาในการระบุพาร์ติชันที่เหมาะสมสำหรับการดำเนินการต่อ แต่ก็ยังหาวิธีทำไม่ได้ ทั้งหมดที่ฉันพบฉัน Google ไม่ทำงานสำหรับฉัน
2819650

พาร์ติชันถูกตั้งค่าอย่างถูกต้องใน /etc/initramfs-tools/conf.d/resume เพื่อแลกเปลี่ยนของฉัน ฉันสงสัยว่าการไฮเบอร์เนตอาจทำไม่ถูกต้องหรือดำเนินการต่อระหว่างการบูตไม่ทำงาน แต่ฉันไม่ทราบวิธีแก้ไขข้อบกพร่องเพิ่มเติม Syslog และ dmesg ไม่ได้ให้เบาะแสใด ๆ ว่าปัญหาคืออะไร
Kamil

คำตอบ:


29

มีการเปลี่ยนแปลงการตั้งค่าเริ่มต้นเมื่อเทียบกับ LTS ก่อนหน้า (16.04) ในกรณีที่ไฮเบอร์เนตของฉันไม่ทำงานจนกว่าฉันจะทำหลายขั้นตอนในหมู่พวกเขาเพิ่มขนาดของไฟล์สลับเปิดใช้งานทำให้แน่ใจว่านโยบายอนุญาตเป็นต้น

นี้ได้อย่างง่ายดายอาจเป็นคำตอบของฉันใน lengthiest StackExchange ทั้งหมดดังนั้นผมจึงพยายามที่จะทำให้ส่วนหัวพรรณนา

บู๊ทส์เนื่องจากไม่มีการไฮเบอร์เนต

จะรอบคอบดูบันทึกของคุณ ( dmesgอาจช่วย) และดูว่ามีอะไรอยู่ มีเหตุผลเมื่อคุณบอกให้ระบบจำศีล แต่จริง ๆ แล้วมันจะไม่หรือมิฉะนั้นจะระงับการใช้ RAM แทน (sleep)

การดูkern.logและsyslogมองหาข้อความที่เกี่ยวข้องกับการจำศีลจะไม่เจ็บเช่นกัน ส่วนที่เริ่มต้นด้วย "ปัญหา" อาจช่วยให้คุณมีปัญหาที่เฉพาะเจาะจง

สลับไฟล์หรือสลับพาร์ติชั่น

หนึ่งในการเปลี่ยนแปลงที่สำคัญคือตอนนี้คุณไม่มีพาร์ติชั่นสว็อป แต่คุณมีไฟล์สว็อป

ไฟล์ Swap อาจไม่ทำงานสำหรับการผสมผสานของฮาร์ดแวร์ / ไดรเวอร์ / ระบบปฏิบัติการและการไฮเบอร์เนต

ปิดการจำศีล

นโยบายอาจปิดหรือไม่อนุญาตการไฮเบอร์เนต

ศัพท์แสง

Suspend to RAM - RAM ช่วยให้ข้อมูลคอมพิวเตอร์เข้าสู่โหมดสลีปได้เร็วขึ้นใช้พลังงานมากขึ้นเมื่อถูกหยุดทำงานตื่นขึ้นเร็วขึ้น บางคนเรียกการนอนหลับนี้

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

ระงับการ RAM ใน Linux โดย Rafael J. Wysocki และ A. Leonard Brown

สิ่งที่จำเป็นต้องทำ - คุณมีพื้นที่เพียงพอหรือไม่

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

  1. free -m จะบอกคุณว่าคุณมีหน่วยความจำใช้และเท่าไหร่ในการแลกเปลี่ยนของคุณ
  2. df -h จะบอกให้คุณทราบว่าคุณมีพื้นที่ว่างในแต่ละจุดเมานท์เท่าใดและมีการใช้งานฟรี ฯลฯ เป็นสิ่งสำคัญเนื่องจากคุณอาจต้องการระบุตำแหน่งของไฟล์ swap ของคุณในภายหลังหรือพาร์ทิชันใดที่จะ "ตัด" ให้มี พื้นที่เพียงพอสำหรับการแลกเปลี่ยนของคุณ
  3. cat fstabควรให้ข้อมูลแก่คุณหากคุณมีพาร์ทิชันสลับหรือไฟล์ ตาม Ubuntu คำถามที่พบบ่อยเกี่ยวกับการไฮเบอร์เนตswapfileอาจไม่สามารถทำงานร่วมกับฮาร์ดแวร์ / ไดรเวอร์บางอย่างได้

หากคุณไม่ได้มีพื้นที่เพียงพอให้ทำตามUbuntu คำถามที่พบบ่อยแลกเปลี่ยน มันบอกวิธีเพิ่มไฟล์สลับเพิ่มเพิ่มตรวจสอบว่ามันถูกใช้ ฯลฯ พร้อมคำสั่งและคำอธิบาย ทรัพยากรที่ดีจริงๆ

ฉันมีพื้นที่ไม่เพียงพอที่จะพอดีกับ RAM ของฉัน!

เอกสารเคอร์เนลพูดว่า:

/ sys / power / image_size ควบคุมขนาดของรูปภาพที่สร้างขึ้นโดยกลไก suspend-to-disk มันสามารถเขียนสตริงที่เป็นตัวแทนของจำนวนเต็มไม่เป็นลบที่จะใช้เป็นขีด จำกัด บนของขนาดภาพเป็นไบต์ กลไก suspend-to-disk จะทำอย่างดีที่สุดเพื่อให้แน่ใจว่าขนาดภาพจะไม่เกินจำนวนนั้น อย่างไรก็ตามหากสิ่งนี้เป็นไปไม่ได้มันจะพยายามระงับโดยใช้ภาพที่เล็กที่สุดเท่าที่จะเป็นไปได้ โดยเฉพาะอย่างยิ่งหากเขียน "0" ลงในไฟล์นี้รูปภาพที่ถูกระงับจะมีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้ การอ่านจากไฟล์นี้จะแสดงขีด จำกัด ขนาดภาพปัจจุบันซึ่งตั้งไว้ที่ 2/5 ของ RAM ที่มีอยู่ตามค่าเริ่มต้น

ดังนั้นลองปรับขนาดภาพของคุณ อย่างไร - ถามคำถามอื่นด้วย

สิ่งที่จำเป็นต้องมี - เคอร์เนลของคุณรองรับ suspend-to-disk หรือไม่?

เคอร์เนลรองรับสิ่งที่อยู่ในรายการ/sys/power/stateดังนั้น:

cat /sys/power/state

ได้รับอนุญาต (เพื่อความรู้ของฉัน) มีรายการรวมถึง: mem, standby, ,freeze diskคำอธิบาย:

  • mem- cat /sys/power/mem_sleepมีความหมายหลายอย่างซึ่งหนึ่งว่าในระบบของคุณคุณจะหาทาง ฉันมี:s2idle [deep]
  • standby - หยุดทำงานเมื่อเปิดเครื่อง (หากรองรับ)
  • freeze - หยุดใช้งานชั่วคราว (STI)
  • disk- ระงับไปยังดิสก์ (STD), ไฮเบอร์เนต นี่ - คุณต้องการ

cat /sys/power/diskจากนั้นเราก็ต้องตรวจสอบ หากคุณมีdisabledแล้วดำน้ำใน BIOS ของคุณมองหา Secure Boot - นั่นเป็นความคิดเดียวที่ฉันสามารถนำเสนอและสิ่งเดียวที่ฉันรู้อาจรบกวนและปิดการจำศีล ในขณะที่ฉันรู้จัก SecureBoot เพียงอย่างเดียวอาจมีการรบกวนอื่น ๆ ดังนั้นการดู BIOS ของคุณจึงเป็นความคิดที่ดีแม้ว่าคุณจะไม่มี "การบูทที่ปลอดภัย" ก็ตาม

อ่านที่นี่:

  1. เคอร์เนลเอกสาร
  2. Debian Wiki เกี่ยวกับการจำศีล

TBH Interfacesแม้ว่าเคอร์เนลของคุณไม่สนับสนุนการจำศีลคุณสามารถทดลองใช้งานได้ในอีกทางหนึ่งให้เลื่อนลงไปที่ส่วน

อ่านสิ่งนี้ - คำเตือนและปัญหา - ไม่มี BTRFS

ในลำดับใดไม่มี:

  1. ชิปเซ็ตบางตัวอาจใช้งานได้ (ไม่มีแหล่งที่ฉันสามารถอ้างอิงได้ที่นี่ดังนั้นสมมติว่านี่เป็นข่าวลือ)
  2. VAIO มีปัญหาคาดว่าจะมีการตั้งค่าสถานะให้ตอบโต้
  3. SecureBoot มักอ้างว่าเป็นการรบกวนหรือปิดการจำศีล
  4. Wake-on-LAN ใช้พลังงานแม้จะอยู่ในโหมดไฮเบอร์เนต
  5. จำนวนโมดูล (กราฟิกโดยเฉพาะ) อาจเริ่มต้นได้ก่อนที่ระบบของคุณจะดำเนินการต่อจากการไฮเบอร์เนตโดยปกตินี่เป็นสาเหตุของหน้าจอสีดำเมื่อกลับมาทำงานต่อ ดู ArchLinux Wiki สำหรับคำแนะนำเกี่ยวกับวิธีแก้ไขข้อบกพร่อง ฉันขอแนะนำ Ubuntu FAQ เกี่ยวกับปัญหาการจำศีล การเรียกดูข้อบกพร่องของ Launchpad อาจทำให้ได้ผลลัพธ์เช่นกัน IIRC มีพารามิเตอร์เคอร์เนลที่ระบุในไม่กี่วินาทีที่ล่าช้าก่อนที่จะดำเนินการต่อ
  6. การอนุญาตให้ขั้นตอนการจำศีลแตกต่างกันสำหรับรุ่น Polkit ที่แตกต่างกัน

อย่าใช้ BTRFS และไฮเบอร์เนตข้อมูลที่เสียหายจะเป็นผลลัพธ์

ฉันต้องการไฮเบอร์เนต - สลับพาร์ติชั่น

มีหลายกรณีเมื่อผู้คนนำหน้าการแลกเปลี่ยนไฟล์และกลับไปที่การสลับพาร์ติชัน หลังจากทั้งหมดมันทำงานบน LTS ก่อนหน้า ฉันไม่ได้ลองดังนั้นจะไม่เสนอตัวชี้

ฉันต้องการไฮเบอร์เนต - ด้วยไฟล์สลับ

  1. ตรวจสอบให้แน่ใจว่าคุณมีพื้นที่เพียงพอ คำถามที่พบบ่อยของการแลกเปลี่ยน Ubuntuบอกคุณว่าคุณต้องการเท่าไหร่คำสั่งจากด้านบนก็ทำได้เช่นกัน หากคุณต้องการข้อมูลเพิ่มเติมที่นี่โปรดถามคำถามอื่นเนื่องจากเป็นหัวข้อที่มีความยาว
  2. เพิ่มไฟล์ swap หรือสร้างไฟล์ใหม่ที่มีขนาดพอเหมาะ (แนะนำให้ใช้, ฉันเห็นด้วยกับ@muru ) และเปลี่ยนเป็นไฟล์/etc/fstabใหม่ การรีบูตเพื่อดูการเปลี่ยนแปลงนั้นทำได้ดี (เก็บข้อมูลสำรองไว้fstabเพื่อให้คุณสามารถย้อนกลับได้ในกรณี
  3. ชี้เคอร์เนลของคุณที่จุดนี้ด้วยพารามิเตอร์ที่เหมาะสมเพื่อให้ทราบได้ว่าจะกลับมาทำงานต่อจากที่ใด
  4. อัปเดต / กำหนดค่าบูตโหลดเดอร์ของคุณและรีบูต

พารามิเตอร์เคอร์เนล? น่ากลัว!

อ่านอย่างละเอียดและตัดสินใจว่าคุณต้องการทำเช่นนั้นหรือไม่ แต่เป็นเพียงวิธีการกำหนดค่าเคอร์เนลของคุณ การไฮเบอร์เนตอาจทำได้ง่ายกว่าsystemdและuswsusp(ดูการเชื่อมต่อด้านล่าง) อาจเป็นไปได้ว่าคุณเช่นเดียวกับฉันในที่สุดจะตัดสินใจว่า suspend-to-RAM นั้นเพียงพอแล้วและคุณไม่ต้องการมี 32GB ในไฟล์ swap (ไม่เหมาะสำหรับคนที่มี SSD หนึ่งเครื่องในแล็ปท็อป) แต่!

  1. จำศีลในการสลับไฟล์จำเป็นต้องresume=รู้ว่าพาร์ติชั่นไฟล์สวอปของคุณอยู่ที่ใดและresume_offset=จะต้องรู้ว่าอยู่ที่ไหนในไฟล์สวอปเพื่อเริ่มการทำงานต่อ
  2. ไฮเบอร์เนตไปยังพาร์ติชันต้องresume=ชี้ไปที่สลับพาร์ติชัน
  3. การแก้ปัญหาหน้าจอสีดำresumedelay=ปัญหากันอาจจะต้อง

เคอร์เนลเอกสารในการชะลอการทำงานต่อจากการไฮเบอร์เนต:

resumedelay = [ไฮเบอร์เนต] ล่าช้า (เป็นวินาที) เพื่อหยุดก่อนที่จะพยายามอ่านไฟล์ประวัติ

พารามิเตอร์ที่จำเป็นสำหรับการแลกเปลี่ยนไฟล์และการไฮเบอร์เนต :

ประวัติ = [SWSUSP]

      Specify the partition device for software suspend

      Format:

      {/dev/<dev> | PARTUUID=<uuid> | <int>:<int> | <hex>}

resume_offset = [SWSUSP]

      Specify the offset from the beginning of the partition
      given by "resume=" at which the swap header is located,
      in <PAGE_SIZE> units (needed only for swap files).

      See Documentation/power/swsusp-and-swap-files.txt

สำหรับการresume=เลือกสไตล์เดียวกันกับrootองค์ประกอบที่มีfstabมา ดังนั้นทั้งสอง/dev/sdaXหรือUUIDหรือ LVM สำหรับการจำศีลไปยังไฟล์ - ระบุพาร์ติชันที่สามารถพบไฟล์ของคุณ

อ่าน:

  1. https://www.kernel.org/doc/Documentation/admin-guide/kernel-parameters.txt
  2. https://wiki.archlinux.org/index.php/Kernel_parameters

ปัญหา - ไม่พบส่วนหัวของการแลกเปลี่ยน

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

สลับไปที่พาร์ติชันหรือแก้ไขไฟล์หรือเปลี่ยนอินเทอร์เฟซที่ใช้สำหรับการจำศีล

ดู: /unix/43508/debian-hibernate-problem-pm-swap-header-not-found

mkswapใช้ในการฟอร์แมตไฟล์อ่านเพิ่มเติมได้ที่นี่

ปัญหา! ไม่อนุญาตการไฮเบอร์เนต!

ทดสอบ: pm-hibernate(ถ้าติดตั้งแพคเกจ pm-utils) หรือsystemctl hibernateบอกคุณว่าคุณไม่ได้รับอนุญาต การตั้งค่าเริ่มต้นใน Ubuntu ตั้งแต่ IIRC 12.04

วิธีแก้ไข: ขึ้นอยู่กับรุ่น Polkit รุ่น Ubuntu และรสชาติของคุณ ... ดูคำถามนี้ นอกจากนี้ArchWiki บน Polkitอาจช่วยได้เช่นกัน

สำหรับมิ้นต์โปรดดู: https://forums.linuxmint.com/viewtopic.php?t=259912

ปัญหา! การไฮเบอร์เนตถูกปิดใช้งานโดยบางสิ่งใน BIOS!

การทดสอบ: มีcat /sys/power/disk disabledบันทึกแสดง "ไม่สามารถจำศีลระบบผ่าน logind: ไม่รองรับการใช้คำกริยา"

วิธีแก้ไข: ค้นหา BIOS ของคุณและค้นหาสิ่งที่มีปัญหา ปิดมัน.

โซลูชันที่ 2: ลองใช้อินเทอร์เฟซไฮเบอร์เนตอื่น

ดู: วิธีเปิดใช้งานการจำศีลใน 16.04.1 ได้อย่างไร (systemd)

อินเตอร์เฟซ

  1. swsusp - อินเตอร์เฟสเคอร์เนลระดับต่ำ ดูข้อกำหนดเบื้องต้น - เคอร์เนลสำหรับไฟล์ใด การเขียนไฟล์โดยตรงอาจทำให้เกิดการหยุดชั่วคราว (ไปยัง RAM, ไปยังดิสก์และไฮบริด) ตามที่ SwapFAQ มีปัญหากับการจำศีลในไฟล์
  2. uswsusp - ArchWikiและเดวิกิพีเดียและคำถาม AskUbuntu ดีกับเขียนขึ้นวิธีการใช้งาน
  3. systemd - ArchWiki กับมัน
  4. pm-utils - AFAIK เป็นชุดของสคริปต์ที่มาจากDebian - ฉันยินดีต้อนรับข้อมูลเพิ่มเติมด้วยตัวเอง

พูดปิด

สำหรับฉันมันเป็นเรื่องของการทำงานเกือบสองวันในการรวบรวมสิ่งนั้น หวังว่านี่จะช่วยคุณ (และคนอื่น ๆ ) แก้ปัญหาของคุณได้เร็วขึ้น ยังมีจุดที่ฉันพลาด แต่ตอนตี 2 และฉันไม่รู้สึกอยากเขียนมากขึ้นในตอนนี้ แน่นอนว่าฉันเปิดรับกับใครก็ได้ที่จะทำให้สิ่งนี้ดีขึ้นดังนั้นออกความเห็น ฉันจะตอบเมื่อฉันนอนทำงาน ฯลฯ :-)

ฉันไม่แน่ใจว่าการจำศีลในดิสก์เป็นสิ่งที่ดี ฉันไปกับการนอนหลับในที่สุด แต่สำหรับฉันปัญหาคือการมีไฟล์ 32GB เพียงเพื่อให้สามารถจำศีลเนื่องจากฉันมักจะหลีกเลี่ยงการแลกเปลี่ยนเลย ไฟล์สลับเริ่มต้นของฉันอยู่ที่ 2GB และส่วนใหญ่ว่างเปล่า YMMV อย่างไรก็ตามโชคดี! และเริ่มต้นด้วยบันทึก!


คำตอบที่ดี! แต่ในที่สุดสิ่งที่แก้ไขกรณีของฉันคือการเชื่อมโยงคำถามที่พบบ่อย Swap และมันบอกให้ฉันเพิ่ม "ประวัติ = UUID" กับตัวแปรในไฟล์ config grub ของฉันและ / หรือ sth คล้ายกับเครื่องมือ initramfs ด้วยเหตุผลบางอย่างฉันมี UUID ผิดที่นั่นซึ่งอาจเป็นปัญหา ดังนั้นฉันขอแนะนำให้ใครบางคนที่มีปัญหาที่คล้ายกันก่อนตรวจสอบสิ่งที่เขียนในคำถามที่พบบ่อย Swap ภายใต้ "ฉันจะเพิ่มหรือแก้ไขพาร์ทิชัน swap ได้อย่างไร" และจุดที่สามเกี่ยวกับการจำศีลที่นั่น
RimaNari

1
"disk - Suspend To Disk (STD), hibernation สิ่งนี้ - คุณต้องการ" ฉันเป็นคนเดียวที่เตะออกจากนี้ ขอบคุณมาก.
spakmad

คำตอบที่ดี! หนึ่งคำพูดเล็ก ๆ : ในหนึ่งในเครื่องของฉันทำงานต่อหลังจากไฮเบอร์เนตทำงานหลังจากความพยายามในการบูตครั้งที่สองเท่านั้น (ไม่มีสิ่งใดปรากฏขึ้นบนจอภาพในความพยายามครั้งแรก) ฉันสามารถแก้ไขได้ว่าติดตั้ง HWE-stack: $ sudo apt install linux-generic-hwe-18.04(สำหรับฮาร์ดแวร์บางตัวlinux-generic-hwe-18.04-edgeอาจมีค่าต่อการถ่ายภาพ)
ตัวเอกฮิโระ

1
อา. ฉันจะไม่จำศีล! ฉันมี RAM 512Gb โอ้ดี ... (ฉันมีพื้นที่เพียงพอใน HDD 10Tb ของฉัน แต่ใช้เวลาหลายชั่วโมงในการรีบูต!)
Alexis Wilke

9

ใช้ UUID ของพาร์ติชัน swap แทนจุดเชื่อมต่อในพารามิเตอร์ RESUME resume=UUID=<#>ทั้ง/etc/default/grubและ/etc/initramfs-tools/conf.d/resume

สร้างรายการสำหรับพาร์ติชัน swap ใน/etc/fstab โดยไม่ต้องจุดยึดอะไรเช่นนี้

# Entry for Swap : 
UUID=# none  swap    sw              0       0

ใน/etc/default/grubฉันใช้รายการแยกต่างหากสำหรับการไฮเบอร์เนตต่อ

# FOR HIBERNATION 
GRUB_CMDLINE_LINUX="resume=UUID=..."

สร้างชุดนโยบายในหน่วยงานท้องถิ่น (pkla)

sudo gedit /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.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes

[Enable hibernate to be run via cron]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=yes

หลังจากอัปเดต initramfs และ GRUB

sudo update-initramfs -u -k all
sudo update-grub

รีบู๊ตเปิดแอพบางตัวและใช้systemctl hibernate(โดยไม่ใช้ sudo) เพื่อดูว่าใช้งานได้หรือไม่


ทำงานได้ดี! ขอบคุณมาก.
Yossarian42

ขอบคุณชายคุณช่วยฉันด้วย!
Vahe Shadunts

1

สำหรับฉันมันใช้งานได้จนถึง 18.04 และหลังจาก 18.04 ฉันเปิดใช้งานมันเหมือนในหลาย ๆ บทความ แต่ทันใดนั้นมันก็หยุดทำงานเมื่อวานนี้ (ทำงานได้ดีสำหรับ 4-5 เดือน)

และนี่คือ ... สิ่งหนึ่งที่ทำให้มันทำงานได้อีกครั้ง ...

บอก grub2 ว่าพาร์ทิชัน swap อยู่ที่ใด:

ขั้นแรกให้ค้นหาพาร์ติชันที่ใช้คำสั่งด้านล่าง:

cat /etc/fstab

ของฉันอยู่บน sda7 ตามผลลัพธ์ต่อไปนี้:

swap อยู่บน / dev / sda7 ระหว่างการติดตั้ง

จากนั้นเพิ่ม Grub2 ในส่วนต่อไปนี้ในบรรทัดต่อไปนี้โดยใช้คำสั่งต่อไปนี้:

sudo gedit / etc / default / grub

GRUB_CMDLINE_LINUX_DEFAULT = "intel_pstate = ปิดใช้งาน Resume = / dev / sda7"

ส่วนที่สำคัญคือ resume=/dev/sda7

/ dev / sda7 ในกรณีของฉัน

จากนั้นอัพเดต Grub ด้วยคำสั่งต่อไปนี้และหลังจากนั้นมันก็เริ่มทำงานได้อย่างสมบูรณ์แบบอีกครั้ง:

sudo update-grub

หลังจากความพยายามหลายครั้งสิ่งนี้เป็นสิ่งเดียวที่ได้ผลบางทีอาจเป็นเพราะการอัปเดตเคอร์เนลที่ทำให้พลาด


0

หวังว่านี้จะช่วยให้ใครบางคน แต่ฉันใช้ popos / ubuntu 19.04 ในการตั้งค่าของฉันฉันสามารถไฮเบอร์เนตโดยใช้ s2disk หรือ pm-hibernate ได้ แต่การดำเนินการต่อล้มเหลว เพื่อแก้ไขปัญหานี้ในขณะที่ระบบของฉันถูกบูทโดยใช้ UEFI แทนที่จะเป็นด้วง ฉันเพิ่งติดตั้งบูตโหลดเดอร์ใหม่ ในการตรวจสอบว่าคุณใช้ UEFI อยู่หรือไม่ให้ทำดังนี้:

[ -d /sys/firmware/efi ] && echo "Installed in UEFI mode" || echo "Installed in Legacy mode"

หากอยู่ในโหมด UEFI จากนั้นฉันทำตามคำแนะนำนี้เพื่อติดตั้ง bootloader อีกครั้งหากคุณใช้ดิสก์ nvme หรือดิสก์ sata: https://support.system76.com/articles/bootloader/

ตรวจสอบให้แน่ใจว่าในตัวเลือก kernalboot ของคุณคุณระบุพาร์ติชันหรือ UUID ของตำแหน่งที่จะดำเนินการต่อเช่นบางสิ่งเช่นนี้:

ประวัติส่วนตัว = UUID = ed8347ed-2eb4-40bc-bc77-cc53b987ed88

คุณสามารถเพิ่มสิ่งนี้ได้โดย: 1) sudo kernel-stub -a "resume = UUID = ... " 2) แก้ไขไฟล์ /etc/initramfs-tools/conf.d/resume และเพิ่ม: resume = UUID = ed8347ed- 2eb4-40bc-bc77-cc53b987ed88

ตรวจสอบไฟล์ / var / log / syslog ของคุณเพื่อสิ่งนี้: 4 ส.ค. 22:26:42 pop-os / usr / bin / kernelstub [19639]: kernelstub: DEBUG kopts: root = UUID = b37019a8-91f5-445f-94c1 -7359a49ed5df ro loglevel ที่เงียบสงบ = 0 systemd .show_status = ประวัติการทำงานที่ผิดพลาด = UUID = ed8347ed-2eb4-40bc-bc77-cc53b987ed88

หากประวัติย่อหายไปหรือไม่ถูกต้องคุณจะต้องอัปเดตเคอร์เนลการบูตอีกครั้ง


0

นอกเหนือจากการตั้งค่า swap resume point ใน grub ที่กล่าวถึงในคำตอบของ Sam73ฉันพบว่า Ubuntu 18.04 ของฉันยังต้องติดตั้งlaptop-mode-tools:

$sudo apt install laptop-mode-tools

จากนั้นเปลี่ยนENABLE_LAPTOP_MODE_ON_AC=1ในไฟล์ปรับแต่ง:

$sudo vim /etc/laptop-mode/laptop-mode.conf

เริ่มโหมดแล็ปท็อปด้วย:

$sudo laptop_mode start

ป.ล. คุณสามารถตรวจสอบว่าแล็ปท็อปเริ่มต้นด้วยหรือไม่

$cat /proc/sys/vm/laptop_mode

หากพิมพ์ออก0มาเครื่องlaptop_modeไม่ทำงานมิฉะนั้นจะแสดงว่าทำงานได้ดี

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