আপনি কেভিএম অতিথির ডিস্কের স্থানটি কীভাবে বৃদ্ধি করবেন?


100

আমি সেন্টস কেভিএম হোস্টে প্রাথমিকভাবে 6 গিগাবাইট ডিস্ক স্পেস সহ একটি উবুন্টু গেস্ট সেটআপ করি। কমান্ড লাইন থেকে আমি উবুন্টু অতিথির ডিস্কের স্থান বাড়ানোর বিষয়ে কীভাবে যেতে পারি?

সম্পাদনা # 1: আমি একটি ডিস্ক চিত্র ফাইল (qemu) ব্যবহার করছি।


1
অনলাইনে আকার পরিবর্তন করুন: সার্ভারসফল্ট
মিরেসিয়া ভুটকোভিচি

উত্তর:


115
  1. ভিএম বন্ধ করুন
  2. qemu-img resize vmdisk.img +10G10 জিবি দ্বারা চিত্রের আকার বাড়াতে চালান
  3. ভিএম শুরু করুন, এর মধ্যে পার্টিশন এবং এলভিএম কাঠামোটিকে সাধারণত আকার দিন

আহ্, আপনি আমাকে এটির জন্য প্রহার করলেন, আমি ম্যান পৃষ্ঠাতে কেবলমাত্র কেমু-ইমগের আকার পরিবর্তন করতে লক্ষ্য করেছি। সুতরাং এটি কয়েক পদক্ষেপ সংরক্ষণ করুন। নিস!
slm

1
আরএইচইএল 6.6 এ আমার * .QCO2 img পুনরায় আকার দেওয়ার জন্য কাজ করেছেন। ধন্যবাদ!
জ্যাকব গলডেন

8
start the VM, resize the partitions and LVM structure within it normallyএটা কিভাবে করতে হবে? দয়া করে এটি ব্যাখ্যা করুন।
ওয়াকি

1
আপনার হাতে একটি প্ল্যাটারে সবকিছু হস্তান্তর করা যায় না। আপনি যদি পার্টিশন বা এলভিগুলির আকার পরিবর্তন করতে ব্যর্থ হন এবং একটি নতুন প্রশ্ন খুলুন, আপনি কী চেষ্টা করেছেন এবং কোনটি কার্যকর হয়নি তা বর্ণনা করুন
dyasny

4
পার্টস এবং এলভিএমের আকার পরিবর্তন করতে, এই দুর্দান্ত নিবন্ধে বর্ণিত
স্ক্যানসফট

32

অনলাইন পদ্ধতি (কিউমু, লিবারভিট এবং ভার্টিও-ব্লক ব্যবহার করে)

আরও ভাল বা আরও খারাপের জন্য, টার্গেট ভার্চুয়াল ডিস্ক মাউন্ট করা থাকলেও নীচের কমান্ডগুলি চলবে। এটি এমন পরিবেশে কার্যকর হতে পারে যেখানে ডিস্কটি আনমাউন্ট করা যায় না (যেমন একটি রুট পার্টিশন), ভিএম অবশ্যই অবিরত থাকে এবং সিস্টেমের মালিক ডেটা দুর্নীতির ঝুঁকি ধরে নিতে রাজি হন । এই ঝুঁকিটি অপসারণ করতে, আপনাকে ভিএম-এ লগ ইন করতে হবে এবং প্রথমে টার্গেট ডিস্কটি আনমাউন্ট করতে হবে, এমন কিছু যা সর্বদা সম্ভব নয়।

কেভিএম হাইপারভাইজার থেকে নিম্নলিখিতটি সম্পাদন করুন।

  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. নতুন আকার সনাক্ত করতে ভারিটিও ড্রাইভারকে সিগন্যাল করুন (মোট নতুন ক্ষমতা নির্দিষ্ট করুন):

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

তারপরে ভিএম-এ লগইন করুন। চলমান dmesgরিপোর্ট করা উচিত যে ভার্টিও ডিস্ক একটি ক্ষমতা পরিবর্তন সনাক্ত করেছে। এই মুহুর্তে, এগিয়ে যান এবং আপনার পার্টিশন এবং প্রয়োজন অনুযায়ী LVM কাঠামোটি পুনরায় আকার দিন।


