Lvm2 तार्किक आयतन और फ़ाइल सिस्टम का आकार बदलना: सटीक आकार?


10

मेरे इंट्रानेट सर्वर पर, मेरे पास एक 100.00 GiB पार्टीशन / dev / sda5 है, जिसका उपयोग मैं lmm2 के लिए भौतिक आयतन के रूप में करता हूं।

  • यह मेरे वॉल्यूम समूह vg01 में एकमात्र भौतिक आयतन है।
  • vg01 में वर्तमान में एक तार्किक वॉल्यूम lv01 है, पूर्ण 100.00 GiB का उपयोग करते हुए - ठीक है, वास्तव में 99.99 GiB कुछ राउंडिंग के कारण होता है (यह वह जगह है जहाँ समस्या शुरू होती है)।
  • lv01 में संपूर्ण अंतरिक्ष का उपयोग करते हुए एक ext3 फाइल सिस्टम है।

मैं lv01 को लगभग 97 GiB तक कम करना चाहता हूं, इसलिए मैं लगभग लगभग lv02 बना सकता हूं। 3 GiB (मुझे lvm स्नैपशॉट लेने के लिए इसकी आवश्यकता है)।

मैंने अब तक क्या किया:

e2fsck -f /dev/mapper/vg01-lv01
resize2fs /dev/mapper/vg01-lv01 97G

इसने अच्छा काम किया है। लेकिन अब मुझे दौड़ना पड़ेगा

lvreduce --size ? /dev/mapper/vg01-lv01

और मुझे यकीन नहीं है, जो सटीक मूल्य मुझे निर्दिष्ट करना होगा। lvreduceआदमी पृष्ठ में स्पष्ट चेतावनी देते हैं, कि जिसके परिणामस्वरूप आकार फाइल सिस्टम से छोटा नहीं होना चाहिए। मैं भी इसे जितना बड़ा होना चाहता हूं, उतना बड़ा नहीं बनाना चाहता। लेकिन अब मेरी अलग संख्या है:

  • मैंने 97Gresize2fs में निर्दिष्ट किया।
  • df -h कहते हैं, यह 96 जी है।
  • df कहते हैं, यह 100115936 1K- ब्लॉक है।
  • lvdisplay (बेशक) अभी भी तार्किक मात्रा के लिए 99.99 GiB की रिपोर्ट करता है।

मुझे क्या निर्दिष्ट करना होगा lvreduce?

संपादित करें:

वर्तमान में स्वीकृत उत्तर एक अच्छा समाधान प्रदान करता है। हालाँकि, इस तरह की चीजों को ठोस लिपियों आदि में एकीकृत करने के लिए, मैं आमतौर पर इसके बजाय सटीक माप का उपयोग करना पसंद करूंगा। या हो सकता है कि पहले से ही एक विश्वसनीय (!) स्क्रिप्ट या उपकरण है जो एक चरण में पूरी आकार परिवर्तन प्रक्रिया करता है?


3
आप resize2fs90GiB या तो नीचे फ़ाइल सिस्टम को कम करने के लिए उपयोग कर सकते हैं , और फिर जो सबसे अच्छा काम करता है उसे देखने के लिए lvreduce(इसके बाद resize2fs) तर्कों के साथ घुलमिलें ।
लार्क्स

@larsks: महान विचार (क्योंकि resize2fs विभाजन आकार में स्वचालित रूप से समायोजित कर सकते हैं, जबकि lvreduce एफएस आकार के लिए स्वचालित रूप से समायोजित नहीं कर सकते हैं)। अगर किसी को मेरे सवाल का निश्चित जवाब नहीं पता है, तो मुझे लगता है कि यह समाधान होगा।
क्रिस लीचर

क्यों नहीं बस एक ही आकार में lvreduce पास? जब तक आप एक टाइपो lvm बनाते हैं, तब तक उसे पहचान लेना चाहिए कि यह एक ही आकार का है, और इसे फिर से आकार न दें। और यदि आप एक टाइपो बनाते हैं, तो कम से कम आप अपने फाइल सिस्टम को नष्ट करने से बचते हैं। lvreduce -r -L 97G / dev / mapper / vg01-lv01
बिल

जवाबों:


5

मेरे अनुभव में, LVM और resize2fs में "97G" का अर्थ क्या है, इसके बारे में समान विचार हैं, इसलिए दोनों स्थानों में समान आकार निर्दिष्ट करना ठीक होना चाहिए। हालाँकि, मैं पागल हूँ, और जहाँ भी संभव हो हमेशा सवाल टिप्पणियों में लार्क्स द्वारा सुझाई गई रणनीति का उपयोग करें और जितना मैं चाहता था उससे एक जीबी छोटा होना चाहिए, मैंने जो आकार चाहा, उसके लिए lvresize किया और फिर resize2fs (बिना) आकार) पूरे LV को भरने के लिए इसे वापस विस्तारित करने के लिए।


मुझे लगता है, यहां "पैरानॉयड" होना महत्वपूर्ण है - क्योंकि न केवल एक संभावना है कि वर्तमान फाइलें क्षतिग्रस्त हो सकती हैं: यदि फ़ाइल सिस्टम LV से बड़ा है, तो मुझे लगता है कि यह किसी भी समय निम्न संस्करणों के साथ कहर खेल सकता है। भविष्य में।
क्रिस लेर्चर

नहीं, LVM LV के अंत से आगे लिखने के किसी भी प्रयास पर रोक लगाएगा, इसलिए कोई अन्य LV क्षतिग्रस्त नहीं हो सकता। यदि फ़ाइल सिस्टम को काट दिया जाता है, तो यह काफी भयावह परिणाम देता है।
Womble

यह दिलचस्प है - मुझे नहीं पता था कि यह हर लिखता है! जानकार अच्छा लगा।
क्रिस लेचर

14

मुझे लगता है कि lvreduce / lvresize के लिए --resizefs विकल्प का उपयोग करना सबसे अच्छा है:

   -r, --resizefs
          Resize underlying filesystem together with the logical volume using fsadm(8).

बेशक, यह अब आपकी मदद नहीं करता है , लेकिन यह भविष्य में हो सकता है।


यही तो मैं ढूंढ रहा था! हालांकि यह एक नया विकल्प प्रतीत होता है: यह संस्करण 2.02.74 (2) -RHEL में है लेकिन यह LVM टूल के मेरे संस्करण 2.02.66 में अनुपलब्ध है ।
क्रिस लेचर

1
जब मैंने पहले से ही अन्य उपकरणों का उपयोग करके fs का आकार बदल दिया था, तो इस विकल्प ने सामान्य चेतावनी को दबा दिया, और संदेश को मुद्रित किया "फाइलसिस्टम पहले से ही 3932160 ब्लॉक लंबा है। कुछ भी नहीं करना है!" जैसा चाहा गया।
D Coetzee

यहां तक ​​कि 2020 में, Google द्वारा अपने पहले खोज परिणाम पृष्ठ पर प्रस्तावित lvm संस्करणों के विस्तार / सिकुड़ने के बारे में कई ट्यूटोरियल में से कोई भी इस विकल्प का उल्लेख नहीं करता है। आपका बहुत बहुत धन्यवाद!
इवान शेट्स्की
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.