आप KVM अतिथि के डिस्क स्थान को कैसे बढ़ाते हैं?


100

मैं एक उबंटू अतिथि को एक CentOS KVM होस्ट पर शुरू में 6GB डिस्क स्थान के साथ सेट करता हूं। मैं कमांड लाइन से उबंटू अतिथि के डिस्क स्थान को कैसे बढ़ाऊं?

EDIT # 1: मैं एक डिस्क छवि फ़ाइल (qemu) का उपयोग कर रहा हूं।


1
ऑनलाइन आकार: serverfault.com/a/952868/30946
Mircea Vutcovici

जवाबों:


115
  1. VM को रोकें
  2. qemu-img resize vmdisk.img +10G10Gb द्वारा छवि का आकार बढ़ाने के लिए चलाएँ
  3. VM को प्रारंभ करें, सामान्य रूप से विभाजन और LVM संरचना का आकार बदलें

आह, आपने मुझे इसके लिए हराया, मैंने सिर्फ मैन पेज में qemu-img के आकार के विकल्पों पर ध्यान दिया। तो यह कुछ चरणों को बचाने के लिए। अच्छा!
SLM

1
RHEL6.6 पर मेरे * .qcow2 img को पुनः आकार देने के लिए काम किया। धन्यवाद!
जैकब गोल्डेन

8
start the VM, resize the partitions and LVM structure within it normallyयह कैसे करना है? कृपया इसे समझाएं।
वाकी जूल

1
आपके पास एक थाल पर सब कुछ नहीं हो सकता है। यदि आपने विभाजन या LVs का आकार बदलने की कोशिश की है और असफल रहे हैं, तो एक नया प्रश्न खोलें, वर्णन करें कि आपने क्या प्रयास किया और क्या काम नहीं किया
dyasny

4
विभाजन और LVM का आकार बदलने के लिए, इस उत्कृष्ट लेख में बताए गए सभी चरणों का पालन करें: sandilands.info/sgordon/…
skonsoft

32

ऑनलाइन विधि (qemu, libvirt और virtio-block का उपयोग करके)

बेहतर या बदतर के लिए, नीचे दिए गए आदेश तब भी चलेंगे, जब लक्ष्य वर्चुअल डिस्क माउंट हो। यह उन वातावरणों में उपयोगी हो सकता है जहां डिस्क को अनमाउंट नहीं किया जा सकता है (जैसे रूट विभाजन), वीएम पर रहना चाहिए, और सिस्टम मालिक डेटा भ्रष्टाचार के जोखिम को संभालने के लिए तैयार है । उस जोखिम को निकालने के लिए, आपको VM में लॉग इन करना होगा और सबसे पहले लक्ष्य डिस्क को अनमाउंट करना होगा, कुछ ऐसा जो हमेशा संभव नहीं है।

KVM हाइपरविजर से निम्न कार्य करें।

  1. स्वयं डिस्क छवि फ़ाइल का आकार बढ़ाएँ (राशि बढ़ाने के लिए निर्दिष्ट करें):

    qemu-img resize <my_vm>.img +10G
    
  2. लिबेरविट शेल ( drive-virtio-disk0इस उदाहरण में) के माध्यम से पुण्य उपकरण का नाम प्राप्त करें :

    virsh qemu-monitor-command <my_vm> info block --hmp
      drive-virtio-disk0: removable=0 io-status=ok file=/var/lib/libvirt/images/<my_vm>.img ro=0 drv=raw encrypted=0
      drive-ide0-1-0: removable=1 locked=0 tray-open=0 io-status=ok [not inserted]
    
  3. नए आकार का पता लगाने के लिए virtio ड्राइवर को संकेत दें (कुल नई क्षमता निर्दिष्ट करें):

    virsh qemu-monitor-command <my_vm> block_resize drive-virtio-disk0 20G --hmp
    

फिर VM में लॉग इन करें। रनिंग dmesgको रिपोर्ट करना चाहिए कि गुणिका डिस्क में क्षमता परिवर्तन का पता चला है। इस बिंदु पर, आगे बढ़ें और आवश्यकतानुसार अपने विभाजन और LVM संरचना का आकार बदलें।