4
Qemu-img (খনি তারিখটি ২০১-0-০ 2016-০৮) এর ম্যান পেজটি বলে: " সতর্কতা: চলমান ভার্চুয়াল মেশিন বা অন্য কোনও প্রক্রিয়া ব্যবহার করে চিত্রগুলি পরিবর্তন করতে কখনই qemu-img ব্যবহার করবেন না; এটি চিত্রটি নষ্ট করতে পারে Also এছাড়াও, সচেতন থাকুন যে কোনও চিত্র যা অন্য প্রক্রিয়া দ্বারা সংশোধন করা হচ্ছে জিজ্ঞাসা করা বেমানান অবস্থার মুখোমুখি হতে পারে। " সুতরাং ভার্চুয়াল মেশিন এখনও চলমান অবস্থায় (প্রথম ধাপ) নিরাপদ কিনা তা আমি নিশ্চিত নই।
ব্যবহারকারী 44400

Centos7 + kvm
e-info128

1
এটি আমার জন্য পুরোপুরি কাজ করেন। সিএফ এবং ভার্টিও ব্লক ডিভাইসগুলি ব্যবহার করে। আমরা অ্যাপ্লিকেশন ডেটা / মাইএসকিউএল ডিবি একটি পৃথক পার্টিশনে সঞ্চয় করি। এই পার্টিশনটি অ্যাক্সেস করা অ্যাপ্লিকেশনগুলি বন্ধ করুন। এটি আনমাউন্ট করুন। এটির আকার পরিবর্তন করুন। fsck। তারপরে নতুন আকারের সাথে এটি আবার মাউন্ট করুন। কোনও শাটডাউন দরকার নেই।
নেলারাও

এই উত্তর হিসাবে একই, তবে মনিটরের কনসোলের পরিবর্তে libvirt ব্যবহার করুন: সার্ভারফ্লট
মিরেসিয়া ভুটকোভিচি

21

এই সার্ভারফাল্ট প্রশ্নগুলি একই, তবে আরও নির্দিষ্ট, কেভিএম অনলাইন ডিস্কের আকার পরিবর্তন করে? & সেন্টোস জেন ডোমু পার্টিশন এবং ভলিউম গ্রুপকে পুনরায় আকার দিচ্ছে । 1 ম কোনও কেভিএম গেস্ট অনলাইনে কীভাবে বাড়ানো যায় সেই প্রশ্নটি জিজ্ঞাসা করে, যখন দ্বিতীয়টি এলভিএম ব্যবহার করে এক্সইএন নির্দিষ্ট করে। কেভিএম অফলাইন থাকাকালীন এটি কীভাবে সম্পন্ন করবেন আমি জিজ্ঞাসা করছি।

দ্রষ্টব্য: এই লিঙ্কটি মেথড # 1 এর জন্য দরকারী ছিল এবং কেভিএমের ডিস্ক স্পেস (এক্সট3 ভিত্তিক) কীভাবে বাড়ানো যায় তা দেখায়, হাওটো: একটি কেভিএম ভার্চুয়াল মেশিন চিত্রের আকার পরিবর্তন করুন

কেভিএম অতিথির সাথে সচেতন হওয়ার একটি বিষয় হ'ল তারা যে পার্টিশনগুলি ভিতরে ব্যবহার করছে তা তাদের ডিস্কের স্থান বাড়ানোর জন্য কোন পদ্ধতিটি ব্যবহার করতে পারে তা কার্যকর করতে পারে।

পদ্ধতি # 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 ফাইলটি সহ, বুট জিপিআর্ট করুন এবং বিদ্যমান পার্টিশনটি নতুন যুক্ত ডিস্কের জায়গায় প্রসারিত করুন । এই শেষ পদক্ষেপটি ওএস পার্টিশনটি মূলত প্রসারিত করে যাতে এটি অতিরিক্ত স্থান ব্যবহার করতে পারে।

