दोपहर-हाइबरनेट के बजाय हाइबरनेट का उपयोग करते हुए बल हाइबरनेट करें


15

मैं 18.04 चला रहा हूं और अपने लैपटॉप के ढक्कन के बंद होने पर अपने सिस्टम को शाम-हाइबरनेट के बजाय हाइबरनेट का उपयोग करने की कोशिश कर रहा हूं।

मेरे पास 16GB RAM पर 20GB का एक स्वैप विभाजन है, इसलिए पर्याप्त स्थान है।

जब मैं pm-hibernate का उपयोग करता हूं, तो मुझे एक छोटी सी एची त्रुटि मिलती है जो हाइबरनेट करने और बहाल करने दोनों को बहुत जल्दी से पॉप अप करती है जो मैं नहीं पढ़ सकता। जबकि हाइबरनेट इस अर्थ में काम करता है कि यह डिस्क को डंप करने और डिस्क से पुनर्स्थापित करने के लिए लगता है, यह एक नींद की स्थिति है कि यह एक सामान्य दर पर बैटरी का उपयोग करता है, बजाय पूरी तरह से बंद करने और बैटरी उपयोग को रोकने के।

हालाँकि, जब मैं हाइबरनेट का उपयोग करता हूं:

sudo apt-get install hibernate

और भाग खड़ा हुआ:

sudo hibernate

और उस से बहाल, मैं नोटिस मेरी मशीन वास्तव में बंद करता है --- एल ई डी धड़कते बंद करो, --- और बैटरी का उपयोग शून्य हो जाता है। यह वह व्यवहार है जिसे मैं देखना चाहता हूं जब मेरा ढक्कन बंद हो जाता है, न कि नींद का व्यवहार जो बैटरी का उपयोग करता है जैसे कि मैं कंप्यूटर का सक्रिय उपयोग कर रहा था।

मैंने इन गाइडों का पालन किया है:

संशोधित

/etc/systemd/logind.conf

शामिल करना:

#HandleLidSwitch=suspend
HandlelidSwitch=hibernate

और मेरे स्वैप विभाजन को इसमें जोड़ा:

/etc/default/grub

सही रिज्यूमे = लिंक शामिल करने के लिए, और विशेष रूप से s2disk के साथ अनुरोध किया है:

sudo cat /etc/pm/config.d/00sleep_module
SLEEP_MODULE="swsusp"

मैंने निम्नलिखित संबंधित प्रश्नपत्र पढ़े हैं:

मैंने लेनोवो और आर्क मंचों पर इन लिंक को भी पढ़ा है:

मैं यह कैसे सुनिश्चित कर सकता हूं कि ढक्कन-क्लोज द्वारा बुलाए गए हाइबरनेट को pm-hibernate नहीं है?

अपडेट करें

यह अभी भी एक समस्या है और अभी भी ubuntu के साथ कार्बन X1 6 वें जीन को मौलिक रूप से बेकार बना देता है। कोई भी समाधान जो इसे ठीक कर सकता है और शायद अतिरिक्त रूप से एक लॉगिन प्रॉम्प्ट जोड़ सकता है लगभग 4 साल पहले से विंडोज मशीन के रूप में अच्छा हो सकता है ...);


@ मेरीटॉप्स मैं इस मुद्दे को मेरे लिए हल कर सकता हूं, कृपया एक नजर डालिए askubuntu.com/questions/1028947/… पर
क्रिस्टोफर विल

1
क्या आप कृपया पूर्ण हाइबरनेट-रिज्यूम चक्र से लॉग डेटा को अपने प्रश्न में जोड़ सकते हैं? इसमें होना चाहिए /var/log/pm-suspend.log। धन्यवाद।
डेविड फ़ॉस्टर 8

@Mittenchops को यकीन नहीं है लेकिन शायद मेरा मुद्दा आपके साथ जुड़ा है। मेरा एक लेनोवो हार्डवेयर भी है।
वीआईबीई