4
Qemu-img (मेरा दिनांकित २०१६-० says-१ page का आदमी पृष्ठ) कहता है: " चेतावनी: कभी भी किसी चल रही वर्चुअल मशीन या किसी अन्य प्रक्रिया द्वारा उपयोग की गई छवियों को संशोधित करने के लिए qemu-img का उपयोग न करें; इससे छवि नष्ट हो सकती है। ध्यान रखें कि किसी अन्य प्रक्रिया द्वारा संशोधित की जा रही छवि को क्वेरी करना असंगत स्थिति का सामना कर सकता है। " तो मुझे यकीन नहीं है कि क्या (पहला चरण) सुरक्षित है जब वर्चुअल मशीन अभी भी चल रही है।
user44400

Centos7 + kvm
e-info128

1
इसने मेरे लिए पूरी तरह से काम किया। Ceph और virtio block डिवाइस का उपयोग करना। हम एक अलग विभाजन पर एप्लिकेशन डेटा / MySQL DB स्टोर करते हैं। इस विभाजन तक पहुँचने वाले अनुप्रयोगों को रोकें। इसे अनमाउंट करें। इसे आकार दें। ऍफ़एससीके। फिर इसे नए आकार के साथ फिर से माउंट करें। कोई शटडाउन की जरूरत है।
नेलारो

इस उत्तर के रूप में भी, लेकिन मॉनिटर कंसोल के बजाय libvirt का उपयोग करना: serverfault.com/a/952868/30946
Mircea Vutcovici

21

ये सर्वरफॉल्ट प्रश्न समान हैं लेकिन अधिक विशिष्ट हैं, केवीएम ऑनलाइन डिस्क आकार? & Centos Xen, DOMU विभाजन और वॉल्यूम समूह का आकार बदल रहा है । 1 प्रश्न पूछता है कि केवीएम अतिथि को कैसे बढ़ाएं, जबकि यह ऑनलाइन है, जबकि 2 वें एक्सवीएन एलवीएम का उपयोग करके विशिष्ट है। मैं पूछ रहा हूं कि केवीएम ऑफ़लाइन होने के दौरान इसे कैसे पूरा किया जाए।

नोट: यह लिंक METHOD # 1 के लिए उपयोगी था, और दिखाता है कि KVM की डिस्क स्थान (ext3 आधारित) को बढ़ाने के लिए कैसे, HOWTO: KVM वर्चुअल मशीन छवि का आकार बदलें

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

विधि # 1: विभाजन ext2 / ext3 / ext4 आधारित हैं

इस विधि के नट निम्नानुसार हैं:

# 1. stop the VM
# 2. move the current image
mv mykvm.img mykvm.img.bak

# 3. create a new image
qemu-img create -f raw addon.raw 30G

# 4. concatenate the 2 images
cat mykvm.img.bak addon.raw >> mykvm.img

अब हाथ, बूट में बड़ा mykvm.img फ़ाइल के साथ gparted और नए जोड़े डिस्क स्थान में मौजूदा विभाजन का विस्तार। यह अंतिम चरण मूल रूप से ओएस विभाजन का विस्तार करता है ताकि यह अतिरिक्त स्थान का उपयोग कर सके।

विधि # 2: विभाजन LVM आधारित हैं

