कर्नेल पैनिक-समन्‍वयन नहीं: VFS: NOOBS के शीर्ष पर Raspbian चला रहे अज्ञात-ब्‍लॉक (179,6) पर रूट fs माउंट करने में असमर्थ


26

बूट करते समय, अनुक्रम निम्न पर रुक जाता है:

कर्नेल पैनिक-सिंकिंग नहीं: VFS: अज्ञात-ब्लॉक पर रूट एफएस को माउंट करने में असमर्थ (179,6)

मौजूदा रास्पियन इंस्टॉलेशन का उपयोग करके अपने रास्पबेरी पाई 2 को फिर से बूट करने के लिए मैं क्या कर सकता हूं , क्योंकि इसमें कई फाइलें और कॉन्फ़िगरेशन हैं जो फिर से बनाने के लिए बहुत दर्दनाक होंगे?

नोट: यह , यह और यह संबंधित हैं लेकिन अलग-अलग हैं।

जवाबों:


28

कृपया ध्यान दें कि अंत में संख्याओं के आधार पर त्रुटियों के बीच एक स्पष्ट अंतर है, और मैं बहुत अधिक विवरणों में नहीं जाऊंगा क्योंकि यदि आवश्यक हो तो उन्हें आसानी से ऑनलाइन खोजा जा सकता है। ये फ़िक्सेस मान लेते हैं कि आपके पास सभी आवश्यक कनेक्शन काम कर रहे हैं (पावर, एसडी कार्ड, एचडीएमआई, वायर्ड कीबोर्ड, माउस) और NOOBS के साथ रास्पियन का उपयोग कर रहे हैं।

2 के साथ समाप्त होने वाली त्रुटि का विवरण उत्तर के अंत में है। यदि आपका त्रुटि संदेश 6 के साथ समाप्त होता है , तो इस तरह:

कर्नेल पैनिक-सिंकिंग नहीं: VFS: अज्ञात-ब्लॉक पर रूट एफएस को माउंट करने में असमर्थ (179, 6 )

आपको एक फाइल सिस्टम जांच और मरम्मत करने की आवश्यकता होगी:

  1. रास्पबेरी Shiftकुंजी को पकड़ना शुरू करें ।
  2. NOOBS लोड होने के बाद, Alt-F2रिकवरी कमांड लाइन तक पहुंचने के लिए दबाएँ ।
  3. उपयोगकर्ता नाम rootऔर पासवर्ड के साथ लॉगिन करें raspberry
  4. टाइप करें sudo fsck.ext4 -y /dev/mmcblk0p6। यह दूषित फ़ाइल सिस्टम को ठीक करने और स्कैन करने का प्रयास करेगा (यदि आवश्यक हो तो अपने विभाजन प्रकार के साथ ext4 को बदलें)। ध्यान दें कि autoमोड fsck(यानी केवल टाइप fsckकरने के बजाय fsck.ext4) समर्थित नहीं है।
  5. sudo shutdown -h nowरास्पबेरी को सफाई से बंद करने के लिए टाइप करें।
  6. पावर केबल को अनप्लग करें और इसे वापस प्लग करें। रास्पबेरी को अब ठीक शुरू करना चाहिए।

यदि आपका त्रुटि संदेश 2 के साथ समाप्त होता है , तो इस तरह:

कर्नेल पैनिक-सिंकिंग नहीं: VFS: अज्ञात-ब्लॉक पर रूट एफएस को माउंट करने में असमर्थ (179, 2 )

यह संभावना है कि समस्या अद्यतन बग के कारण होती है। फिक्स में 2 को 6 में बदलना शामिल है :

  1. रास्पबेरी Shiftकुंजी को पकड़ना शुरू करें ।
  2. Edit config (e)बटन पर क्लिक करें या दबाएँ e
  3. cmdline.txtटैब पर क्लिक करें या right arrowकीबोर्ड पर दबाएं।
  4. बदलने के:

root = / dev / mmcblk0p 2

साथ में

रूट = / देव / mmcblk0p 6

  1. बूट अनुक्रम के साथ आगे बढ़ने के लिए कीबोर्ड पर क्लिक करें OKऔर फिर दबाएं escape

आपका पाई अब ठीक होना चाहिए। यदि एक ही त्रुटि दिखाई देती है, लेकिन उपरोक्त चरणों के साथ 6 आगे बढ़ें।


कुछ मामलों में, Pi NOOBS GUI में किए गए बदलाव को नजरअंदाज कर सकता है और आपको 2बूट करते समय अंत में भी वही त्रुटि दिखाई देगी । इस मामले में, tktbjp का जवाब मदद कर सकता है:

वास्तव में रिकवरी मोड का उपयोग करना सरल है। मैंने रिकवरी मोड में प्रवेश किया और alt-F2 को रूट के रूप में लॉग इन करने के लिए दबाया। GUI से cmdline.txt को बदलना काम नहीं करता है।

पासवर्ड रास्पबेरी के साथ रूट के रूप में लॉग इन करने के बाद, जांचें कि क्या कोई / बूट निर्देशिका है। ज्यादातर शायद यह मौजूद नहीं होगा। यदि नहीं तो इसे mkdir / boot का उपयोग करके बनाएँ। फिर cmdline.txt बनाने के लिए vi संपादक का उपयोग करें।

#cd /boot

#vi cmdline.txt

vi संपादक में रूट को mmcblk0p6 में बदलें। मेरी cmdline.txt सामग्री दिखती हैdwc_otg.lpm_enable=0 console=ttyAM0,115200 console=tty1 root=/dev/mmcblk0p6 rootfstype=ext4 elevator=deadline rootwait

फ़ाइल सहेजें। फिर सिंक करना महत्वपूर्ण है।

#sync

फिर बोर्ड को बूट करें। जीयूआई का उपयोग करके क्रॉस चेक करें यदि cmdline वास्तव में बदल गया है। मेरा PI B + अभी काम कर रहा है


1
'y' दबाने या मैन्युअल रूप से दर्ज करने के बजाय, आप 'fyck' विकल्प का उपयोग कर सकते हैं ...
Andrey Sapegin

1
महान सलाह, मदद के लिए धन्यवाद। कभी भी, मेरे लिए यह sudo कमांड के साथ काम नहीं किया। सिस्टम इसे ढूंढ नहीं सका। लेकिन इसके बिना यह ठीक था!
रोकर पिविक

3
Shift कुंजी दबाकर रास्पबेरी शुरू करें ? मेरा मानना ​​है कि आप एक भौतिक कीबोर्ड का मतलब है, क्योंकि एक वायरलेस कीबोर्ड बूट पर इस तरह काम नहीं करेगा
IgorGanapolsky

1
@IgorGanapolsky मैंने कभी भी अपने Pi के साथ वायरलेस कीबोर्ड का इस्तेमाल नहीं किया है इसलिए मुझे इस मुद्दे की जानकारी नहीं थी। मैंने जवाब अपडेट किया है, धन्यवाद।
व्लाद श्नाकोवस्ज़की

1
मैंने अब अपनी समस्या हल कर ली है - इसका यहां चर्चा किए गए उत्तरों से कोई लेना-देना नहीं था। मैं यह समझने में विफल रहा कि डिस्क छवि कैसे सेट की जाए। चूँकि मुझे अपना उत्तर अब यहाँ पोस्ट करने में सक्षम नहीं लगता, इसलिए मैंने इसे एक नए प्रश्न-उत्तर के रूप में यहाँ पोस्ट किया है
बिल

5

मुझे वही समस्या थी लेकिन अज्ञात-ब्लॉक (179.7) के साथ और पहले समाधान ने ठीक काम किया, बस इसे बदल दिया गया:

sudo fsck.ext4 -y /dev/mmcblk0p6

इसके साथ:

sudo fsck.ext4 -y /dev/mmcblk0p7

मैं एक विशेषज्ञ नहीं हूं, लेकिन आशा है कि यह दूसरों की मदद कर सकता है।


1
है fsck.ext4 आदेश मैक पर उपलब्ध है?
इगोरगानापोलस्की

नहीं, दुर्भाग्य से यह नहीं है।
डेविड आर्टमैन

4

समस्या के मूल से निपटने के लिए (वर्कअराउंड नहीं), यदि आप बूट नहीं कर सकते (या आपके पास कोई "NOOBS") नहीं है, तो आपको निम्न करने की आवश्यकता है:

  • अपने पाई से एसडी कार्ड निकालें और इसे अपने लिनक्स कंप्यूटर में एक कार्ड रीडर में डालें।
  • यदि स्वचालित रूप से माउंट किया गया है, तो दोनों विभाजनों को umount करें। fdisk -lऔर के साथ सही डिवाइस नाम की जाँच करें mount -l। मेरे उदाहरण में, इसे माउंट किया गया है /dev/sdb1और /dev/sdb2। तो, उपयोग करने के लिए, का उपयोग करें umount /dev/sdb1और umount /dev/sdb2। ( अपने पार्टनर नंबर पर क्लिक करने के लिए सावधान रहें। "2" यहां सिर्फ मेरा उदाहरण है)।
  • अब आप सुधारों के साथ चेक-अप को आगे बढ़ाने के लिए तैयार हैं।
    • साथ fdisk -lकी पहचान डॉस विभाजन और जाँच / साथ इसे ठीक कर fsck.fat -y /dev/sdb1( अपने सही संख्या की जाँच करें )
    • साथ ही, fdisk -lआपको ext4विभाजन संख्या दिखाता है । इसे ठीक करें fsck.ext4 -y /dev/sdb2( अपना सही नंबर जांचें )
  • यदि यह फिर से, umountदोनों को फिर से स्वचालित करता है । यदि नहीं, तो आप अपने कंप्यूटर से अपने रास्पबेरी पाई को हटाने और इसे चालू करने के लिए तैयार हैं।

