SD कार्ड निकालने और डालने के बाद बूट नहीं होगा?


15

मैंने अपने एसडी कार्ड पर Win32DiskImager के साथ आर्क लिनक्स स्थापित किया है । अगर मैं आरपीआई को बंद करता हूं, तो कार्ड को हटा दें, इसे डालें, और आरपीआई को फिर से शुरू करें, सब कुछ ठीक काम करता है। लेकिन अगर मैं pacman के साथ पूर्ण सिस्टम अपडेट करता हूं pacman -Syu, तो एक समस्या है। यदि मैं बंद कर देता हूं और आरपीआई को फिर से शुरू करता हूं, तो कोई समस्या नहीं है, लेकिन अगर मैं बंद कर देता हूं, तो कार्ड निकालें, डालें, फिर आरपीआई शुरू करें, यह कभी भी बूट नहीं कर सकता है, बस इंद्रधनुष शुरू स्क्रीन पर हमेशा इंतजार करना चाहिए। मुझे एसडी कार्ड निकालने की भी आवश्यकता नहीं है, केवल 30 सेकंड के लिए बिजली की आपूर्ति को रोकने के लिए पर्याप्त है, (जब तक कि कंडेनसेटर्स पूरी तरह से डिस्चार्ज नहीं हो जाते) और आरपीआई शुरू करें, और वही त्रुटि होती है।

मैंने फ़ाइल IgnorePgk = raspberrypi-firmwareमें जोड़कर रास्पबेरी-फर्मवेयर पैकेज अपडेट को अक्षम करने की कोशिश की /etc/pacman.conf, और फिर पूर्ण सिस्टम अपडेट किया, और फिर मैं एसडीकार्ड निकालता हूं और सम्मिलित करता हूं, और फिर मैं इंद्रधनुष स्क्रीन को फिर से नहीं देखता, लेकिन यह त्रुटि संदेश प्राप्त करें:

यहाँ छवि विवरण दर्ज करें

[  20.217557] Kernel panic - not syncing : VFS: Unable to mount root fs on unknown-block(179,2)

PANIC: VFS: Unable to mount root fs on unknown-block(179,2)

Entering kdb (current=0xcd828ca0, pid 1) due to Keyboard Entry
kdb> _ 

यह त्रुटि तब भी होती है यदि मैं केवल linux-raspberrypiपैकेज को अद्यतन करता हूं , और फिर मैं केवल rebootsdcard को हटाता हूं, और मुझे एक ही कर्नेल-पैनिक त्रुटि संदेश मिलता है।

मेरे पास सैमसंग SDHC 16GB Class10 (MB-MPAGA उर्फ ​​MB-MPAGAEU) कार्ड है। मैंने Kingmax SDHC 16GB Class10 कार्ड के साथ भी कोशिश की, और Kingmax SDHC 8GB Class6 कार्ड के साथ, न तो काम किया।

अगर मैं उपेक्षा raspberrypi-firmwareऔर linux-raspberrypipacman में पैकेज, और उसके बाद सिस्टम अपडेट करते हैं, कोई त्रुटि तब होती है, भले ही मैं sdcard को हटा दें। तो यह इन पैकेजों में कुछ समस्या होनी चाहिए।


2
आप अपने पाई को कैसे शक्ति दे रहे हैं? जब आप पाई चालू करते हैं तो क्या आप एसडी कार्ड निकाल रहे हैं?
स्टीव रोबिलार्ड

1
तो यह केवल एक बार काम किया? अधिकांश बूट समस्याओं को अपर्याप्त शक्ति या खराब एसडी कार्ड या छवि का पता लगाया जा सकता है
स्टीव रोबिलार्ड

1
यह दूसरी बार होता है। मैंने OS को पुन: स्थापित किया, और यह फिर से बूट नहीं करेगा। मैं एडेप्टर के साथ किंगमैक्स सी 10 माइक्रोएसडी का उपयोग करता हूं। मेरे पास 2 एडॉप्टर हैं, न ही काम करता है।
ग्रेगली फेहरिव्री

1
मेरा सुझाव है कि आप कार्ड के एक अलग ब्रांड का प्रयास करें। शायद आप किसी दूसरे के लिए खरीदने / इंतजार करने से बचने के लिए किसी दोस्त के साथ उधार या व्यापार कर सकते हैं। आपने सत्यापित कार्ड सूची ( elinux.org/RPi_VerifiedPeripherals ) और समस्या निवारण मार्गदर्शिका ( elinux.org/R-Pi_Troublesourcing )
स्टीव