यहाँ वे चरण हैं जिनका मैंने मोटे तौर पर KVM अतिथि के रूप में अनुसरण किया है जो आंतरिक रूप से LVM का उपयोग करते हैं।

  1. VM को बंद करें
  2. अतिथि की "छवि फ़ाइल" में अधिक स्थान जोड़ें (कुछ इस तरह: बिल्ली पुराना। 10g_addon.raw >> new.img
  3. VM को प्रारंभ करें (नए बनाए गए new.img का उपयोग करके)
  4. VM के अंदर fdisk चलाएं और LVM विभाजन हटाएं और पुनः बनाएं

    % fdisk /dev/vda
    ...
    Device Boot      Start         End      Blocks   Id  System
    /dev/vda1   *           1          13      104391   83  Linux
    /dev/vda2              14        3263    26105625   8e  Linux LVM
    
    Command (m for help): d
    Partition number (1-4): 2
    
    Command (m for help): p
    
    Disk /dev/vda: 48.3 GB, 48318382080 bytes
    255 heads, 63 sectors/track, 5874 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    
    Device Boot      Start         End      Blocks   Id  System
    /dev/vda1   *           1          13      104391   83  Linux
    
    Command (m for help): n 
    Command action
      e   extended
      p   primary partition (1-4)
    p
    Partition number (1-4): 2
    First cylinder (14-5874, default 14): 14
    Last cylinder or +size or +sizeM or +sizeK (14-5874, default 5874): 
    Using default value 5874
    
    Command (m for help): p
    
    Disk /dev/vda: 48.3 GB, 48318382080 bytes
    255 heads, 63 sectors/track, 5874 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    
    Device Boot      Start         End      Blocks   Id  System
    /dev/vda1   *           1          13      104391   83  Linux
    /dev/vda2              14        5874    47078482+  83  Linux
    
    Command (m for help): t
    Partition number (1-4): 2
    Hex code (type L to list codes): 8e
    Changed system type of partition 2 to 8e (Linux LVM)
    
    Command (m for help): p
    
    Disk /dev/vda: 48.3 GB, 48318382080 bytes
    255 heads, 63 sectors/track, 5874 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    
    Device Boot      Start         End      Blocks   Id  System
    /dev/vda1   *           1          13      104391   83  Linux
    /dev/vda2              14        5874    47078482+  8e  Linux LVM
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    
    WARNING: Re-reading the partition table failed with error 16: Device or 
    resource busy.
    The kernel still uses the old table.
    The new table will be used at the next reboot.
    Syncing disks.
    %
    
  5. VM को रिबूट करें

  6. LVM भौतिक आयतन का आकार बदलें

    % pvdisplay 
      --- Physical volume ---
      PV Name               /dev/vda2
      VG Name               VolGroup00
      PV Size               24.90 GB / not usable 21.59 MB
      Allocatable           yes (but full)
      PE Size (KByte)       32768
      Total PE              796
      Free PE               0
      ...
    
    % pvresize /dev/vda2
    
    % pvdisplay
      --- Physical volume ---
      PV Name               /dev/vda2
      VG Name               VolGroup00
      PV Size               44.90 GB / not usable 22.89 MB
      Allocatable           yes 
      PE Size (KByte)       32768
      Total PE              1436
      Free PE               640
      ...
    
  7. LVM लॉजिकल वॉल्यूम का आकार बदलें

      % lvresize /dev/VolGroup00/LogVol00 -l +640
      Extending logical volume LogVol00 to 43.88 GB
      Logical volume LogVol00 successfully resized
    
  8. फ़ाइल सिस्टम बढ़ाएँ

      % resize2fs /dev/VolGroup00/LogVol00 
      resize2fs 1.39 (29-May-2006)
      Filesystem at /dev/VolGroup00/LogVol00 is mounted on /; on-line resizing required
      Performing an on-line resize of /dev/VolGroup00/LogVol00 to 11501568 (4k) blocks.
      The filesystem on /dev/VolGroup00/LogVol00 is now 11501568 blocks long.
    

उपरोक्त मेरा उदाहरण है, लेकिन मैंने इस वेबसाइट पर चरणों का पालन किया


इस पोस्ट में विधि # 1 ऐसा प्रतीत नहीं होता है कि लाल टोपी में वर्चुअल मशीन प्रबंधक नए आकार की रिपोर्ट नहीं करता है। @Dyasny द्वारा सुझाई गई विधि कम से कम इस संबंध में बेहतर काम करती है।
इवान ऑकम्प

@IwanAucamp - दिलचस्प, मैं उपयोग करता हूँ virt-managerऔर विधि # 1 & # 2 का बड़े पैमाने पर इस्तेमाल किया है इससे पहले कि हम अपने KVM सर्वर को KVM के नए संस्करण (CentOS 5 -> CentOS 6) में स्थानांतरित कर दें। मैं अब qemu-img resizeविधि का भी उपयोग करता हूं ।
slm

पद्धति # 2 के लिए, आपको चरण 7 के रूप में lvextend handier मिल सकता है: lvextend /dev/Volgroup/lvname /dev/vda2(सभी एक पंक्ति में, जहां / dev / vda2 आपकी भौतिक मात्रा होगी)। किसी अन्य विकल्प के बिना, यह उस वॉल्यूम समूह में अधिकतम आकार का उपयोग करेगा।
माइक एस

विधि # 2, चरण 4 एक विभाजन तालिका में तार्किक वॉल्यूम होने पर काम नहीं करेगा। एक विस्तारित प्रकार के विभाजन के मनोरंजन के बाद, पहले उपलब्ध क्षेत्र अब उस मैच से मेल नहीं खाएगा जो बदलावों से पहले था। उदाहरण के लिए, यदि आपके तार्किक विभाजन का पहला क्षेत्र 1001472 था, तो परिवर्तनों के बाद यह 1003518 होगा (आकार बदलने के बाद 10G डिस्क से पहले और 50G)। किसी को भी पता है कि कैसे फिर से बनाना है, यदि संभव हो तो, एक ही क्षेत्र में तार्किक वॉल्यूम?
ILIV

1
यह विभाजनों के लिए डिफ़ॉल्ट रूप से संरेखण बाधाओं (1MB चरण) को लागू करने के लिए fdisk के कारण है। , को हल करने के 1003518 का डिफ़ॉल्ट मान स्वीकार करते हैं, विशेषज्ञ मोड में प्रवेश करने (एक्स) तो ख चुनें और देखें 1001472. को पहले सेक्टर सेट unix.stackexchange.com/a/320447 जानकारी के लिए।
18

11

आकार और एक चरण में आंतरिक विभाजन का विस्तार करें

मेरे पास एक qbb2 अतिथि फ़ाइल छवि के साथ एक उबंटू होस्ट था और डिस्क का आकार बदलना और एक चरण में सभी उपयुक्त विभाजन का विस्तार करना चाहता था। यह आपको libvirt अतिथि फ़ाइल सिस्टम उपयोगिताओं को सेट करने के लिए आवश्यक है, लेकिन वे वैसे भी उपयोगी होते हैं।

यहाँ से प्रेरणा: http://libguestfs.org/virt-resize.1.html

यहाँ मुख्य आदेश है: virt-resize

  • यह एक कामचलाऊ उपयोगिता है
  • यह एक अतिथि डिस्क का विस्तार कर सकता है और एक चरण में विभाजन का विस्तार कर सकता है
  • यह डिस्क को कॉपी करता है, यह इसे जगह में विस्तारित नहीं करता है
    • यह अच्छा है क्योंकि आपके पास बैकअप के रूप में अछूता मूल है

तैयारी:

* Install libvirt file system utilities package 
    * sudo apt-get install libguestfs-tools

* Test to see if it works (it won't) -- you need to see "===== TEST FINISHED OK =====" at the bottom:
    * sudo libguestfs-test-tool

* If you don't see "===== TEST FINISHED OK =====" at the bottom then repair it:
    * sudo update-guestfs-appliance

* Run the test again and verify it works
    * sudo libguestfs-test-tool

अब निम्नलिखित करें:

1) अतिथि को बंद करें:

2) वर्तमान आकार की जाँच करें और उस विभाजन नाम को देखें जिसे आप libvirt उपयोगिता का उपयोग करके विस्तारित करना चाहते हैं:

