वर्चुअल डिस्क के विकास के बाद लिनक्स पीवी विभाजन को ऑनलाइन कैसे बढ़ाया जाए


14

VMware वर्चुअल डिस्क के आकार को ऑनलाइन विस्तारित करने की अनुमति देता है - जब VM चल रहा हो। लिनक्स सिस्टम के लिए अगले अपेक्षित कदम हैं:

  1. विभाजन का विस्तार करें: हटाएं और एक बड़ा बनाएं fdisk
  2. के साथ PV आकार का विस्तार करें pvresize
  3. lvresizeसंचालन के लिए मुफ्त एक्सटेंशन्स का उपयोग करें
  4. और फिर resize2fsफाइल सिस्टम के लिए

लेकिन मैं पहले कदम पर अटक गया हूं: fdiskऔर sfdiskअभी भी डिस्क के लिए पुराने आकार को प्रदर्शित करता हूं ।

मेरी डिस्क एक SCSI वर्चुअल डिस्क है जो वर्चुअल LSI लॉजिक कंट्रोलर के लिए धन्यवाद है।

रिबूट के बिना लिनक्स कर्नेल में उपलब्ध वर्चुअल डिस्क आकार और विभाजन तालिका जानकारी को कैसे ताज़ा करें ?

जहां तक ​​मुझे पता है कि सभी चल रहे विंडोज के लिए संभव हैं, बिना रिबूट और यहां तक ​​कि वीएमवेयर टूल्स के लिए किसी भी उपयोगकर्ता की कार्रवाई के बिना। लिनक्स पर, मैं सभी चरणों को ऑनलाइन करने की अपेक्षा करता हूं और मुझे पहले से ही चरण 2, 3 और 4 का पता है। लेकिन विभाजन तालिका (अभी भी) में घोषित पहले एक - परिवर्तन विभाजन आकार को रिबूट की आवश्यकता प्रतीत होती है।

अपडेट: मेरा सिस्टम कर्नेल 2.6.26 के साथ एक डेबियन लेनी है और मैंने जो डिस्क बढ़ाया है वह मुख्य डिस्क है जिसमें एक बड़े पीवी के साथ "/" के लिए "एलवी" रूट है।

जवाबों:


9

आप इसे रिबूट के बिना कर सकते हैं। Pvresize भौतिक वॉल्यूम का आकार परिवर्तन नहीं करता है जब तक कि विभाजन को जोड़ा स्थान के साथ अद्यतन नहीं किया जाता है। आपको विभाजन को fdisk करना होगा और डिस्क के नए पूर्ण आकार के साथ इसे फिर से बनाना होगा, जब आप पहली बार में अतिरिक्त स्थान देखने के लिए इसके लिए ड्राइव को फिर से स्थापित कर सकते हैं।

अधिक जानकारी: http://theducks.org/2009/11/expanding-lvm-partitions-in-vmware-on-the-fly/


मैं सहमत हूं, लेकिन मैंने SCSI ड्राइव को फिर से शुरू करने के लिए जो भी किया, मुझे fdisk में नया डिस्क आकार कभी नहीं मिला, इसलिए मैं पहले रिबूट तक अटक गया था। और "partprobe" मेरे लिए एक नया आदेश है। निश्चित रूप से मुझे इस प्रक्रिया का परीक्षण करना है ... धन्यवाद।
यवेस मार्टिन

जानकारी के लिए परियोजना partprobeसे एक आदेश है parted
य्वेस मार्टिन

यदि आप नए डिस्क का आकार नहीं देख रहे थे, fdiskतो समस्या LVM के साथ नहीं है। मुझे पूछना होगा कि आप कैसे स्कैनिंग कर रहे थे क्योंकि आम तौर पर मेरे लिए नया डिस्क आकार उठाता है। अगर मैं मदद कर सकता हूं तो मैं एलवीएम का उपयोग करने वाला नहीं हूं। यदि आप pvcreateपूरे डिस्क को विभाजित करते हैं तो विभाजन तालिका को अपडेट करना केवल एक कम चीज है जो आपको इसे आकार देने के लिए जाती है।
ब्राचली