2
आपके पास एक सहायक परिणाम प्राप्त करने का एक बेहतर मौका होगा यदि आपने इस प्रश्न को पूर्ण री-राइट के साथ संपादित किया, जो कि संचालन का सटीक क्रम बताता है जो विफलता उत्पन्न करता है।
क्रिस स्ट्रैटन

जवाबों:


8

मैं इसे उत्तर के रूप में पोस्ट कर रहा हूं क्योंकि टिप्पणियों में पर्याप्त जगह नहीं है। इसलिए अब तक एकत्र की गई सभी सूचनाओं से ऐसा लगता है कि समस्या केवल बूट / विभाजन सामग्री से संबंधित है। अब समस्या दो चीजों के कारण हो सकती है: 1. / बूट / फाइल सिस्टम भ्रष्टाचार जो फर्मवेयर फाइल को लोड करने के लिए बूटलोडर के लिए असंभव बनाता है। फर्मवेयर के नए संस्करण में कुछ प्रतिगमन है जो आपके एसडी कार्ड को काम करने से रोकता है। आपको जांचना होगा कि इनमें से कौन सा सही है।

ऐसा करने का एक तरीका यह होगा कि आप अपने पीसी में / बूट / मैन्युअल रूप से फ़ाइलों को अपडेट करें। ऐसा करने के लिए आपको पहले यह सुनिश्चित करना होगा कि आपका सिस्टम सीधे ग्राफ़िकल सिस्टम में बूट नहीं कर रहा है (क्योंकि आपके पास काम करने वाले मॉड्यूल नहीं होंगे और इससे X में कीबोर्ड / माउस का उपयोग करना असंभव होगा)। फिर आपको अपने एसडी कार्ड को पीसी में कनेक्ट करना होगा, इसकी सामग्री का बैकअप लेना होगा, फर्मवेयर फाइलों के लिए जीथब पेज पर जाना होगा, बूट निर्देशिका दर्ज करें और अपने / बूट / विभाजन के लिए (मौजूदा वाले को ओवरराइडिंग) के बाद निम्न फ़ाइलें डाउनलोड करें - bootcode.bin, kernel.img, start.elf, loader.bin। आपको किसी अन्य फाइल को ओवरराइड करने की आवश्यकता नहीं होगी। प्रत्येक फ़ाइल को डाउनलोड करने के लिए आपको उसके नाम पर क्लिक करना होगा, फिर "कच्चे देखें" पर क्लिक करें और इसे डिस्क पर सहेजें। सभी फ़ाइलों को सहेजने के बाद, सुनिश्चित करें कि आपने अपने एसडी कार्ड को सुरक्षित रूप से निकाल दिया है और जाँच करें कि क्या यह बूट है। इस तरह से आप देख सकते हैं कि नवीनतम फर्मवेयर फाइलें (कर्नेल और बूटलोडर) आपके एसडी कार्ड से बूट करने में सक्षम हैं या नहीं। यदि यह सत्य है तो हम सुनिश्चित कर सकते हैं कि आपकी समस्या / बूट / विभाजन भ्रष्टाचार के कारण है, न कि कर्नेल / बूटलोडर प्रतिगमन के कारण।

जैसा कि पहले उल्लेख किया गया है, आपको यह भी देखना चाहिए कि इंद्रधनुष स्क्रीन देखने पर आप कितने हरे रंग की एलईडी चमक देख सकते हैं। कुछ समय पहले समस्या निवारण कोड बूटलोडर में जोड़ा गया था और यह गलत हो गया है कि यह दिखाने के लिए कई बार हरे रंग का नेतृत्व करेगा। यहाँ सूची है: 3 चमक: लोडर.बिन 4 चमक नहीं पाया: लोडर.बिन 5 फ़्लैश शुरू नहीं किया: शुरू नहीं मिला। 6 चमक: शुरू नहीं किया गया।

यदि आपको कोई चमक दिखाई नहीं देती है तो या तो आपका फर्मवेयर इस समर्थन के लिए बहुत पुराना है या बूटकोड भी नहीं है। आप यह भी जांच सकते हैं कि यदि बूट के लिए आवश्यक सभी फाइलें (पहले बताई गई हैं) साने हैं (शून्य आकार नहीं, आदि) तो जाँच कर बूट विभाजन को दूषित नहीं किया गया है। आप यह भी जांच सकते हैं कि बूट विभाजन पर कौन सी फ़ाइल केवल उनमें से कुछ को पुनर्स्थापित करके समस्या का कारण बनती है। उदाहरण के लिए केवल कर्नेल.बिन को पुनर्स्थापित करें या केवल start.elf + लोडर.बिन + बूटकोड.बिन। यह आपको बता सकता है कि यह फर्मवेयर या कर्नेल समस्या है।