sudo virt-filesystems --long --parts --blkdevs -h -a name-of-guest-disk-file

3) नया (40G) आउटपुट डिस्क बनाएँ:

qcow: sudo qemu-img create -f qcow2 -o preallocation=metadata outdisk 40G
img:  sudo truncate -s 40G outdisk

4) उपयुक्त विभाजन का विस्तार करते हुए पुराने को नए में कॉपी करें (चरण 2 से आपकी डिस्क विभाजन को संभालने / dev / sda1):

sudo virt-resize --expand /dev/sda1 indisk outdisk

5) एक बैकअप के रूप में इंडिस्क फ़ाइल का नाम बदलें, इंडिस्क के रूप में आउटस्कि का नाम बदलें (या अतिथि XML को संशोधित करें)

6) अतिथि को रिबूट करें और मूल फ़ाइल को हटाने से पहले नई डिस्क फ़ाइल का सावधानीपूर्वक परीक्षण करें

7) लाभ!


यह लगभग मेरे मामले में काम करता है। दुख की बात है, लगभग। जब अतिथि (एक CentOS 7 सर्वर) को रिबूट किया जाता है, तो यह विस्तारित डिस्क को अनबूटेबल पाता है।
उरिखीदुर

1
वो मेरे लिए बहुत अच्छा था। ओमिटिंग -o preallocation=metadataएक विरल फ़ाइल बनाता है। उस विकल्प के साथ यह पूरे आकार को पूर्व-आवंटित करता है।
डेनिस विलियमसन