1
मैं हाइबरनेशन का उपयोग नहीं करता, लेकिन आप नाम बदलने /usr/sbin/pm-hibernateका प्रयास कर सकते हैं /usr/sbin/pm-hibernate.OLD। फिर /usr/sbin/pm-hibernateबैश स्क्रीप्ट्री बनाएं जिसमें hibernateकमांड हो। type -a hibernateकमांड के लिए सटीक मार्ग खोजने के लिए उपयोग करें । यह मेरे सिस्टम पर मौजूद नहीं है क्योंकि मैंने इसे स्थापित नहीं किया है।
WinEunuuchs2Unix

मैंने अपना उत्तर रैपर स्क्रिप्ट के साथ 14 जुलाई 2018 को प्रस्तावित किया है।
WinEunuuchs2Unix

जवाबों:


1

मुझे भी URL पास करने से नफरत है इसलिए मैं जानकारी को कॉपी और पेस्ट करूँगा और नीचे वेब पेज संलग्न करूँगा। मुझे आपके लिंक में यह नहीं दिख रहा है।

इसे पढ़ते हुए, मैंने देखा कि यदि आपने btrfs फ़ाइल सिस्टम के साथ स्वरूपित किया है तो हाइबरनेशन काम नहीं कर सकता है? तो, Ubuntu 16.04 में स्थायी रूप से हाइबरनेशन कैसे सक्षम किया जाता है?

Ubuntu हाइबरनेशन प्रक्रिया को स्थायी बनाने के लिए, आपको कमांड लाइन पर एक टेक्स्ट एडिटर का उपयोग करके एक नई फ़ाइल बनाने की आवश्यकता है:

sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

सिस्टम को हाइबरनेशन विकल्प को सक्षम करने के लिए रूट विशेषाधिकारों की आवश्यकता होती है, इसलिए, कमांड सुडो को जोड़ा जाना चाहिए। आप अन्य पाठ संपादकों जैसे vi, gedit, emacs इत्यादि का उपयोग कर सकते हैं।

अब, निम्न पाठ को एक फाइल में कॉपी और पेस्ट करें (माउस का उपयोग करें; कीबोर्ड शॉर्टकट काम नहीं करेगा):