जबरदस्त हंसी। आज मैंने raspberrypi-firmwareऔर अपडेट किया linux-raspberrypi, और समस्या अब मौजूद नहीं है। लगता है इसे ठीक कर लिया गया है। तो मैं भी बूट में मैन्युअल रूप से ठीक करने की जरूरत नहीं है, इसके काम। लेकिन मैं आपके उत्तर को स्वीकार करूंगा, क्योंकि यह समस्या के सबसे करीब था, और मुझे यकीन है कि यह समस्या को ठीक कर देगा।
गेरहली फेहरिवरी

5

यह sdcard समस्या होनी चाहिए। अगर मैं रास्पियन "मट्ठा" स्थापित करता हूं, तो रास्पी-कॉन्फिगरेशन में मैं कार्ड को भरने के लिए विभाजन का विस्तार करता हूं, फिर रास्पबेरी पाई को बंद कर देता हूं, एसडीकार्ड हटाता हूं, फिर से सम्मिलित करता हूं, यह बूट नहीं होगा। Kingmax 16GB SDHC Class10 कार्ड को सपोर्ट नहीं किया जाता है।


मैंने किंगमेक्स 8 जीबी और सैमसंग 16 जीबी के साथ भी कोशिश की, जैसा कि मैंने सवाल में बताया था, और न ही काम किया। शायद यह कुछ और समस्या है।


1
आप इसे उन ज्ञात समस्या कार्डों की सूची में जोड़ना चाहते हैं जिन्हें मैंने पहले जोड़ा था, और दूसरों को आपके द्वारा होने वाली समस्या से बचा सकता है।
Steve पर स्टीव रोबिलार्ड

आपको यह जांचना होगा कि आपके कार्ड को वास्तव में गैर-बूट करने योग्य क्या है। उदाहरण के लिए, यदि आप सिस्टम को बूट करते हैं, लेकिन लॉग इन भी नहीं करते हैं, तो क्या यह चालू / बंद होने के बाद बूट होगा? इसके अलावा, कृपया जांच लें कि इंद्रधनुष के स्क्रीन होने पर आपके हरे रंग की एलईडी ब्लिंक है या नहीं। यदि हां, तो कितनी बार?
Krzysztof Adamski

हाँ। केवल फिर से बूट न ​​करें, अगर मैं पूर्ण सिस्टम अपग्रेड करता हूं। सिस्टम अपग्रेड के बिना मैं किसी भी समस्या के बिना sdcard को हटा और सम्मिलित कर सकता हूं, और यह अच्छी तरह से बूट करता है।
फरवरी को फर्ग्रेवरी

2
पीसी पर / बूट / विभाजन की सामग्री को बैकअप करें जब यह काम कर रहा हो। फिर अपग्रेड करें, सिस्टम को बंद करें, पीसी पर / बूट फ़ाइलों को पुनर्स्थापित करें और जांचें कि क्या यह समस्या हल करता है। नवीनीकरण के बाद आपको मिलने वाले नए कर्नेल के साथ कोई समस्या हो सकती है या उसमें बूट / फाइलसिस्टम भ्रष्टाचार हो सकता है।
Krzysztof Adamski

ऐसा लगता है कि यह बूट कॉपी है और पुनर्स्थापना ने समस्या को हल कर दिया है, लेकिन क्या यह अच्छा है? क्या यह एक वास्तविक समाधान है, या इसका सिर्फ एक अस्थायी समाधान है? यह भी intresting है कि ऐसा लगता है कि कुछ भी नहीं बदला है। कर्नेल एक ही है, और ऐसा लगता है कि पैक्मैन में केवल संस्करण बदला गया है।
गेरहली फेहरवीरी

0

रास्पबेरी PI - PANIC: VFS अज्ञात-ब्लॉक (179,2) पर रूट एफएस को माउंट करने में असमर्थ है, मुझे यह संदेश अपडेट और रिबूट के बाद मिला है।

PANIC: VFS अज्ञात-ब्लॉक पर रूट fs को माउंट करने में असमर्थ (179,2) कीबोर्ड एंट्री के कारण kdb (करंट = 0xcb846c80, pid 1) दर्ज करना