बहुत बढ़िया, इस जवाब ने इसे मेरे लिए रोक दिया। बहुत बहुत धन्यवाद! Libguestfs ( libguestfs.org/virt-resize.1.html ) के लिए "आधिकारिक" प्रलेखन , दुर्भाग्य से अच्छी तरह से लिखा नहीं गया है और समाप्त होने से काफी भ्रमित हो रहा है।
मबेलो

1
मेरे लिए अच्छी तरह से काम किया, याद रखें कि आपको वास्तव में उपयोग करने की आवश्यकता नहीं है -o preallocation=metadataऔर यदि आप नहीं करते हैं तो आपको truncateकदम को छोड़ देना चाहिए । virt-resizeवैसे भी उपयुक्त रूप से फ़ाइल बढ़ेगा।
अमोघ

5

यदि आप VM के भीतर LVM का उपयोग कर रहे हैं, तो यह करने का सबसे सरल तरीका है कि VM में एक नई वर्चुअल डिस्क जोड़ें और उस पर वॉल्यूम समूह और लॉजिकल वॉल्यूम का विस्तार करें।

यह जाँचने के लिए कि क्या आप LVM रन का उपयोग कर रहे हैं sudo pvs; sudo vgs; sudo lvs, आपको कुछ इस तरह मिलेगा:

PV         VG     Fmt  Attr PSize  PFree
/dev/vda1  vgWWW  lvm2 a-   30.00g    0

VG     #PV #LV #SN Attr   VSize  VFree
vgWWW    1   2   0 wz--n- 30.00g    0

LV   VG    Attr   LSize 
root vgWWW -wi-ao 28.80g
swap vgWWW -wi-ao  1.19g

अगर VM का OS LVM का उपयोग कर रहा है। उपरोक्त उदाहरण में VM के पास 30Gbyte vdisk है, LVM का उपयोग करके कॉन्फ़िगर किया गया है जिसमें एक वॉल्यूम समूह है जिसका नाम vgWWW है जिसमें दो लॉजिकल वॉल्यूम हैं, एक स्वैप के लिए और दूसरा सब कुछ के लिए।

यदि वीएम में LV का उपयोग होता है:

  1. VM को बंद करें
  2. होस्ट पर एक नई वर्चुअल डिस्क फ़ाइल बनाएँ और उसे VM में जोड़ें
  3. VM को पुनरारंभ करें और लॉगिन करें
  4. LVM के लिए भौतिक वॉल्यूम होने के रूप में नई ड्राइव को चिह्नित करें sudo pvcreate /dev/vdb
  5. डिस्क के इस नए ब्लॉक को शामिल करने के लिए वॉल्यूम समूह का विस्तार करें sudo vgextend vgWWW /dev/vdb
  6. नए स्थान को लेने के लिए तार्किक मात्रा बढ़ाएँ sudo lvextend --extents +100%FREE /dev/vgWWW/root(या ऐसा कुछ जैसे sudo lvextend --size +8G /dev/vgWWW/rootअगर आप इसे पूरे तरीके से विकसित नहीं करना चाहते हैं, तो यह उदाहरण 8Gb को मात्रा में जोड़ देगा)
  7. के साथ फाइल सिस्टम का आकार बदलें resize2fs /dev/vgWWW/root

नोट: उपरोक्त मानता है कि vg / lv नाम मेरे उदाहरण के समान हैं जो कि संभावना नहीं है, उपयुक्त के रूप में बदलें, भले ही वीएम में पहले से ही एक आभासी ड्राइव था जिसे vdbनया कहा जाता है वह कुछ और होगा ( vdcऔर, इत्यादि)

नोट: resize2fs केवल ext2, ext3 और ext4 फाइल सिस्टम पर काम करेगा। यदि आप कुछ और उपयोग कर रहे हैं तो यह त्रुटि करेगा और कुछ भी नहीं करेगा।

नोट: जैसा कि आप एक लाइव फाइल सिस्टम का आकार बदल रहे हैं , यह आपको पहले resize2fsचलाने के लिए प्रेरित नहीं करेगा fsckक्योंकि यह एक अनमाउंट फाइल सिस्टम के लिए होगा, यह सिर्फ आगे बढ़ेगा। आप आगे बढ़ने से पहले कोई समस्या नहीं है केवल पढ़ने के लिए एक filesystem जाँच चलाना चाहते हो सकता है।