পদ্ধতি # 2: পার্টিশনগুলি এলভিএম ভিত্তিক

অভ্যন্তরীণভাবে LVM ব্যবহার করা একটি কেভিএম অতিথির আকার পরিবর্তন করতে আমি মোটামুটি অনুসরণ করেছি।

  1. ভিএম বন্ধ করুন
  2. অতিথির "চিত্র ফাইলটিতে" আরও স্থান যুক্ত করুন (এর মতো কিছু: cat old.img 10G_addon.raw >> new.img
  3. ভিএম শুরু করুন (নতুন নির্মিত নতুন.আইএমজি ব্যবহার করে)
  4. ভিএম এর ভিতরে 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. ভিএম পুনরায় বুট করুন

  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 নম্বর পদ্ধতিটি এটি ভালভাবে কাজ করছে বলে মনে হচ্ছে না - লাল টুপিতে ভার্চুয়াল মেশিন ম্যানেজার নতুন আকারের পরে রিপোর্ট করে না। @ এডাসনির প্রস্তাবিত পদ্ধতিটি কমপক্ষে এই ক্ষেত্রে আরও ভালভাবে কাজ করবে বলে মনে হচ্ছে।
ইভান অ্যাক্যাম্প 30:38

@ আইয়ানআউক্যাম্প - আকর্ষণীয়, আমি কেভিএমের virt-managerনতুন সংস্করণে (সেন্টোস 5 -> সেন্টোস 6) মাইগ্রেট করার আগে আমি # 1 এবং # 2 পদ্ধতিটি ব্যাপকভাবে ব্যবহার করেছি এবং ব্যবহার করেছি। আমি এখন qemu-img resizeপদ্ধতিটিও ব্যবহার করি ।
slm

পদ্ধতি # 2 এর জন্য, আপনি লেভেক্স্যান্ডেন্ড হ্যান্ডিয়ারটি ধাপ 7 হিসাবে সন্ধান করতে পারেন: lvextend /dev/Volgroup/lvname /dev/vda2(সমস্ত এক লাইনে, যেখানে / dev / vda2 আপনার শারীরিক আয়তন হবে)। অন্য কোনও বিকল্প ছাড়াই এটি that ভলিউম গ্রুপে সর্বাধিক আকার ব্যবহার করবে।
মাইক এস

পার্টিশন টেবিলের মধ্যে লজিক্যাল ভলিউম থাকলে পদ্ধতি # 2, পদক্ষেপ 4 কাজ করবে না। পার্টিশনের প্রসারিত প্রকারের বিনোদনের পরে, প্রথম উপলব্ধ সেক্টর আর পরিবর্তনগুলির আগে যা ছিল তার সাথে আর মেলে না। উদাহরণস্বরূপ, যদি আপনার লজিক্যাল পার্টিশনের প্রথম ক্ষেত্রটি 1001472 হয়, পরিবর্তনের পরে এটি হবে 1003518 (পুনরায় আকার দেওয়ার পরে 10G ডিস্কের আগে এবং 50G ধরে)। যে কেউ কীভাবে পুনরায় তৈরি করতে জানেন, যদি সম্ভব হয় তবে একই প্রথম খাতে যৌক্তিক খণ্ডগুলি কীভাবে তৈরি করা যায়?
ILIV

1
এটি ডিফল্টরূপে পার্টিশনে প্রান্তিককরণ সীমাবদ্ধতা (1MB পদক্ষেপ) প্রয়োগ করে এফডিস্কের কারণে। প্রায় কাজ করার জন্য, 1003518 এর ডিফল্ট মান গ্রহণ করুন, বিশেষজ্ঞ মোডটি প্রবেশ করুন (x) তারপরে b নির্বাচন করুন এবং প্রথম সেক্টরটি 1001472 এ সেট করুন details বিশদগুলির জন্য unix.stackexchange.com/a/320447 দেখুন ।
ILIV

11

অভ্যন্তরীণ পার্টিশনগুলির এক ধাপে পুনরায় আকার দিন এবং প্রসারিত করুন

আমার একটি উবুন্টু হোস্ট ছিল একটি কিউকিও 2 অতিথি ফাইলের ইমেজ সহ এবং ডিস্কটি আকার পরিবর্তন করতে এবং উপযুক্ত পার্টিশনগুলি এক ধাপে প্রসারিত করতে চেয়েছিলাম। এটি আপনাকে 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) অতিথি বন্ধ:

২) বর্তমান আকার পরিবর্তন করুন এবং আপনি যে অংশবিশেষের নামটি libvirt ইউটিলিটি ব্যবহার করে প্রসারিত করতে চান তা দেখুন:

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

3) নতুন (40 জি) আউটপুট ডিস্ক তৈরি করুন:

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

4) উপযুক্ত পার্টিশনটি প্রসারিত করার সময় পুরানোটিকে নতুনটিতে অনুলিপি করুন (ধাপ ২ থেকে আপনার ডিস্ক পার্টিশনটি ধরেছিলেন / dev / sda1):

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

৫) ইনডিস্ক ফাইলটিকে একটি ব্যাকআপ হিসাবে নামকরণ করুন, আউটডিস্কের নাম বদলে রাখুন (বা অতিথির এক্সএমএল পরিবর্তন করুন)

6) অতিথিকে পুনরায় বুট করুন এবং মূল ফাইলটি মুছার আগে নতুন ডিস্ক ফাইলটি সাবধানে পরীক্ষা করুন

7) লাভ!


এটি প্রায়শই আমার ক্ষেত্রে কাজ করে। দুঃখের বিষয়, প্রায়। যখন অতিথির (একটি CentOS 7 সার্ভার) পুনরায় বুট করা হয় তখন এটি প্রসারিত ডিস্কটি বুট না করে আবিষ্কার করে।
উরিহসিদুর

1
এটা আমার জন্য দুর্দান্ত কাজ করেছে। বাদ দেওয়া -o preallocation=metadataএকটি বিচ্ছিন্ন ফাইল তৈরি করে। এই বিকল্পের সাথে এটি পুরো আকারটিকে পূর্বনির্ধারিত করে।
ডেনিস উইলিয়ামসন

দুর্দান্ত, এই উত্তরটি আমার জন্য পেরেক দিয়েছিল। অনেক ধন্যবাদ! Libguestfs ( libguestfs.org/virt-resize.1.html ) এর জন্য "অফিসিয়াল" ডকুমেন্টেশন , দুর্ভাগ্যক্রমে ভাল লেখা হয়নি এবং বেশ বিভ্রান্তির অবসান ঘটে।
এম্বেলো

1
আমার জন্য ভাল কাজ করেছেন, মনে রাখবেন যে আপনার আসলে ব্যবহারের দরকার নেই -o preallocation=metadataএবং যদি না করেন তবে আপনার এই truncateপদক্ষেপটিও এড়ানো উচিত নয় । virt-resizeযাইহোক উপযুক্ত হিসাবে ফাইল বৃদ্ধি করা হবে।
amoe

5

আপনি যদি ভিএম এর মধ্যে এলভিএম ব্যবহার করেন তবে এই ওয়াউডটি করার সহজ উপায়টি হ'ল ভিএম-তে একটি নতুন ভার্চুয়াল ডিস্ক যুক্ত করা এবং এতে ভলিউম গ্রুপ এবং লজিক্যাল ভলিউম প্রসারিত করা।

আপনি এলভিএম রান ব্যবহার করছেন কিনা তা যাচাই করতে 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

যদি ভিএম এর ওএস এলভিএম ব্যবহার করে থাকে। উপরের উদাহরণে ভিএম-এর একটি 30 জিবিটি ভিডিস্ক রয়েছে, একটি ভলিউম গ্রুপ যার সাথে দুটি লজিকাল ভলিউম রয়েছে, একটি অদলবদলের জন্য এবং অন্য সব কিছুর জন্য একটি ভলিউম গ্রুপ এলভিএম ব্যবহার করে কনফিগার করা হয়েছে।

