गलत रिज्यूमे डिवाइस के कारण स्लो बूट, लॉन्ग कर्नेल लोड टाइम


44

कुछ समय के लिए, मेरी बूट प्रक्रिया बहुत लंबी (लगभग 1 मिनट) हो रही है।

systemd-analyse time 

दिखाता है कि कर्नेल 35.765 ले रहा है

देखते हुए dmesg, ऐसा लगता है कि समस्या बढ़ते फाइल सिस्टम के साथ है:

...
[    2.186084]  sdb: sdb1 sdb9
[    2.186919] sd 2:0:0:0: [sdb] supports TCG Opal
[    2.186922] sd 2:0:0:0: [sdb] Attached SCSI disk
[    2.499795] ata5: SATA link down (SStatus 0 SControl 300)
[    2.844320] clocksource: Switched to clocksource tsc
[   35.670493] EXT4-fs (dm-0): mounted filesystem with ordered data mode. Opts: (null)
[   35.782128] ip_tables: (C) 2000-2006 Netfilter Core Team
[   35.803610] systemd[1]: systemd 237 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid)
...

मेरा /etc/fstabऐसा दिखता है:

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
/dev/mapper/ubuntu--vg-root /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/sda1 during installation
UUID=3996-2381  /boot/efi       vfat    umask=0077      0       1
#/dev/mapper/ubuntu--vg-swap_1 none            swap    sw              0       0
/dev/mapper/cryptswap1 none swap sw 0 0

मैं इसका निवारण कैसे कर सकता हूं?

संपादित करें: बूट संदेश (ग्रब में शांत विकल्प को हटाने के बाद) को करीब से देख रहा हूं, मुझे एक संदिग्ध रेखा दिखाई दी:

gave up waiting for suspend/resume device

मुझे लगता है कि मेरा स्वैप एन्क्रिप्टेड है, और मुझे भी लगता है कि यूयूआईडी /etc/initramfs/conf.d/resumeकिसी डिवाइस के अनुरूप नहीं है।

क्या मुझे फिर से शुरू / निलंबित करना चाहिए? और कैसे करना है?