यह GUI के साथ भी किया जा सकता है जो काफी अच्छा centos.org/docs/5/html/Deployment_Guide-en-US/…
Nux

5

ऑनलाइन आकार परिवर्तन करना संभव है। libvirtd मूल रूप से इसका समर्थन करता है:

ब्लॉक डिवाइस का नाम खोजें। "Vda" जैसा कुछ होना चाहिए

$ virsh domblklist <libvirtd_vm_name>

वर्चुअल डिवाइस का आकार बदलें:

$ virsh blockresize --domain <libvirtd_vm_name> --path <block_device_name> --size <new_size>

यहाँ एक उदाहरण थे मैं विस्तार है vdaसे डिस्क 50GBके 51GBलिए undercloudवी एम।

[root@gss-rhos-4 ~]# virsh domblklist undercloud
Target     Source
------------------------------------------------
vda        /home/images/undercloud.qcow2

अब .qcow2 छवि फ़ाइल के विवरण पर एक नज़र डालें:

[root@gss-rhos-4 ~]# qemu-img info /home/images/undercloud.qcow2
image: /home/images/undercloud.qcow2
file format: qcow2
virtual size: 50G (53687091200 bytes)
disk size: 38G
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
    corrupt: false

अब vda ब्लॉक डिवाइस का आकार बदलें:

[root@gss-rhos-4 ~]# virsh blockresize undercloud vda 51G
Block device 'vda' is resized

और पुष्टि करें:

[root@gss-rhos-4 ~]# qemu-img info /home/images/undercloud.qcow2
image: /home/images/undercloud.qcow2
file format: qcow2
virtual size: 51G (54760833024 bytes)
disk size: 38G
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
    corrupt: false
[root@gss-rhos-4 ~]#

तब आप ब्लॉक डिवाइस और fs का आकार बदलने के लिए कमांड दिखाने के लिए VM के अंदर इस स्क्रिप्ट का उपयोग कर सकते हैं: https://github.com/mircea-vutcovici/scripts/blob/master/vol_resize.sh


3

यदि आप गुण और ड्राइव का उपयोग कर रहे हैं तो वीएम को रिबूट किए बिना आपके वीएम की डिस्क का आकार बढ़ाने की संभावना है।

  1. एक नई खाली डिस्क को परिभाषित करने के लिए पुण्य-प्रबंधक या वायरश का उपयोग करें
  2. कर्नेल को एक नया / देव / vdb देखना चाहिए
  3. (वैकल्पिक) पाने के लिए fdisk के साथ एक प्राथमिक विभाजन बनाएँ / dev / vdb1, फिर kpartx -a / dev / vdb का उपयोग विभाजन तालिका को फिर से पढ़ने के लिए करें

  4. यदि आपने विभाजन नहीं बनाया है तो vgextend vg_name / dev / vdb1 (या / dev / vdb का उपयोग करें)

  5. Lvextend -l + 100% मुफ़्त / dev / vg_name / lv_name का उपयोग करें
  6. अपने फाइलसिस्टम को बढ़ाने के लिए resize2fs / dev / vg_name / lv_name का उपयोग करें

हो गया।


2
मैं जोड़ दूंगा कि libguestfs.org/virt-resize.1.html को भी मदद करनी चाहिए।
फियरलेस

3

इस तरह आप अपने इच्छित विभाजन का विस्तार कर सकते हैं:

    # see what partitions you have? 
    virt-filesystems --long -h --all -a olddisk

    truncate -r olddisk newdisk
    truncate -s +5G newdisk

    # Note "/dev/sda2" is a partition inside the "olddisk" file.
    virt-resize --expand /dev/sda2 olddisk newdisk

अधिक उदाहरण यहाँ देखें ।


2

इसे करने का दूसरा तरीका

truncate -s +2G vm1.img 

डिस्क रेस्क्यू बनाने के लिए जाएं और बाद में आप अपना एलवीएम आकार बदल सकते हैं।


1

यदि आपके वीएम में एलवीएम है तो यह आसान और तेज है।

  1. VM (अतिथि मशीन) को बंद करें।
  2. अपने होस्ट मशीन में नया संग्रहण उपकरण जोड़ें।
  3. अतिथि को चालू करें।
  4. ओपन सिस्टम -> प्रशासन -> लॉजिकल वॉल्यूम मैनेजमेंट (या sudo system-config-lvmटर्मिनल में टाइप ) *।