समस्या कम से कम मेरे लिए आसान है।

इसलिए मैं रेस्क्यूसीडी पर बूट करता हूं - कोई भी लिनक्स दूसरे पीसी में ठीक है

तब मैं फाइलसिस्टम की मरम्मत चलाता हूं (अपने सही डिवाइस नाम का उपयोग करें)

fsck / देव / sdb2

मुझे इसे कई बार चलाना पड़ा, फिर मैंने चेक fsck -f / dev / sdb2 को मजबूर किया

और फ़ाइल सिस्टम की मरम्मत की गई थी।

शायद वहाँ अस्थायी समाधान है। रिबूट से पहले फाइल को सिंक करना है। इसलिए, मैं sudo रिबूट से पहले लगभग 2 या 3 बार कमांड सिंक चलाता हूं। इसके बाद से मैंने फिर से त्रुटि नहीं देखी।

Update1: फ़ाइल सिस्टम के भ्रष्टाचार की आशंका पर शायद ओवरक्लॉक का प्रभाव है। क्योंकि मैंने उदाहरण अपडेट और अपग्रेड के लिए अधिक भार के बाद हमेशा कवियों को देखा है।

अपडेट 2: हां, जब यह ओवरक्लॉक नहीं होता है तो उन्हें कोई समस्या नहीं होती है। शायद एक और एसडी कार्ड के साथ यह ओवरक्लॉक भी काम कर सकता है।

अपडेट 3: कुछ जांच और परीक्षणों के बाद मुझे पता चला कि मैंने जिस मूल बॉक्स का उपयोग पीआई के लिए किया है, उसमें केवल नीचे से ही वेंटिंग छेद हैं और इसलिए आईओ चालक गर्मी को खत्म कर सकता है और इससे ईथरनेट, यूएसबी और एसडी कार्ड की समस्या उत्पन्न होती है। जब से मैंने इसे खोला है मैं बिना किसी समस्या के मध्यम ओवरक्लॉक बना सकता हूं।

अपडेट 4: रास्पबेरी विफल हो गया यह आपूर्तिकर्ता को एक्सचेंज के लिए भेजा गया है यहां अधिक जानकारी देखें।

Update5: रास्पबेरी आपूर्तिकर्ता द्वारा विनिमय किया गया था। नया टुकड़ा ठीक लग रहा है। आशा करो।

Update6: नए टुकड़े में 7/24 के लगभग 12 दिन हैं जो बिना किसी समस्या के चल रहे हैं। यह भी हर समय overclocked (मध्यम) है। मुझे लगता है कि अगर किसी को अभी भी स्थिरता की समस्या है, तो उसे संगरोध के तहत विनिमय के लिए पूछना चाहिए। बस मैं इसे अब खरीदे हुए मूल प्लास्टिक के मामले से पहले बिना किसी अतिरिक्त एसडी कार्ड और बिजली की आपूर्ति के साथ चलाता हूं। मैंने मूल रास्पियन प्रणाली के किसी भी ट्वीक्स का उपयोग नहीं किया है।


0

मेरे पास linux-raspberrypi 3.18.3 (NO MORE linux-raspberrypi-latest) में अपग्रेड करने के बाद एक समान कर्नेल पैनिक इश्यू था।

मेरे मामले में, यह फ़ाइल सिस्टम, बूटलोडर या फर्मवेयर को दूषित नहीं किया गया था। यह कर्नेल पैकेज था।

त्रुटि संदेश है

Error: Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,2)

पहले मुझे लगा कि बेचारा एसडीएचसी कार्ड मर गया है लेकिन यह ठीक निकला। vfat /bootविभाजन और ext4 /और /homeदोनों ठीक थे।

मैं कुछ समय बिताता हूं और अंत में linux-raspberrypi-3.18.3-3पैकेज अपराधी था।

किसी कारण से पैकेज /boot/cmdline.txt को अपडेट करता है जो /गलत विभाजन को इंगित करता है /dev/mmcblk0p2जो होना चाहिए /dev/mmcblk0p5

नोट: pacman -Qo /boot/cmdline.txtआपको बताएगा कि यह किस पैकेज से आता है।

SD को नेटबुक पर प्लग करने के बाद और अच्छे cmdline.txt पर वापस ले जाने के बाद, इसे वापस Pi पर प्लग करें, सिस्टम ऊपर है और खुशी से चल रहा है।

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