উত্তর:
একটি ভলিউম গ্রুপ পুরো শারীরিক ভলিউম নিয়ে গঠিত। একটি দৈহিক ভলিউম অনেকগুলি এক্সটেন্টগুলি নিয়ে গঠিত (একটি পরিমাণ সাধারণত 4MB); প্রতিটি ব্যাপ্তি একটি ভিন্ন যৌক্তিক ভলিউমের সাথে সম্পর্কিত হতে পারে। একটি লজিকাল ভলিউমকে একটি ভিন্ন গোষ্ঠীতে স্থানান্তর করতে, আপনি কেবল এক্সটেন্টগুলি স্থানান্তর করতে পারবেন না কারণ এটি উত্স ভিজি এবং লক্ষ্য ভিজির মধ্যে শারীরিক ভলিউমকে বিভক্ত করতে পারে।
আপনি যা করতে পারেন তা হ'ল vgsplit
কমান্ডের সাহায্যে উত্স ভিজি থেকে এক বা একাধিক পিভি লক্ষ্যবস্তু ভিজিতে স্থানান্তর করা । আপনি কোন PV গুলি স্থানান্তর করতে চান তা নির্দিষ্ট করতে পারেন বা কোন LV (তবে একসাথে কেবলমাত্র একটি)। আপনি যদি একটি এলভি নির্দিষ্ট করে থাকেন তবে এটি এবং উত্স ভিজির অন্যান্য এলভিগুলি পৃথক পিভিতে থাকতে হবে। নির্দিষ্ট নামের সাথে কোনও ভিজি উপস্থিত না থাকলে গন্তব্য ভিজি তৈরি করা হবে।
vgsplit -n source_group/volume_to_copy source_group target_group
vgsplit source_group target_group /dev/sdy99 /dev/sdz99
pvmove
লজিক্যাল ভলিউমগুলি পৃথক পিভিতে যেতে আপনি চান সেগুলি সাজানোর জন্য আপনাকে প্রথমে ব্যবহারের প্রয়োজন হতে পারে।
আপনি যদি ভিজির শারীরিক সীমানা ধরে রাখতে এবং ডেটা স্থানান্তর করতে চান তবে কোনও অন্তর্নির্মিত সরঞ্জাম নেই, তবে আপনি একটি আয়না তৈরি করতে পারেন তবে আসলটি সরিয়ে ফেলতে পারেন ।
দেবিয়ান প্রসারিত (9.0) এর এলভিএম হিসাবে, 2.02.168-2 , এবং vgmerge
, এর সংমিশ্রণটি ব্যবহার করে ভলিউম গ্রুপগুলিতে লজিক্যাল ভলিউমের একটি অনুলিপি করা সম্ভব । যেহেতু সরানো হ'ল একটি অনুলিপি এবং মুছার সংমিশ্রণ, এটি সরানোও কাজ করবে।lvconvert
vgsplit
বিকল্পভাবে, আপনি pvmove
কেবল ভলিউম স্থানান্তর করতে ব্যবহার করতে পারেন ।
লুপ ডিভাইস এবং lvconvert
অনুসরণ ব্যবহার করে একটি সম্পূর্ণ স্ব-অন্তর্ভুক্ত উদাহরণ সেশন
।
সারাংশ: আমরা ভলিউম গ্রুপ তৈরি করুন vg1
লজিক্যাল ভলিউমের সাথে lv1
, এবং vg2
সঙ্গে lv2
, এবং একটি অনুলিপি তৈরি lv1
মধ্যে vg2
।
ফাইল তৈরি করুন।
truncate pv1 --size 100MB
truncate pv2 --size 100MB
ফাইলগুলিতে লুপ ডিভাইস সেট আপ করুন।
losetup /dev/loop1 pv1
losetup /dev/loop2 pv2
লুপ ডিভাইসে শারীরিক ভলিউম তৈরি করুন (এলভিএম ব্যবহারের জন্য লুপ ডিভাইসগুলি সূচনা করুন)।
pvcreate /dev/loop1 /dev/loop2
যথাক্রমে / dev / loop1 এবং / dev / loop2 এ ভলিউম গ্রুপ vg1 এবং vg2 তৈরি করুন।
vgcreate vg1 /dev/loop1
vgcreate vg2 /dev/loop2
যথাক্রমে vg1 এবং vg2 এ লজিক্যাল ভলিউম lv1 এবং lv2 তৈরি করুন।
lvcreate -L 10M -n lv1 vg1
lvcreate -L 10M -n lv2 vg2
Lv1 এবং lv2 এ ext4 ফাইল সিস্টেম তৈরি করুন।
mkfs.ext4 -j /dev/vg1/lv1
mkfs.ext4 -j /dev/vg2/lv2
Allyচ্ছিকভাবে, lv1 তে কিছু লিখুন যাতে আপনি পরে অনুলিপিটি সঠিকভাবে তৈরি করাতে পারেন। ভিজি 1 নিষ্ক্রিয় করুন।
vgchange -a n vg1
পরীক্ষা মোডে মার্জ কমান্ড চালান। এটি ভিজি 1 কে ভিজি 2 তে মিশে যায়।
vgmerge -A y -l -t -v <<destination-vg>> <<source-vg>>
vgmerge -A y -l -t -v vg2 vg1
এবং তারপর বাস্তব জন্য।
vgmerge -A y -l -v vg2 vg1
তারপরে lv1
ব্যবহার করা থেকে একটি RAID 1 মিরর জোড়া তৈরি করুন lvconvert
।
dest-pv
যুক্তি বলে lvconvert
উপর মিরর প্রতিলিপি করে /dev/loop2
।
lvconvert --type raid1 --mirrors 1 <<source-lv>> <<dest-pv>>
lvconvert --type raid1 --mirrors 1 /dev/vg2/lv1 /dev/loop2
তারপরে আয়না ভাগ করুন। নতুন এলভি এখন lv1_copy
।
lvconvert --splitmirrors 1 --name <<source-lv-copy>> <<source-lv>>
lvconvert --splitmirrors 1 --name lv1_copy /dev/vg2/lv1
vg2/lv1
নিষ্ক্রিয় করুন ।
lvchange -a n /dev/vg2/lv1
তারপরে (পরীক্ষার মোড)
vgsplit -t -v <<source-vg>> <<destination-vg>> <<moved-to-pv>>
vgsplit -t -v /dev/vg2 /dev/vg1 /dev/loop1
সত্যি
vgsplit -v /dev/vg2 /dev/vg1 /dev/loop1
ফলাফল আউটপুট:
lvs
[...]
lv1 vg1 -wi-a----- 12.00m
lv1_copy vg2 -wi-a----- 12.00m
lv2 vg2 -wi-a----- 12.00m
মন্তব্য:
1) এই কমান্ডগুলির বেশিরভাগটি রুট হিসাবে চালানো দরকার।
2) দুটি ভলিউম গ্রুপে লজিক্যাল ভলিউমের নামের কোনও নকল থাকলে, vgmerge
অগ্রসর হতে অস্বীকার করবে।
3) মার্জ করার সময় লজিকাল ভলিউমগুলি vg1
নিষ্ক্রিয় থাকতে হবে। এবং বিভক্ত উপর, মধ্যে লজিক্যাল ভলিউম vg2
একাত্মতার vg1
নিষ্ক্রিয় হতে হবে। আমাদের ক্ষেত্রে, এটি হয় lv1
।
আমি আমার নিজস্ব প্রস্তাব করব:
umount /somedir/
lvdisplay /dev/vgsource/lv0 --units b
lvcreate -L 12345b -n lv0 vgtarget
dd if=/dev/vgsource/lv0 of=/dev/vgtarget/lv0 bs=1024K conv=noerror,sync status=progress
mount /dev/vgtarget/lv0 /somedir/
যদি সবকিছু ভাল হয় তবে উত্সটি সরান
lvremove vgsource/lv0