[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

प्रेस CTRL+ Oको बचाने के लिए, और CTRL+ Xनैनो संपादक से बाहर निकलने के लिए।

अब, अपने सिस्टम का लॉगआउट करें और फिर दोबारा लॉगिन करें। अब आपको शट डाउन और सस्पेंड विकल्पों के साथ एक हाइबरनेट विकल्प दिखाई देगा।

आपकी सुविधा के लिए लिंक है: https://fossbytes.com/enable-disable-hibernate-option-ubuntu-power-menu/


2
यह 18.04 में काम करने के लिए प्रकट नहीं होता है
Mittenchops

1

दो विकल्प

पहला विकल्प (सूचीबद्ध दूसरा) journalctlहाइबरनेशन से संबंधित संभावित त्रुटि संदेशों की समीक्षा करना है। यदि पहला विकल्प परिणाम उत्पन्न नहीं करता है तो दूसरा विकल्प एक रैपर स्क्रिप्ट बनाना है जो pm-hibernate`हाइबरनेट के साथ बदलता है ।

आवरण स्क्रिप्ट बनाएँ

एक आवरण स्क्रिप्ट बनाना hibernateप्रतिस्थापित करने की अनुमति देता है pm-hibernate

खोजें निर्देशिका कमांड में स्थित हैं

आवरण स्क्रिप्ट बनाने से पहले आपको यह जानना होगा कि कौन सी निर्देशिकाएं hibernateऔर pm-hibernateकमांड रहते हैं। इन दो आदेशों का उपयोग करें:

$ locate bin/hibernate
/mnt/c/Program Files (x86)/CyberPower PowerPanel Business Edition/bin/hibernate.dll

$ locate bin/pm-hibernate
/mnt/clone/usr/sbin/pm-hibernate
/mnt/old/usr/sbin/pm-hibernate
/usr/sbin/pm-hibernate

आप जो रैपर स्क्रिप्ट बनाना चाहते हैं वह होगी /usr/sbin/pm-hibernate। मेरे पास hibernateपैकेज स्थापित नहीं है इसलिए पहली खोज में केवल एक विंडोज उपयोगिता मिलती है। पैकेज फ़ाइल लिस्टिंग के अनुसार , इसे /usr/sbin/hibernateअन्य फ़ाइलों के एक जोड़े के साथ प्रकट करना चाहिए ।

बैकअप मूल फ़ाइल

पहले हम मूल फ़ाइल की एक ऑन-लाइन बैकअप प्रतिलिपि बनाना चाहते हैं:

sudo cp -a /usr/sbin/pm-hibernate /usr/sbin/pm-hibernate.bak

अगला मूल फ़ाइल हटाएं:

sudo rm -f /usr/sbin/pm-hibernate

आवरण लिपि बनाएँ

नोट: एक आवरण स्क्रिप्ट के बजाय कई लोगों को इसके लिए एक प्रतीकात्मक लिंक बनाना आसान लगता pm-hibernateहै hibernate: नरम या प्रतीकात्मक लिंक कैसे बनाएं?

मैं का उपयोग करना चाहते geditसंपादित करने के लिए, लेकिन आप के साथ यह जगह ले सकता है nanoया vimया जो भी आप पसंद करते हैं संपादक:

sudo -H gedit /usr/sbin/pm-hibernate

एक खाली फाइल दिखाई देगी। निम्नलिखित पंक्तियों में चिपकाएँ

#!/bin/bash
# Wrapper script to replace pm-hibernate with hibernate package
/usr/sbin/hibernate "$@"

आवरण स्क्रिप्ट को निष्पादन योग्य में बदलें

वर्तमान में रैपर स्क्रिप्ट एक नियमित फ़ाइल है। हमें इसे एक निष्पादन योग्य वस्तु में बदलने की आवश्यकता है:

sudo chmod a+x /usr/sbin/pm-hibernate

अब हमारे पास एक ऑपरेशनल रैपर स्क्रिप्ट है, इसलिए हर बार इसके बजाय रन pm-hibernateकहा जाता है hibernate। जैसा कि शीर्ष पर उल्लेख किया गया है, आपको journalctlएक आवरण स्क्रिप्ट बनाने से पहले पहले (अगले वर्णित) की समीक्षा करनी चाहिए ।

समीक्षा journalctl

संभावित समस्याओं के लिए आप grepहाइबरनेशन संदेश दे सकते हैं journalctl

मैं हाइबरनेट का उपयोग नहीं करता, लेकिन मैं सस्पेंड का उपयोग करता हूं। निम्न आदेश मुझे उन सभी संदेशों को देखने की अनुमति देता है suspendजिनसे आप प्रतिस्थापित करेंगे hibernate:

$ journalctl -b | grep -i suspend
Oct 09 22:26:33 alien eyesome[21740]: Lid Open/Close: Wait 3 seconds to see if suspending
Oct 09 22:26:48 alien systemd[1]: Starting TLP suspend/resume...
Oct 09 22:26:48 alien systemd[1]: Started TLP suspend/resume.
Oct 09 22:26:48 alien systemd[1]: Starting Suspend...
Oct 09 22:26:48 alien systemd-sleep[22938]: /lib/systemd/system-sleep/sound: Going to suspend...
Oct 09 22:26:48 alien eyesome[22952]: Wakeup: Going to suspend.  Creating: /tmp/eyesome-is-suspending
Oct 09 22:26:49 alien systemd-sleep[22938]: Suspending system...
Oct 10 04:26:38 alien kernel: PM: Suspending system (mem)
Oct 10 04:26:38 alien kernel: Suspending console(s) (use no_console_suspend to debug)
Oct 10 04:26:38 alien kernel: PM: suspend of devices complete after 1142.044 msecs
Oct 10 04:26:38 alien kernel: PM: late suspend of devices complete after 19.766 msecs
Oct 10 04:26:38 alien kernel: PM: noirq suspend of devices complete after 61.505 msecs
Oct 10 04:26:38 alien kernel: Suspended for 21583.011 seconds
Oct 10 04:26:38 alien eyesome[23137]: Lid Open/Close: Wait 3 seconds to see if suspending
Oct 10 04:26:38 alien systemd-sleep[22938]: /lib/systemd/system-sleep/sound: Waking up from suspend...
Oct 10 04:26:38 alien eyesome[23168]: Wakeup: Called from suspend.
Oct 10 04:26:41 alien systemd[1]: Started Suspend.
Oct 10 04:26:41 alien systemd[1]: Stopping TLP suspend/resume...
Oct 10 04:26:41 alien systemd[1]: Reached target Suspend.
Oct 10 04:26:41 alien systemd[1]: suspend.target: Unit is bound to inactive unit systemd-suspend.service. Stopping, too.
Oct 10 04:26:41 alien systemd[1]: Stopped target Suspend.
Oct 10 04:26:42 alien systemd[1]: Stopped TLP suspend/resume.
Oct 10 04:26:52 alien eyesome[24459]: Daemon: Removed file: /tmp/eyesome-is-suspending
Oct 10 05:47:09 alien eyesome[12434]: Lid Open/Close: Wait 3 seconds to see if suspending
Oct 10 05:51:43 alien systemd[1]: Starting TLP suspend/resume...
Oct 10 05:51:44 alien systemd[1]: Started TLP suspend/resume.
Oct 10 05:51:44 alien systemd[1]: Starting Suspend...
Oct 10 05:51:44 alien systemd-sleep[28353]: /lib/systemd/system-sleep/sound: Going to suspend...
Oct 10 05:51:44 alien eyesome[28367]: Wakeup: Suspending.  Creating /tmp/eyesome-is-suspending
Oct 10 05:51:45 alien systemd-sleep[28353]: Suspending system...
Oct 10 16:30:59 alien kernel: PM: Suspending system (mem)
Oct 10 16:30:59 alien kernel: Suspending console(s) (use no_console_suspend to debug)
Oct 10 16:30:59 alien kernel: PM: suspend of devices complete after 623.519 msecs
Oct 10 16:30:59 alien kernel: PM: late suspend of devices complete after 19.654 msecs
Oct 10 16:30:59 alien kernel: PM: noirq suspend of devices complete after 61.549 msecs
Oct 10 16:30:59 alien kernel: Suspended for 38348.943 seconds
Oct 10 16:30:59 alien eyesome[28563]: Lid Open/Close: Wait 3 seconds to see if suspending
Oct 10 16:30:59 alien systemd-sleep[28353]: /lib/systemd/system-sleep/sound: Waking up from suspend...
Oct 10 16:30:59 alien eyesome[28599]: Wakeup: Called from suspend.
Oct 10 16:31:02 alien systemd[1]: Started Suspend.
Oct 10 16:31:02 alien systemd[1]: Stopping TLP suspend/resume...
Oct 10 16:31:02 alien systemd[1]: Reached target Suspend.
Oct 10 16:31:02 alien systemd[1]: suspend.target: Unit is bound to inactive unit systemd-suspend.service. Stopping, too.
Oct 10 16:31:02 alien systemd[1]: Stopped target Suspend.
Oct 10 16:31:03 alien systemd[1]: Stopped TLP suspend/resume.
Oct 10 16:31:13 alien eyesome[30020]: Daemon: Removed file: /tmp/eyesome-is-suspending

sudo -H /usr/sbin/pm-hibernateसंपादक कैसे खुलता है? मैं निर्देशों का पालन करने की कोशिश कर रहा हूं, मान्यताओं को बनाना नहीं चाहता
स्टीवर्ट

1
@ स्टीवर्ट अच्छा कैच। इसे पढ़ना चाहिए sudo -H gedit /usr/sbin/pm-hibernateक्योंकि मैंने अभी-अभी बदलाव किया है।
विनयुनुच्स

1
@ स्टीवर्ट क्या आप ढक्कन-बंद, पावर बटन या मेनू विकल्प के साथ हाइबरनेट कर रहे हैं?
विनयुनुच्स

1
अंत में इसे ठीक कर दिया! आपके सुझाव ने मुझे पर्याप्त सुराग दिया, कि कुछ गूगल-फू के साथ, मैं unix.stackexchange.com/a/386837
स्टीवर्ट

1
@Stewart सुनकर खुशी हुई। यूनिक्स और लिनक्स उत्तर को इंगित करने के लिए धन्यवाद। मैंने इसे वोट किया।
WinEunuuchs2Unix
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.