क्या आप मौजूदा सरणी पर मेटाडेटा संस्करण बदल सकते हैं?


21

इसलिए ग्रब को मेटाडेटा संस्करण की आवश्यकता है। 0.90 मैं सोच रहा हूं कि क्या मैं डिफ़ॉल्ट के बजाय 1.2 का उपयोग करने के लिए अपने मौजूदा सरणियों को बदल सकता हूं। इस तरह मुझे पुनर्स्थापना के बारे में जाने की जरूरत नहीं है। यदि हाँ, तो मैं यह कैसे कर सकता हूँ?

जवाबों:


5

GRUB विकी पुष्टि करता है:

इसके अलावा, (1.96 + 20080724 के रूप में) GRUB केवल RAID से बूट कर सकता है जो एक संस्करण 0.90 मेटाडेटा सुपरब्लॉक का उपयोग करता है (अर्थात - madadm के लिए --metadata = 0.90 विकल्प के साथ बनाया गया)।

उत्सुकता से, mdadm के लिए मैन पेज कहता है

-ई, --मेटाडाटा =

सुपरब्लॉक (छापे मेटाडाटा) की शैली का उपयोग करने की घोषणा करें। डिफ़ॉल्ट है 0.90 for --create, और अन्य परिचालनों के लिए अनुमान लगाने के लिए।

मैं mdadm -Q -D <device>निश्चित होने के साथ दोहरी जाँच करूँगा ।

उसके बाद, आप किस RAID स्तर पर चल रहे हैं? सबसे अच्छा परिदृश्य मैं एक दर्पण (RAID 1) के लिए सोच सकता हूं

  1. बैकअप लें
  2. बेहिसाब सरणी 0
  3. की सरणी 0 से डिवाइस एक निकालें nउपकरणों
  4. डिवाइस ए पर ज़ीरो सुपरब्लॉक
  5. डिवाइस ए और n-1पुर्जों का उपयोग करके सरणी 1 बनाएं , स्पष्ट रूप से पुराने सुपरब्लॉक प्रारूप का उपयोग करते हुए
  6. n-1उपकरणों के माध्यम से शेष बी के लिए दोहराएं
  7. (वैकल्पिक) सरणी को फिर से संख्या दें

... लेकिन यह निश्चित रूप से जांचें कि आपको इसके साथ गुजरने की आवश्यकता है!


इसलिए मैंने पुष्टि की कि बहुत पहले। मैं raid10, f2 चला रहा हूं। स्पष्ट रूप से सरणी को फिर से बनाना, जो मैं बचने की कोशिश कर रहा था।
xenoterracide

क्या आपने linux-raid at vger.kernel.orgमेलिंग सूची की कोशिश की है ?
एंड्रयू

अजीब बात है कि मुझे इस बारे में कोई सूचना नहीं मिली। नहीं, मैंने कोशिश नहीं की। मैंने इसे मिटा दिया और सरणी को फिर से बनाया। मैं इस उत्तर को संक्षिप्त समाधान के साथ स्वीकार करने जा रहा हूं कि यह NO या शायद (हास्यास्पद रूप से कठिन) है
xenoterracide

16

यह जानकारी शायद ओपी की मदद करने के लिए बहुत देर हो चुकी है, लेकिन शायद यह किसी और की मदद करेगा।

पहला कमांड सुपर ब्लॉक मिटा देता है और दूसरा कमांड एक नया एरे बनाता है लेकिन मानता है कि डिवाइस साफ हैं। मैंने अभी यह प्रदर्शन किया है और सब कुछ ठीक प्रतीत होता है। मैं निश्चित रूप से ऐसा करने से पहले एक बैकअप की सिफारिश करूंगा। मेरे पास खोने के लिए कोई डेटा नहीं था और इसलिए जाँच करने के लिए कोई अखंडता नहीं थी। मैं सिर्फ एक और 4 घंटे resync से बचना चाहता था।

$ mdadm --zero-superblock /dev/sd[a-z]1
$ mdadm --create /dev/md0 --assume-clean \
    --level=10 --raid-devices=10 /dev/sd[a-z]1 --metadata=0.90

1
शायद ओपी के लिए बहुत देर हो गई लेकिन आपने मुझे बचा लिया, आपके उत्तर के लिए धन्यवाद
neofutur

7

जैसा कि ऊपर सुझाया गया है, स्वच्छ और असंगत मेटाडेटा के साथ एक सरणी बनाना निश्चित रूप से मौजूदा डेटा को नुकसान पहुंचाने की क्षमता रखता है, क्योंकि 0.90 और 1.2 मेटाडेटा ब्लॉक न केवल आकार में भिन्न होते हैं, बल्कि स्थान भी होते हैं।

यह 0.90 <-> 1.0 के लिए काम कर सकता है, जो एक अपवाद है।

https://raid.wiki.kernel.org/index.php/RAID_superblock_formats

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