मैंने GUI को काफी सहज पाया, लेकिन अगर आपको समस्या है तो अगले चरणों का पालन करें।

  1. "Uninitialized Entities" खोलें और अपनी नई ड्राइव ढूंढें।
  2. नई ड्राइव का चयन करने के बाद, छवि के नीचे आपको एक इनिशियल बटन ढूंढना चाहिए। इसे दबाओ।
  3. यह आपसे विभाजन के बारे में पूछेगा - आपको इसकी आवश्यकता नहीं है।
  4. जब आपके ड्राइव को मौजूदा वॉल्यूम समूह में जोड़ा जाता है।
  5. अंत में आपको अपना तार्किक आयतन विकसित करने की आवश्यकता है - यह आपके वॉल्यूम के गुणों को संपादित करके समूह के लॉजिकल व्यू में किया जाता है।
  6. बचाओ और अपना किया। VM को पुनरारंभ करने की आवश्यकता नहीं है।

ध्यान दें! कम से कम CentOS 6 LVM GUI डिफ़ॉल्ट रूप से स्थापित नहीं है, लेकिन आप इसे स्थापित कर सकते हैं yum install system-config-lvm


1
  1. VM को बंद करें
  2. चित्र को पुनर्कार करें:

    qemu-img resize vmdisk.img +16G
    

    छवि का आकार 16 GB तक बढ़ाता है।

  3. यदि आपकी छवि में GPT (GUID विभाजन तालिका) है तो GPT में प्रयुक्त ड्राइव आकार नए आकार से भिन्न होगा, आपको इसे इसके लिए ठीक करना होगा gdisk:

    MY_DRIVE=/dev/vda
    gdisk $MY_DRIVE <<EOF
    w
    Y
    Y
    EOF
    

    या साथ parted:

    parted $MY_DRIVE print Fix
    

    किसी कारण के लिए partedफिक्सिंग तब काम नहीं कर रही है जब कोई भी टेंट प्रस्तुत नहीं किया जाता है (उदाहरण के लिए जब वैग्रंट के साथ प्रावधान किया जाता है) तो मैं उपयोग करता हूं gdisk

  4. सभी उपलब्ध स्थान को भरने के लिए विभाजन का आकार बढ़ाएँ:

    MY_PARTITION_GUID=$(
    gdisk $MY_DRIVE <<EOF | sed -n -e 's/^Partition unique GUID: //p'
    i
    EOF
    )
    
    MY_PARTITION_FIRST_SECTOR=$(
    gdisk $MY_DRIVE <<EOF | sed -n -e 's/^First sector: \([0-9]\+\).*/\1/p'
    i
    EOF
    )
    
    gdisk $MY_DRIVE <<EOF
    d
    n
    
    $MY_PARTITION_FIRST_SECTOR
    
    
    x
    a
    2
    
    c
    $MY_PARTITION_GUID
    w
    Y
    EOF
    

    x a 2 <Enter>यदि आप विरासत BIOS का उपयोग कर रहे हैं तो यह हिस्सा वैकल्पिक और आवश्यक है। MY_PARTITION_GUID=...और c $MY_PARTITION_GUIDभाग भी वैकल्पिक और आवश्यक हैं यदि आप विभाजन का उपयोग यूयूआईडी में /etc/fstabया कहीं और करते हैं।

  5. रिबूट या साथ विभाजन पुन: पढ़ने partx -u $MY_DRIVEया partprobe

  6. विभाजन बढ़ाएँ, उदाहरण के लिए ext2, ext3या ext4:

    MY_PARTITION="${MY_DRIVE}1"
    resize2fs $MY_PARTITION
    

0

आप गार्टर्ड माउंटेड के साथ सोलस वीएम का उपयोग कर सकते हैं। एक बार gparted के साथ उपयोग करने के बाद आप आसानी से सिस्टम को बूट कर सकते हैं और अंतरिक्ष को समायोजित कर सकते हैं। सुनिश्चित करें कि आपके पास सही बूट प्राथमिकता सेट है। एक संदर्भ के रूप में कृपया नीचे दिए गए यूआरएल को देखें जो काम आ सकता है। https://greencloudvps.com/knowledgebase/11/How-to-Extend-the-Hard-drive-on-KVM-after-upgrading-VPS.html

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