যদি ভিভিতে এলভি ব্যবহার হয়:

  1. ভিএম বন্ধ করুন
  2. হোস্টে একটি নতুন ভার্চুয়াল ডিস্ক ফাইল তৈরি করুন এবং এটি ভিএম-এ যুক্ত করুন
  3. ভিএম পুনরায় আরম্ভ করুন এবং লগইন করুন
  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আপনি যদি পুরোপুরি এটি বাড়তে না চান তবে এই উদাহরণটি ভলিউমে 8 গিগাবাইট যোগ করবে)
  7. এর সাথে ফাইল সিস্টেমকে পুনরায় আকার দিন resize2fs /dev/vgWWW/root

দ্রষ্টব্য: উপরেরটি ধরে নেওয়া হয়েছে যে ভিজি / এলভি নামগুলি আমার উদাহরণ হিসাবে একই, যা সম্ভাবনা নেই, যথাযথ পরিবর্তন করুন, এছাড়াও যদি ভিএম এর vdbমধ্যে নতুন একটি নামক ভার্চুয়াল ড্রাইভটি থাকে তবে এটি অন্য কিছু হবে ( vdcএবং আরও কিছু )

দ্রষ্টব্য: resize2fs কেবলমাত্র ext2, ext3 এবং ext4 ফাইল সিস্টেমে কাজ করবে। আপনি যদি অন্য কিছু ব্যবহার করে থাকেন তবে এটি ত্রুটি করবে এবং কিছুই করবে না।

দ্রষ্টব্য: আপনি যখন একটি লাইভ ফাইল সিস্টেমের আকার পরিবর্তন করছেন তখন কোনও resize2fsচালিত ফাইল সিস্টেমের মতো আপনাকে fsckপ্রথমে চালনার অনুরোধ জানাবে না , এটি কেবল এগিয়ে যাবে। আপনি কেবল পঠনযোগ্য ফাইল সিস্টেম চেক চালাতে চাইতে পারেন এগিয়ে যাওয়ার আগে কোনও সমস্যা নেই।


এটাও গুই সঙ্গে কাজ করা যেতে পারে বেশ চমৎকার যে centos.org/docs/5/html/Deployment_Guide-en-US/...
Nux

5

অনলাইন আকার পরিবর্তন করা সম্ভব। libvirtd এটিকে স্থানীয়ভাবে সমর্থন করে:

ব্লক ডিভাইসের নামটি সন্ধান করুন। "ভিডিএ" এর মতো কিছু হওয়া উচিত

$ virsh domblklist <libvirtd_vm_name>

ভার্চুয়াল ডিভাইসটিকে পুনরায় আকার দিন:

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

এখানে একটি উদাহরণ ছিল আমি প্রসারিত হয় vdaথেকে ডিস্ক 50GBথেকে 51GBজন্য undercloudVM- র।

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

এখন .QCO2 চিত্র ফাইলের বিশদটি একবার দেখুন:

[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

এখন ভিডিএ ব্লক ডিভাইসটির আকার পরিবর্তন করুন:

[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: র আকার পরিবর্তন করতে কমান্ডগুলি দেখানোর জন্য ভিএম এর অভ্যন্তরে ব্যবহার করতে পারেন: https://github.com/mircea-vutcovici/scriptts/blob/master/vol_resize.sh


3

আপনি যদি ভিটিও ড্রাইভ এবং এলভিএম ব্যবহার করে থাকেন তবে ভিএম রিবুট না করে আপনার ভিএম এর ডিস্কের আকার বাড়ানোর সম্ভাবনা রয়েছে।

  1. একটি নতুন খালি ডিস্ক সংজ্ঞায়িত করতে পুণ্য-পরিচালক বা বীরশ ব্যবহার করুন
  2. কার্নেলটি একটি নতুন / dev / vdb দেখতে পাবে
  3. (Alচ্ছিক) / dev / vdb1 পেতে fdisk সহ একটি প্রাথমিক পার্টিশন তৈরি করুন, তারপরে পার্টিশন টেবিলটি পুনরায় পড়তে 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 

একটি ডিস্ক পুনর্নির্মাণ করুন এবং আপনি আপনার lvm আকার পরিবর্তন করতে পারেন পরে যান।


1

আপনার ভিএম এ যদি আপনার এলভিএম থাকে তবে এটি পাগল সহজ এবং দ্রুত।

  1. ভিএম (গেস্ট মেশিন) বন্ধ করুন।
  2. আপনার হোস্ট মেশিনে নতুন স্টোরেজ ডিভাইস যুক্ত করুন।
  3. অতিথি চালু করুন।
  4. সিস্টেম খুলুন -> প্রশাসন -> লজিকাল ভলিউম পরিচালনা (বা sudo system-config-lvmটার্মিনাল টাইপ করুন ) *।

আমি জিইউআইকে বেশ স্বজ্ঞাত পেয়েছি, তবে আপনার যদি সমস্যা হয় তবে পরবর্তী পদক্ষেপগুলি অনুসরণ করুন।

  1. "একীকরণবিহীন প্রতিষ্ঠানগুলি" খুলুন এবং আপনার নতুন ড্রাইভটি সন্ধান করুন।
  2. নতুন ড্রাইভ নির্বাচন করার পরে, চিত্রের নীচে আপনার একটি সূচনা বোতামটি পাওয়া উচিত। এটা টিপুন.
  3. এটি আপনাকে বিভাজন সম্পর্কে জিজ্ঞাসা করবে - আপনার এটির দরকার নেই।
  4. হয়ে গেলে আপনার ড্রাইভটি বিদ্যমান ভলিউম গ্রুপে যুক্ত করুন।
  5. শেষ অবধি আপনার লজিকাল ভলিউম (গুলি) বাড়ানো দরকার - এটি আপনার ভলিউমের বৈশিষ্ট্যগুলি সম্পাদনা করে দলের লজিক্যাল ভিউ-তে সম্পন্ন হয়।
  6. সংরক্ষণ করুন এবং আপনার সম্পন্ন। ভিএম পুনরায় চালু করার দরকার নেই।

বিঃদ্রঃ! কমপক্ষে CentOS 6 এ LVM GUI ডিফল্টরূপে ইনস্টল করা হয়নি তবে আপনি এটি দিয়ে ইনস্টল করতে পারেন yum install system-config-lvm


1
  1. ভিএম বন্ধ করুন
  2. চিত্র পুনরায় আকার দিন:

    qemu-img resize vmdisk.img +16G
    

    16 জিবি দ্বারা চিত্রের আকার বৃদ্ধি করে।

  3. যদি আপনার ছবিতে জিপিটি (জিআইডি পার্টিশন টেবিল) থাকে তবে জিপিটিতে ব্যবহৃত ড্রাইভের আকারটি নতুন আকারের থেকে পৃথক হবে, আপনাকে এটিকে এটি ঠিক করতে হবে 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অংশগুলি optionচ্ছিক এবং শুধুমাত্র তখনই প্রয়োজন হয় যদি আপনি /etc/fstabবা অন্য কোথাও পার্টিশন ইউআইডি ব্যবহার করেন ।

  5. পুনরায় বুট করুন অথবা পার্টিশন পুনরায় পাঠ partx -u $MY_DRIVEবা partprobe

  6. পার্টিশন প্রসারিত করুন, উদাহরণস্বরূপ ext2, ext3বা ext4:

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

0

আপনি জিপিআর্টেড মাউন্টযুক্ত সলাস ভিএম ব্যবহার করতে পারেন। একবার জিপিআরটি ব্যবহার করা হলে আপনি সহজেই সিস্টেমটি বুট করতে পারেন এবং স্থানটি সামঞ্জস্য করতে পারেন। আপনার সঠিক বুট অগ্রাধিকার সেট রয়েছে তা নিশ্চিত করুন। একটি রেফারেন্স হিসাবে দয়া করে নীচের url উল্লেখ করুন যা কার্যকর হতে পারে। https://greencloudvps.com/knowledgebase/11/How-to-Extend-the-Hard-drive-on-KVM-after-upgrading-VPS.html

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.