6
समस्या वास्तव में `` `आरंभ: रनिंग / स्क्रिप्ट / स्थानीय-प्रीमियर` `यह बूट के दौरान प्रदर्शित की जाती है (यदि आप आसानी से प्राप्त करते हैं)। किसी कारणवश यह प्रीमियर स्क्रिप्ट 30 सेकंड या तो ले रही है।
सुधांशु

1
यह प्रश्न / उत्तर मूल्यवान है क्योंकि यह लुबंटू बायोनिक में एक बग को हल करने में मदद करता है, इसलिए कृपया इसे फिर से खोलने में मदद करें :-)
sudodus

जवाबों:


59

ठीक है, मुझे इसका हल मिला, सुधांशु की टिप्पणी के लिए धन्यवाद।

मेरे स्वैप को एन्क्रिप्ट किए जाने के कारण समस्या थी। इसलिए local-premountinitramfs की स्क्रिप्ट स्वैप डिवाइस की प्रतीक्षा कर रही थी जो उपलब्ध नहीं थी, जब तक कि यह समय समाप्त नहीं हो गया। प्रासंगिक संदेश था gave up waiting for suspend/resume device

इसे अक्षम करने के लिए (जैसा कि स्वैप से फिर से शुरू करना एक एन्क्रिप्टेड स्वैप के साथ संभव नहीं है, और मैं वैसे भी हाइबरनेशन का उपयोग नहीं करता हूं), मैंने इस फाइल को संशोधित किया है /etc/initramfs-tools/conf.d/resume:।

इस फ़ाइल में, एक पंक्ति

RESUME=none

(यूयूआईडी के बजाय जो यहां था) एक फिर से शुरू डिवाइस के लिए प्रतीक्षा को अक्षम कर देगा।

रन

sudo update-initramfs -u

परिवर्तनों को लागू करने के लिए।

सिस्टम अब सामान्य रूप से बूट करता है।


1
मुझे लगता है कि आप बग # 1763611 से प्रभावित हैं , लुबंटू बायोनिक बूट्स कुछ एसएसडी के साथ अन्य उबंटू स्वादों की तुलना में धीमा है । और आपने दिखाया है कि बग को कैसे स्क्वैश किया जाता है:
सुडोडुस

3
प्रतिभाशाली! तय करने के लिए धन्यवाद। यह मुझे मेरे बाल खींच रहा था!
मुरैना

तय करने के लिए धन्यवाद
आदिकारी बिश्वाश २ 16

झ्राम (कोई स्वैप विभाजन) के कारण लंबे समय से समस्या थी। मैंने इसे ठीक किया, धन्यवाद!
पियरे-डेमियन

3

मैंने इसे लिनक्स मिंट (उबंटू पर आधारित) में भी देखा, और कुछ समय बिताया जो गलत हो रहा था।

यह तब होता है यदि आपका सिस्टम LVM पर स्थापित है और स्वैप डिस्क के रूप में LVM वॉल्यूम का उपयोग कर रहा है।

डिवाइस पथ के बजाय एक लंबे समय से स्थायी, आवर्ती बग है जहां फिर से शुरू फ़ाइल में एक यूयूआईडी (जो कि LVM के लिए अमान्य है) है। Https://bugs.launchpad.net/ubuntu/+source/initramfs-tools/+bug/68683030 देखें

आप /etc/initramfs-tools/conf.d/resumeफ़ाइल को संपादित करके और स्वैप ड्राइव के डिवाइस पथ के साथ UUID को बदलकर इसे ठीक कर सकते हैं । निम्नलिखित कमांड स्निपेट आपके लिए यह करेगा, ब्लीक द्वारा पाई और रिपोर्ट की गई पहली स्वैप ड्राइव का उपयोग करते हुए:

sudo bash -c 'mv /etc/initramfs-tools/conf.d/resume /tmp/resume.bak; echo RESUME=$(blkid | \grep -I swap | head -n 1 | cut -d : -f 1) > /etc/initramfs-tools/conf.d/resume'

2

ऊपर या कहीं और उन समाधानों में से किसी ने भी मेरे लिए काम नहीं किया, लेकिन मुझे एक ऐसा समाधान मिला है जो मेरे बूट समय को 2 मिनट और 10 सेकंड से 40 सेकंड तक कम कर देता है।

मैं स्वैप विभाजन बनाने और हटाने का काम करता था और किसी तरह ये लॉग आदि / fstab फ़ाइल में बने रहते थे। इसलिए मेरा सिस्टम उन पहले निर्मित स्वैप विभाजन को माउंट करने की कोशिश कर रहा था जो अब मौजूद नहीं हैं। तो कृपया मुझे समझाएं कि मैंने कदम से कदम क्या किया।

  1. मैंने sudo blkid | grep swapअपने स्वैप विभाजन का पता लगाने के लिए इस कमांड को चलाया । दो थे लेकिन एक वास्तव में मौजूद नहीं है (यह मेरे किसी भी विभाजन का उल्लेख नहीं करता है)।

  2. इसलिए मैं टाइप करके / etc / fstab फ़ाइल को संपादित करने के लिए गया sudo gedit /etc/fstab

  3. तब मुझे एहसास हुआ कि बहुत सारी स्वैप फाइलें हैं, जिन्हें मैंने डिलीट कर दिया था लेकिन किसी तरह इस फाइल में फिर से शुरू हो गई। इसलिए मैंने चरण 1 का उल्लेख किया और उन विभाजनों को हटा दिया जो अब मौजूद नहीं हैं

कृपया पहले दो और बाद में / etc / fstab फ़ाइल स्क्रीनशॉट देखें। इसके बाद सफाई सब कुछ सामान्य के रूप में काम कर रहा है।

यह unedited / etc / fstab फ़ाइल unedited / etc / fstab है

और यहां गैर-मौजूदा स्वैप विभाजन को साफ करने के बाद / etc / fstab


इसने मेरे लिए काम किया। धन्यवाद।
अबनौ हना सिप

2

2 अलग-अलग linux distros स्थापित करने के बाद मुझे यह समस्या हुई। किसी तरह, एक डिस्ट्रो पर, स्वैप विभाजन को एक और यूयूआईडी मिला, जिसे तब उम्मीद थी। मेरा समाधान यह था: सबसे पहले, sudo blkidस्वैप विभाजन के लिए सही UUID प्राप्त करने के लिए दौड़ें । स्वैप के UUID की प्रतिलिपि बनाएँ। इसमें पेस्ट करें /etc/initramfs-tools/conf.d/resumeताकि आप प्राप्त करें RESUME=_the_correct_UUID_। अब sudo update-initramfs -uइस परिवर्तन को लागू करने के लिए चलाएँ ।

अगला, जाँच / आदि / fstab, और स्वैप विभाजन के UUID को बदल दें यदि आवश्यक हो तो भी। (मुझे करना पड़ा)


इससे मुझे मदद मिली। धन्यवाद।
अबनौ हन्ना
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.