14

अन्य उत्तर दिए गए आपके प्रश्न को संबोधित नहीं करते हैं, मैंने पहले से कनेक्टेड डिस्क को फिर से व्यवस्थित करने के लिए सही कमांड की पहचान की है।

हमें आपकी पहले से कनेक्टेड डिस्क को फिर से आकार देना चाहिए, पहले यह पहचान लें कि आप किस डिस्क को फिर से आकार देना चाहते हैं।

ls /sys/class/scsi_disk/

मेरे उदाहरण में, मुझे एक सिम्कलिन नाम दिखाई देता है 0:0:0:0, इसलिए हम इस स्कैसी-डिस्क को फिर से लिखते हैं।

echo '1' > /sys/class/scsi_disk/0\:0\:0\:0/device/rescan

मैंने अभी अपनी VMware डिस्क को भी बढ़ाया है, और सही कमांड को खोजने के लिए अन्य उत्तरों को परिमार्जन करना है। उम्मीद है कि यह भविष्य के खोजकर्ताओं को निरर्थक प्रयासों से बचाएगा।


पूरी तरह से काम किया!
एमिल स्टायरके

आप उनके "/ देव /" नाम से डिस्क भी पा सकते हैं /sys/block/, इसलिए आप उदाहरण के लिए उपयोग कर सकते हैं /sys/block/sda/device/rescan
mwfearnley

4

जहां तक ​​रूट फाइल सिस्टम /को डिस्क पर माउंट किया गया है, जिसे विभाजन सारणी और डिस्क आकार को SCSI rescan द्वारा Linux 2.6.26 से रीफ्रेश नहीं किया गया है।

मुझे वास्तव में उम्मीद है कि यह जल्द ही नए कर्नेल संस्करणों के साथ बेहतर होगा।

इसलिए मुझे यह करना पड़ा:

  • नए डिस्क आकार को देखने के लिए पहली बार रिबूट करें fdisk
  • में पुराना प्राथमिक PV विभाजन हटाएं fdisk
  • डिस्क के अंत तक एक ही नंबर और प्रारंभ क्षेत्र के साथ एक विभाजन प्रविष्टि बनाएं
  • दूसरी बार रिबूट करें या केवल पैकेज partprobeसे चलाएं partedअगर /वहां पर मुहिम नहीं की जाती है
  • अब मैं pvresizeनया मुफ्त स्थान प्राप्त करने के लिए, lvextendऔर resize2fsफ़ाइल सिस्टम में कुछ और स्थान आवंटित करने के लिए चला सकता हूं

मुझे केवल उस बेवकूफ पुराने विभाजन तालिका को छोड़ने और pvcreateडिवाइस पर सीधे चलाने की सिफारिश की गई है क्योंकि Grub2 LVM विभाजन पर फ़ाइल सिस्टम से सीधे कर्नेल छवि को लोड करने में सक्षम है। लेकिन वितरण संस्थापकों के साथ ऐसा सेटअप बिल्कुल स्पष्ट नहीं है।

अपडेट: मैंने अभी डेबियन जीएनयू / लिनक्स जेसी 8.2 के साथ चलने वाले कर्नेल ३.१६ और parted३.२ को चेक किया है , partprobeअब विभाजन तालिका संस्करण के बाद cfdiskबिना किसी रिबूट के साथ सफल होता है । pvresizeतुरंत बाद काम करता है।

यदि आप एक पीवी को तार्किक पीसी विभाजन के रूप में संग्रहीत विस्तारित करना चाहते हैं, उदाहरण के लिए /dev/sda5विस्तारित प्राथमिक विभाजन पर /dev/sda2, उपयोग न करें fdiskलेकिन पसंद करें parted:

parted /dev/sda2 -1
parted /dev/sda5 -1
pvresize /dev/sda5

नहीं अंत में कमांड करता काम # जुदा / dev / sda2 -1 -> जुदा: अमान्य विकल्प - '1'
ऑस्कर Berggren

3

इससे पहले कि आप बड़ा विभाजन कर सकें, आपको डिस्क को फिर से आकार देने की आवश्यकता है।

Centos में आप यह कर सकते हैं

ls /sys/class/scsi_host

फिर प्रत्येक मेजबान के लिए

echo "- - -" > /sys/class/scsi_host/host#/scan

(संख्या के साथ # बदलें)

ऊपर एक और कदम भी है जो विस्तार कर रहा है या जो भी फाइल सिस्टम आप उपयोग कर रहे हैं एक बार विभाजन का आकार बदल दिया है।

आप अभी भी कुछ बिंदु पर उस विभाजन को अनमाउंट करने जा रहे हैं। हम जो करते हैं, उसमें दूसरी vmware डिस्क जोड़ते हैं और नए डिस्क पर विस्तार करने के लिए lvm का उपयोग करते हैं (और यदि यह एक प्रतिस्थापन है तो पुराने को कम करें) क्योंकि यह पूरी प्रक्रिया को लाइव होने की अनुमति देता है।


मेरा सिस्टम एक डेबियन है और मैं scsitools से rescan-scsi-bus.sh चलाता हूं। मुझे लगता है कि यह आपके / sys / class / scsi_host पर प्रस्तावित कमांड के बराबर है, लेकिन "fdisk" अभी भी मेरी डिस्क पर पुराने आकार को प्रदर्शित करता है ...
Yves Martin

क्या यह एक नया vmware डिस्क पहचानता है जब आप rescan?
जेम्सरैन

नहीं। यह डिस्क पहले से मौजूद है, यह नया नहीं है। VSphere क्लाइंट में डिस्क का आकार बढ़ाया गया है।
यवेस मार्टिन

मुझे पता है कि लेकिन आपको यह देखने के लिए एक नया जोड़ने की कोशिश करनी चाहिए कि क्या आपका स्कैन समस्या को कम करने के लिए इसे उठाता है
JamesRyan

मैं आपसे सहमत हूं और मैं पहले से ही अभ्यास से जानता हूं कि एक लिनक्स मशीन में एक नया एससीएसआई डिस्क जोड़ें जो सूचीबद्ध सभी चरणों के लिए ऑनलाइन किया जा सकता है। वीएम 10 साल तक चल सकता है ... मुझे निकट भविष्य में डिस्क की कुल संख्या का डर है ...
यवेस मार्टिन

2

अपडेट किए गए उत्तर के रूप में, Ubuntu 16.04.1 पर मैं 1024GB से 1.4TB पर वॉल्यूम का आकार बदलने के लिए निम्नलिखित करने में सक्षम था:

echo '1' > /sys/class/scsi_disk/32\:0\:1\:0/device/rescan
pvresize /dev/sdb
lvextend -l +100%FREE /dev/nvr01-opt/opt
resize2fs /dev/nvr01-opt/opt

कोई fdiskआवश्यकता नहीं है, और अंतरिक्ष तुरंत उपलब्ध था।


3
तुम भाग्यशाली हो। इसका कारण यह है कि आपके पास कोई विभाजन तालिका नहीं है /dev/sdb, लेकिन प्रत्यक्ष पीवी पर , जो कि शायद आपका एप्लिकेशन डेटा केवल द्वितीयक डिस्क है, लेकिन सिस्टम के साथ आपकी पहली डिस्क नहीं है (मैं अपने सिस्टम को उसी तरह कॉन्फ़िगर करने का उल्लेख करने के लिए!)। मेरा प्रश्न पिछले पीवी / इस तरह के "सिस्टम डिस्क" (एक टेम्पलेट से क्लोन) के विभाजन के बारे में था, जहां तक ​​लिनक्स वितरण प्रत्यक्ष पीवी पर स्थापना का समर्थन नहीं करते हैं जबकि लिनक्स कर्नेल और GRUB बूट करने में सक्षम होना चाहिए और सिस्टम डिस्क पर चलना चाहिए विभाजन तालिका के बिना।
यवेस मार्टिन

निष्पक्ष बिंदु। Google के माध्यम से इसे खोजने वालों के लिए: इसे ध्यान में रखें।
छिलका

1

आपको हमें सटीक विवरण देने के लिए पर्याप्त विवरण नहीं दिया गया है जिसकी आपको आवश्यकता होगी, लेकिन अनिवार्य रूप से आपको lvextendतार्किक वॉल्यूम बढ़ाने के लिए कमांड का उपयोग करने की आवश्यकता होगी , फिर e2fsckकमांड और फिर resize2fsकमांड वास्तव में आपके फाइल सिस्टम का विस्तार करने के लिए। इनमें से प्रत्येक कमांड को अतिरिक्त मापदंडों, विशेष रूप से डिवाइस और फाइल सिस्टम जानकारी की आवश्यकता होगी, जिसे हम प्रदान नहीं कर सकते हैं, लेकिन आपको ये जानना होगा, बस प्रत्येक कमांड के लिए -help विकल्प का उपयोग करके आपको यह बताना होगा कि उन्हें विशेष रूप से कैसे उपयोग करना है, आप शायद pvdisplay, lvdisplayऔर का उपयोग करके समाप्त हो जाएंगेmount मदद करने के लिए आदेशों इन मानकों को भरें।


मैं अन्य चरणों के लिए सभी आदेशों को जानता हूं। मेरा सवाल है: रिबूट के बिना पीवी के रूप में उपयोग किए जाने वाले प्राथमिक विभाजन को कैसे विकसित किया जाए?
य्वेस मार्टिन

क्षमा करें, क्या आपका मतलब केवल pvresize है?
चॉपर 3

मैं मानता हूं कि मेरा प्रश्न पर्याप्त रूप से स्पष्ट नहीं था (यहां तक ​​कि बोल्ड भाग के साथ)। pvresize को चरण 2 के रूप में उल्लेख किया गया है। मैं चरण 1 में फंस गया हूं: "पीसीएटी" विभाजन का आकार बढ़ाएं।
यवेस मार्टिन

क्या आपने VSClient के माध्यम से .vmdk का आकार बढ़ाया है?
चॉपर 3

3
/sbin/rescan-scsi-busDooes की पुष्टि करने के लिए मौजूदा डिस्क आकार नहीं बदलें। लेकिन echo "1" > '/sys/class/scsi_disk/0:0:1:0/device/rescan'करता है
मार्टिन

0

किसी ने भी आदेशों का एक पूरा सेट पोस्ट नहीं किया है, इसलिए यहां हम जाते हैं:

# the following steps are for adding a new HDD
apt install scsitools
rescan-scsi-bus
pvcreate /dev/sdX
vgextend /dev/vgname /dev/sdx
lvextend -l +100%FREE /dev/vgname/root 
resize2fs /dev/vgname/root

#if resizing existing HDD
fdisk /dev/sdX
create new partition
pvcreate /dev/sdXn
vgextend /dev/vgname /dev/sdXn
lvextend -l +100%FREE /dev/vgname/root 
resize2fs /dev/vgname/root

विचलित करने के लिए क्षमा करें, लेकिन मुझे डिस्क, विभाजन और पीवी को जोड़ने पर प्रत्येक डिस्क की वृद्धि "बदसूरत" लगती है और पैमाने नहीं। मेरा सवाल डिस्क या विभाजन या पीवी को जोड़ने के बिना डिस्क पर मौजूदा प्राथमिक विभाजन का विस्तार करने के बारे में था।
यवेस मार्टिन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.