यदि यह सिर्फ एक "ब्लॉक" मुद्दा है, तो यह संभवतः ऊपर और चल रहा होगा। यदि Kernel Panicजारी है, तो जांचें कि क्या त्रुटि संदेश कुछ और बदल गया है। इस मामले में, आपको अन्य उत्तरों के लिए फिर से देखना चाहिए, या शायद अपने एसडी कार्ड को स्क्रैच से दोबारा लिखने पर विचार करें।


3

रास्पियन (लाइट) को एसडी कार्ड पर स्थापित करने की कोशिश के बाद मैं इस त्रुटि के साथ समाप्त हो गया जो बहुत छोटा था। बेशक, अगर मैं वास्तव में dd प्रक्रिया से आउटपुट को देखता हूं, तो मैंने देखा होगा कि आँख बंद करके कार्ड को मेरे Pi में डालने से पहले:

$ dd bs=1m if=Downloads/2016-05-27-raspbian-jessie-lite.img of=/dev/rdisk3
Password:
dd: /dev/rdisk3: short write on character device
dd: /dev/rdisk3: Input/output error
969+0 records in
968+1 records out
1015808000 bytes transferred in 45.492548 secs (22329108 bytes/sec)

मैंने मिनिबियन को स्थापित करना समाप्त कर दिया


2

एक अच्छे अच्छे कार्ड को डुप्लिकेट करते समय यह त्रुटि 2 में समाप्त हो गई । मूल रूप से मैंने जो किया वह मूल कार्ड से बाइट्स को एक नए / नए एसडी कार्ड के साथ कॉपी कर रहा था dd। मुझे इस सरल प्रक्रिया से किसी भी त्रुटि की उम्मीद नहीं थी, इसलिए इस संदेश के साथ सामना होने पर मेरे आश्चर्य की कल्पना करें:

कर्नेल पैनिक-सिंकिंग नहीं: VFS: अज्ञात-ब्लॉक पर रूट एफएस को माउंट करने में असमर्थ (179, 2 )

खोज के बाद यह पता चला कि ताजा एसडी कार्ड मूल से थोड़ा छोटा था ।

इस वजह से, रूट विभाजन बढ़ते जाना विफल हो गया। और इसके बदले में कुख्यात कर्नेल आतंक संदेश का नेतृत्व किया। मुझे लगता है कि कर्नेल ने एसडी कार्ड के अंत में ब्लॉक तक पहुंचने की कोशिश की, या पाया कि विभाजन (क्रम में अंतिम होने) एसडी कार्ड पर पूरी तरह से फिट नहीं है।

चूंकि मैं वास्तव में अपनी फाइलें और सेटिंग्स रखना चाहता था, इसलिए मैंने रूट फाइल सिस्टम को सिकोड़ लिया। इसमें resize2fsपहले भागना , फिर fdiskविभाजन को समायोजित करना शामिल है । ज्ञात हो कि एक उपकरण 4k ब्लॉक में आकार की रिपोर्ट करता है, दूसरे 512 बाइट सेक्टर स्टार्ट / स्टॉप ऑफ़सेट के साथ काम करता है। वास्तव में गड़बड़ करना आसान है। इसलिए ज्ञात अच्छी छवियों का बैकअप रखें।

कार्ड रीडर के साथ किसी अन्य पीसी या लैपटॉप पर ऐसा करना शायद सबसे अच्छा है। रास्पबेरी पर ही नहीं।

यह कहे बिना जाता है कि आपके पास फाइलसिस्टम में पर्याप्त जगह होनी चाहिए ताकि वास्तव में इसे सिकोड़ सकें ...


1

मेरे मामले में मैं एक और एसडी में क्लोन एसडी के कारण था क्योंकि मूल ने इसे उस क्षेत्र को दूषित कर दिया था।

विंडोज में क्लोन करने के लिए आप इस टूल का उपयोग कर सकते हैं: Win32 डिस्क इमेजर

Sd इमेज को सिकोड़ने के लिए, यदि नया sd छोटा है तो ओरिजिनल है, आप इस स्क्रिप्ट का उपयोग linux vm में कर सकते हैं जहाँ आपने sd इमेज शेयर की है: PiShrink

अंत में, यदि आप इस वीडियो में पूरी प्रक्रिया देखना चाहते हैं ।

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