अद्यतन ९
मैंने एक प्रयोग करने की कोशिश करने का फैसला किया। मैंने अपने डेस्कटॉप से SSD को हटा दिया, और अस्थायी रूप से अपने डेल अक्षांश लैपटॉप में डाल दिया। लो और निहारना, यह initrd
तेजी के एक आदेश पर लोड किया , बूट समय से 6 सेकंड शेविंग ...
मैं अब थोड़ा उलझन में हूँ ... शायद GRUB के पास मेरी मदरबोर्ड की चिपसेट के साथ कोई समस्या है?
अद्यतन 8
इसलिए मैंने एचडीडी गतिविधि प्रकाश के बारे में कुछ दिलचस्प देखा। लोड करते समय initrd
, यह लगभग ऐसा है जैसे प्रकाश को 10% शुल्क चक्र या कुछ पर PWMed किया जा रहा है। यह मुझे आश्चर्यचकित करता है यदि GRUB के रीड को ऑप्टिमाइज़ नहीं किया गया है, तो शायद ऐसा ही कुछ ऐसा है कि इमेज को बाइट स्ट्रीम के रूप में पढ़ने के बजाय प्रत्येक बाइट को पढ़ने के लिए OS कॉल करना पड़ता है?
अद्यतन 7
ऐसा प्रतीत होता है कि प्रारंभिक रैमडिस्क लोड करना मुद्दे का एक बड़ा हिस्सा है।
GRUB के अंदर, मैंने Cमैनुअल कमांड प्रॉम्प्ट के लिए दबाया । मैं तब एक समय में अपने डिफ़ॉल्ट कॉन्फ़िगरेशन से हर एक पंक्ति को टाइप करने के लिए आगे बढ़ा (उन यूयूआईडी को इनपुट करना दर्दनाक था!) , और उस समय को नोट किया जब कमांड पूरा हो गया था। यहाँ मैं क्या पाया:
- अधिकांश कमांड तुरंत पूरा हो गया
- कर्नेल को लोड करने की कमांड में लगभग एक सेकंड लगा
- प्रारंभिक रैमडिस्क को लोड करने की कमांड में 7 सेकंड लगे
कॉन्फ़िगरेशन फ़ाइल से सभी पंक्तियों में टाइप करने के बाद, मैं फिर चलाने के लिए आगे बढ़ता हूं boot
। जब मैंने लॉगिन स्क्रीन दिखाई दी, उस समय से मैंने प्रवेश किया, इसमें लगभग 7.5 सेकंड का समय लगा।
ब्याज की तथ्य यह है कि यह लोड हो रहा है initrd छवि 36MB है। तो अगर इसे लोड करने में 7 सेकंड का समय लगता है, तो यह केवल 5MB / सेकंड पर इसे पढ़ रहा है!
मेरे टॉवर पर डिस्क गतिविधि प्रकाश पूरे 7 सेकंड के लिए रहता है ...
यहाँ भी initrd के बारे में विकिपीडिया पृष्ठ से एक दिलचस्प स्निपेट है :
अन्य लिनक्स वितरण (जैसे फेडोरा और उबंटू) एक अधिक सामान्य initrd छवि उत्पन्न करते हैं। ये केवल रूट फाइल सिस्टम (या इसके UUID) के डिवाइस नाम से शुरू होते हैं और बूट समय पर बाकी सब कुछ पता लगाना चाहिए। इस मामले में, सॉफ़्टवेयर को रूट फ़ाइल सिस्टम को माउंट करने के लिए कार्यों का एक जटिल झरना प्रदर्शन करना होगा
अद्यतन ६
नाथन उस्मान ने चैट में एकल-उपयोगकर्ता मोड में बूट समय का अनुरोध किया।
जिस समय मैं F10GRUB में हिट करता हूं, जिस समय प्रॉम्प्ट दिखाई देता है, उसमें 13 सेकंड का समय लगता है।
इसके अलावा, मैं चैट में ज़न्ना और रिनविंड से बात कर रहा था और दोनों के पास पावर बटन हिट होने के समय से 8 सेकंड का स्टार्टअप है। मेरा 20 सेकंड GRUB से है। अगर मैंने POST समय गिना, तो यह और भी लंबा होगा!
अद्यतन ५
उबंटू मेरी SSD को 550MB / सेकंड की अधिकतम गति से पढ़ सकता है ...
अद्यतन ४
इसलिए मैंने quiet splash $vt_handoff
अपने लैपटॉप पर GRUB में बूट कमांड से मापदंडों को हटा दिया (ध्यान रखें कि इस लैपटॉप में SSD नहीं है) , और बूट अनुक्रम के दौरान एक बहुत ही दिलचस्प बात देखी:
यह 15 सेकंड के लिए इस लाइन पर लटका रहता है:
[ 4.374390] init: plymouth-upstart-bridge respawnng too fast, stopped
यहाँ (निम्न गुणवत्ता वाली) तस्वीर है:
निश्चित नहीं है कि इसका क्या महत्व है ...
अपडेट ३
मैंने अपनी अन्य मशीनों में से एक का बूटअप 14.04 रन किया (ध्यान रखें कि इस मशीन में SSD नहीं है) , और जब तक मैं GRUB में प्रवेश करता हूं, जब तक लॉगिन स्क्रीन दिखाई नहीं देती है, इसमें 40 सेकंड लगते हैं।
एंट्री मारने के बाद, यह 20 सेकंड के लिए उसी खाली पर्पल स्क्रीन पर बैठता है, जिसके बाद उबंटू एनीमेशन लोड होता है और लॉगिन स्क्रीन पर उतरने से पहले इसे 20 सेकंड का समय लगता है।
मैंने आउटपुट से देखा dmesg
, लेकिन मैं यह नहीं बता सकता कि यह कहां से समाप्त हो रहा है। मुझे लगता है कि यह 25 सेकंड में समाप्त हो गया। यहाँ अंतिम कुछ पंक्तियाँ हैं:
[ 24.916824] wlan0: associated
[ 24.916852] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 25.215550] init: kdm main process (869) killed by TERM signal
[ 25.441216] vboxdrv: module verification failed: signature and/or required key missing - tainting kernel
[ 25.445587] vboxdrv: Found 2 processor cores.
[ 25.446142] vboxdrv: fAsync=0 offMin=0x18c offMax=0x960
[ 25.446228] vboxdrv: TSC mode is 'synchronous', kernel timer mode is 'normal'.
[ 25.446230] vboxdrv: Successfully loaded version 4.3.36_Ubuntu (interface 0x001a000b).
[ 25.476940] vboxpci: IOMMU not found (not registered)
[ 33.174926] init: plymouth-upstart-bridge main process ended, respawning
[ 36.495811] init: anacron main process (933) killed by TERM signal
अगर मैंने इसकी सही व्याख्या की, तो यह एक सार्वभौमिक GRUB मुद्दा प्रतीत होता है।
अपडेट २
मैं यह पुष्टि करने में सक्षम था कि यह GRUB मुद्दा है जब GRUB में बैकग्राउंड के रंग को हरे रंग में सेट करके कमांड लाइन का उपयोग करके हरे रंग की पृष्ठभूमि का उपयोग Cकिया जाता है।
जब मैं एंट्री मारता हूं, तो मुझे उबंटू बूट एनीमेशन लोड होने से पहले ~ 15 सेकंड के लिए एक खाली हरी स्क्रीन मिलती है ...
अपडेट करें
मुझे लगता है कि मुद्दा यह है कि कर्ब की छवि को लोड करने के लिए GRUB को लंबा समय लग रहा है।
सवाल
मैंने अपने सैमसंग 850 प्रो 512 जीबी एसएसडी पर उबंटू 16.04 स्थापित किया है, और मुझे समझ नहीं आ रहा है कि मेरे बूट का समय 20 सेकंड क्यों है। (जब से मैंने ग्रब में एंट्री मारा)। ध्यान रखें कि मैं जो 20 संदर्भित कर रहा हूं वह लॉगिन स्क्रीन पर 17 है, और फिर डेस्कटॉप पर एक और 3)
यह भी सुनिश्चित करें कि यह प्रासंगिक है या नहीं, लेकिन:
- उबंटू एमबीआर मोड में स्थापित है, क्योंकि मैं यूईएफआई को तुच्छ समझता हूं।
- मेरे पास मालिकाना एनवीडिया ड्राइवर स्थापित हैं
द्वारा उत्पन्न छवि कोsystemd-analyze plot > bootimage2
देखते हुए , मेरे स्टार्टअप ने स्पष्ट रूप से 3 सेकंड का समय लिया?
और देखते हुए dmesg
, मेरे स्टार्टअप ने जाहिरा तौर पर 4 सेकंड का समय लिया। लेकिन मैंने इसे अपनी स्टॉपवॉच के साथ समय दिया और इसमें 20 सेकंड लगे! (पोस्ट समय सहित नहीं) फिर, ध्यान रखें कि मैं जिस 20 का उल्लेख कर रहा हूं वह लॉगिन स्क्रीन पर 17 है, और फिर डेस्कटॉप पर एक और 3)
यहां बताया गया है कि स्टार्टअप का क्रम कैसा है:
- पद
- GRUB लोड करता है
- जैसे ही मैंने ENTER मारा मैं अपनी स्टॉपवॉच शुरू करता हूं
- मुझे ~ 15 सेकंड के लिए एक रिक्त बैंगनी स्क्रीन मिलती है
- मुझे उबंटू बूट एनीमेशन दो सेकंड के लिए दिखाई देता है
- मैं लॉगिन स्क्रीन पर उतरता हूं
- मैं स्टॉपवॉच बंद करो
- मैं अपना पासवर्ड दर्ज करता हूं, हिट दर्ज करता हूं, और अपनी स्टॉपवॉच फिर से शुरू करता हूं।
- 3 सेकंड के बाद मैं डेस्कटॉप पर उतरता हूं
- मैंने अपनी स्टॉपवॉच फिर से बंद कर दी।
यहाँ से पूरा उत्पादन है dmesg
: http://paste.ubuntu.com/23955108/
और यहाँ के उत्पादन से पहली लाइनें हैं systemd-analyze blame
:
365ms dev-sda5.device
327ms networking.service
287ms accounts-daemon.service
286ms ModemManager.service
233ms systemd-logind.service
216ms apport.service
213ms grub-common.service
209ms ondemand.service
200ms irqbalance.service
183ms speech-dispatcher.service
178ms apparmor.service
160ms gpu-manager.service
148ms thermald.service
148ms pppd-dns.service
146ms systemd-user-sessions.service
142ms alsa-restore.service
140ms console-setup.service
137ms rsyslog.service
105ms NetworkManager.service
104ms upower.service
102ms avahi-daemon.service
100ms systemd-udev-trigger.service
इन लोगों को एक ही समस्या है:
- https://ubuntuforums.org/showthread.php?t=2325045
- https://www.bleepingcomputer.com/forums/t/598260/booting-ubuntu-temporarily-stuck-on-a-purple-screen/
- और ऐसा लगता है कि ARCH वाले लोगों को भी यह समस्या है ...
कोई विचार?
systemd-analyze blame
। अजीब हिस्सा है ग्रब लगभग 10 सेकंड के लिए "लोडिंग प्रारंभिक रैम डिस्क" पर अटक गया था जब फ़ाइल आकार के कारण यह दूसरा विभाजन होना चाहिए। फिर आगोश में बस चली गई। शायद यह एक कर्नेल अद्यतन था? हो सकता है कि मेरे द्वारा किए गए बदलाव से plymouthd
मुझे यकीन न हो।