Ravindra BagaleCourses & study guides English

Linux LVM Tutorial: pvcreate, vgcreate, lvcreate, lvextend, Snapshots आणि Resizing सोप्या भाषेत

साधे partitions resize करणं कठीण आणि disks ओलांडू शकत नाहीत. LVM (Logical Volume Manager) disks आणि filesystems मधे लवचिक layer ठेवतो: disks एका volume group मधे pool करता आणि त्यातून कोणत्याही size चे logical volumes कापता, online वाढवता, नंतर नव्या disks जोडता, आणि snapshots घेता. हा chapter pvcreate, vgcreate, lvcreate, lvextend, lvreduce, vgextend, pvmove, snapshots आणि thin pools शिकवतो, प्रत्येकाला Why, What आणि How.

या chapter मध्ये तुम्ही काय शिकाल

  • PV, VG, LV आणि extents समजा
  • PVs, VGs आणि LVs बनवा
  • LV आणि filesystem online वाढवा
  • vgextend आणि pvmove ने disks जोडा आणि data हलवा
  • Snapshots घ्या आणि restore
  • pvs, vgs, lvs वाचा आणि सामान्य errors fix

1. रोजचं उदाहरण: कुटुंबाचा पैशांचा pool

हे का लागतं?

तीन भाऊ आपापली बचत एका joint account मधे टाकतात. त्या account मधून कुटुंब वेगळी पाकिटं ठेवतं: घर, शाळेची fees, प्रवास. Fees ला जास्त लागले तर joint account मधून त्या पाकिटात पैसे हलवतात. चौथा भाऊ आला तर त्याचे पैसे pool मधे जोडले जातात.

हे काय आहे?

प्रत्येक भावाची बचत = physical volume (PV, disk). Joint account = volume group (VG). पाकिटं = logical volumes (LV). पाकिटात पैसे = lvextend. चौथा भाऊ = vgextend.

कसं करायचं (step by step)

LVM step by stepDisks किंवा partitions: /dev/nvme1n1, /dev/nvme2n1pvcreate त्यांना physical volumes mark करतोvgcreate त्यांना volume group (vgdata) मधे poollvcreate pool मधून logical volume (lvapp) कापतोmkfs /dev/vgdata/lvapp वर filesystemMount करा आणि /etc/fstab मधे जोडा
जागा extents मधे मोजतात (default 4 MiB).

2. LVM शब्द: PV, VG, LV, PE

हे का लागतं?

प्रत्येक LVM command आणि error हे चार शब्द वापरतो. एकदा शिका.

हे काय आहे?

PV: LVM साठी तयार disk किंवा partition. VG: एक किंवा जास्त PVs चा pool. LV: VG चा भाग जो partition सारखा वागतो (/dev/VG/LV किंवा /dev/mapper/VG-LV). PE: physical extent, pool चा छोटा block size. Package: lvm2.

शब्दअर्थCommand
PVLVM साठी diskpvcreate, pvs
VGPVs चा poolvgcreate, vgs
LVVG चा भागlvcreate, lvs
PEAllocation unitvgdisplay

कसं करायचं (step by step)

  1. Tools install.
sudo dnf install -y lvm2 && lvm version | head -1

Output:

LVM version: 2.03.23

याचा अर्थ: तयार.

  1. आधीचं LVM.
lsblk

Output:

nvme0n1 disk
├─nvme0n1p2 part
│ ├─rhel-root lvm /
│ └─rhel-swap lvm [SWAP]

याचा अर्थ: अनेक RHEL installs आधीच LVM.

3. pvcreate आणि pvs: disks तयार

हे का लागतं?

LVM disk वापरण्याआधी त्याला label करावं लागतं.

हे काय आहे?

sudo pvcreate DEV [DEV...] LVM label लिहितो. pvs PVs VG, size आणि free सह list. pvdisplay DEV details. pvremove label काढतो (PV VG मधे नसताना). गरज असेल तर आधी wipefs -a ने जुन्या signatures पुसा.

कसं करायचं (step by step)

  1. दोन disks.
sudo pvcreate /dev/nvme1n1 /dev/nvme2n1

Output:

Physical volume "/dev/nvme1n1" successfully created.
Physical volume "/dev/nvme2n1" successfully created.

याचा अर्थ: Label झालं.

  1. List.
sudo pvs

Output:

PV           VG Fmt  Attr PSize   PFree
/dev/nvme1n1    lvm2 ---  100.00g 100.00g
/dev/nvme2n1    lvm2 ---  100.00g 100.00g

याचा अर्थ: अजून VG मधे नाहीत.

  1. जुनी signature.
sudo pvcreate /dev/nvme3n1

Output:

WARNING: xfs signature detected on /dev/nvme3n1. Wipe it? [y/n]

याचा अर्थ: Disk खरंच free आहे ते तपासा.

4. vgcreate आणि vgs: pool बनवा

हे का लागतं?

VG हा pool ज्यातून volumes कापायचे आणि नंतर वाढवायचे.

हे काय आहे?

sudo vgcreate NAME PV... बनवतो. vgs size, free, PV आणि LV count. vgdisplay NAME PE size आणि free PE. vgdata किंवा vg_db सारखी स्पष्ट नावं.

कसं करायचं (step by step)

  1. बनवा.
sudo vgcreate vgdata /dev/nvme1n1 /dev/nvme2n1

Output:

Volume group "vgdata" successfully created

याचा अर्थ: 200G pool.

  1. Check.
sudo vgs

Output:

VG     #PV #LV #SN Attr   VSize   VFree
vgdata   2   0   0 wz--n- 199.99g 199.99g

याचा अर्थ: सगळं free.

  1. Details.
sudo vgdisplay vgdata | grep -E 'PE Size|Free  PE'

Output:

PE Size               4.00 MiB
Free  PE / Size       51198 / 199.99 GiB

याचा अर्थ: Extents count.

5. lvcreate: logical volumes बनवा

हे का लागतं?

Apps ना वेगळे volumes लागतात (database, logs, uploads) म्हणजे एक दुसऱ्याला भरू शकत नाही.

हे काय आहे?

lvcreate -n NAME -L SIZE VG fixed size LV (50G). -l 100%FREE सगळी free जागा; -l 50%VG अर्धा VG. मग mkfs, mount आणि fstab, /dev/VG/LV किंवा /dev/mapper/VG-LV (stable नावं) वापरून.

कसं करायचं (step by step)

  1. Fixed size.
sudo lvcreate -n lvdb -L 80G vgdata

Output:

Logical volume "lvdb" created.

याचा अर्थ: Database साठी 80G.

  1. Percent.
sudo lvcreate -n lvlogs -l 25%FREE vgdata

Output:

Logical volume "lvlogs" created.

याचा अर्थ: उरलेल्याचा चौथा भाग.

  1. Format आणि mount.
sudo mkfs.xfs /dev/vgdata/lvdb && sudo mkdir -p /var/lib/pgsql && sudo mount /dev/vgdata/lvdb /var/lib/pgsql

Output:

meta-data=/dev/vgdata/lvdb ...

याचा अर्थ: तयार.

  1. fstab line.
echo '/dev/mapper/vgdata-lvdb /var/lib/pgsql xfs defaults 0 0' | sudo tee -a /etc/fstab

Output:

/dev/mapper/vgdata-lvdb /var/lib/pgsql xfs defaults 0 0

याचा अर्थ: LV paths stable.

6. lvs, lvdisplay: volumes वाचा

हे का लागतं?

Growth plan करायला तीनही layers वर sizes आणि free जागा पटकन बघायला हवी.

हे काय आहे?

lvs LVs VG, attributes आणि size सह. lvs -a -o +devices प्रत्येक LV कोणते PVs वापरतो. lvdisplay पूर्ण detail. attr column: o = open (mounted), s = snapshot, t = thin pool, V = thin volume.

कसं करायचं (step by step)

  1. तिन्ही.
sudo pvs; sudo vgs; sudo lvs

Output:

... VFree 70.00g
LV     VG     Attr       LSize
lvdb   vgdata -wi-ao---- 80.00g
lvlogs vgdata -wi-ao---- 30.00g

याचा अर्थ: Pool मधे 70G free.

  1. कुठे साठवलं?
sudo lvs -o +devices vgdata

Output:

lvdb vgdata -wi-ao---- 80.00g /dev/nvme1n1(0)

याचा अर्थ: पहिल्या disk वर.

7. lvextend -r: online वाढवा

हे का लागतं?

Midnight ला database volume 90% भरलं. LVM downtime शिवाय seconds मधे जागा जोडू देतो.

हे काय आहे?

sudo lvextend -L +20G -r /dev/VG/LV 20G जोडतो आणि (-r) filesystem पण resize. -L 120G total set. -l +100%FREE सगळी free जागा. -r शिवाय स्वतः xfs_growfs MOUNT किंवा resize2fs DEV.

कसं करायचं (step by step)

  1. 20G ने वाढवा.
sudo lvextend -L +20G -r /dev/vgdata/lvdb

Output:

Size of logical volume vgdata/lvdb changed from 80.00 GiB to 100.00 GiB.
data blocks changed from 20971520 to 26214400

याचा अर्थ: Filesystem पण वाढला.

  1. Check.
df -h /var/lib/pgsql

Output:

/dev/mapper/vgdata-lvdb 100G 72G 28G 73% /var/lib/pgsql

याचा अर्थ: Live जागा.

  1. पुरेशी जागा नाही.
sudo lvextend -L +500G /dev/vgdata/lvdb

Output:

Insufficient free space: 128000 extents needed, but only 12799 available

याचा अर्थ: आधी disk जोडा.

8. vgextend: pool मधे नवी disk

हे का लागतं?

Pool रिकामा झाला की दुसरी disk जोडता, आणि VG मधला प्रत्येक LV ती वापरू शकतो.

हे काय आहे?

pvcreate NEWDEV, मग vgextend VG NEWDEV. vgs जास्तीची free जागा. आता lvextend चालतो. Cloud मधे आधीचा PV वाढवणं पण शक्य: volume resize, मग pvresize DEV.

कसं करायचं (step by step)

  1. Disk जोडा.
sudo pvcreate /dev/nvme3n1 && sudo vgextend vgdata /dev/nvme3n1

Output:

Volume group "vgdata" successfully extended

याचा अर्थ: Pool मोठा.

  1. आधीचा PV वाढवा.
sudo pvresize /dev/nvme1n1 && sudo vgs vgdata

Output:

Physical volume "/dev/nvme1n1" changed
vgdata 3 2 0 wz--n- 349.99g 150.00g

याचा अर्थ: EBS resize नंतर.

9. pvmove आणि vgreduce: live disk बदला

हे का लागतं?

Disk slow किंवा जुनी. App न थांबवता data नव्या disk वर हवा.

हे काय आहे?

नवा PV VG मधे जोडा, मग sudo pvmove OLDPV [NEWPV] सगळे extents live हलवतो. झाल्यावर vgreduce VG OLDPV pool मधून काढतो आणि pvremove OLDPV label साफ. मग disk detach.

कसं करायचं (step by step)

  1. हलवा.
sudo pvmove /dev/nvme1n1 /dev/nvme3n1

Output:

/dev/nvme1n1: Moved: 25.00%
/dev/nvme1n1: Moved: 100.00%

याचा अर्थ: Data online हलला.

  1. जुनी disk काढा.
sudo vgreduce vgdata /dev/nvme1n1 && sudo pvremove /dev/nvme1n1

Output:

Removed "/dev/nvme1n1" from volume group "vgdata"
Labels on physical volume "/dev/nvme1n1" successfully wiped.

याचा अर्थ: Detach safe.

10. lvreduce: कमी करा (सावधपणे)

हे का लागतं?

कधी कधी एका LV ला जास्त जागा मिळाली. ext4 कमी करता येतो (offline) पण xfs कधी नाही.

हे काय आहे?

ext4 साठी: backup, umount, मग sudo lvreduce -L 20G -r /dev/VG/LV (-r आधी fsck आणि resize2fs). -r शिवाय filesystem size पेक्षा कमी lvreduce कधी नाही: data नष्ट. xfs साठी: नवा छोटा LV, copy, switch.

कसं करायचं (step by step)

  1. ext4 कमी.
sudo umount /srv/logs && sudo lvreduce -L 20G -r /dev/vgdata/lvlogs

Output:

fsck from util-linux
Resizing the filesystem on /dev/mapper/vgdata-lvlogs to 5242880 (4k) blocks.
Size of logical volume vgdata/lvlogs changed from 30.00 GiB to 20.00 GiB.

याचा अर्थ: Safe क्रम.

  1. xfs नकार.
sudo lvreduce -L 50G -r /dev/vgdata/lvdb

Output:

fsadm: Xfs filesystem shrinking is unsupported.

याचा अर्थ: Copy-and-switch.

11. Snapshots: lvcreate -s

हे का लागतं?

Risky upgrade आधी snapshot मुळे minutes मधे rollback किंवा consistent backup.

हे काय आहे?

sudo lvcreate -s -n SNAP -L 5G /dev/VG/LV copy-on-write snapshot; 5G बदलांसाठी जागा. 100% भरला तर invalid. Backup साठी read-only mount. Rollback: lvconvert --merge /dev/VG/SNAP (पुढच्या activation ला लागू). lvremove ने काढा.

कसं करायचं (step by step)

  1. Snapshot घ्या.
sudo lvcreate -s -n lvdb_pre -L 10G /dev/vgdata/lvdb

Output:

Logical volume "lvdb_pre" created.

याचा अर्थ: Upgrade आधी.

  1. Usage बघा.
sudo lvs vgdata

Output:

lvdb_pre vgdata swi-a-s--- 10.00g lvdb 3.12

याचा अर्थ: बदल जागेचा 3% वापरला.

  1. त्यातून backup (xfs ला nouuid).
sudo mount -o ro,nouuid /dev/vgdata/lvdb_pre /mnt/snap && sudo tar -czf /backup/db.tgz -C /mnt/snap .

Output:

(no output)

याचा अर्थ: Consistent copy.

  1. Rollback.
sudo umount /var/lib/pgsql && sudo lvconvert --merge /dev/vgdata/lvdb_pre

Output:

Merging of volume vgdata/lvdb_pre started.

याचा अर्थ: Upgrade आधीच्या स्थितीत.

12. Thin pools: overcommit जागा

हे का लागतं?

अनेक test environments प्रत्येकी 100G मागतात पण 10G वापरतात. Thin volumes मोठे virtual sizes देतात आणि लिहिल्यावरच खरी जागा वापरतात.

हे काय आहे?

lvcreate --type thin-pool -L 100G -n tpool VG pool. lvcreate -V 50G --thin -n tv1 VG/tpool thin LV. lvs मधे Data% बघा: भरलेला pool सगळे thin volumes freeze करू शकतो. Thin snapshots जलद आणि size लागत नाही.

कसं करायचं (step by step)

  1. Pool आणि volume.
sudo lvcreate --type thin-pool -L 50G -n tpool vgdata && sudo lvcreate -V 100G --thin -n tvtest vgdata/tpool

Output:

Logical volume "tpool" created.
WARNING: Sum of all thin volume sizes (100.00 GiB) exceeds the size of thin pool

याचा अर्थ: मुद्दाम overcommit.

  1. बघा.
sudo lvs -o lv_name,lv_size,data_percent vgdata

Output:

tpool  50.00g 12.40
tvtest 100.00g 6.20

याचा अर्थ: खरा वापर 12%.

13. अनेक industries मधली खरी उदाहरणं

हे का लागतं?

तेच Linux skill प्रत्येक प्रकारच्या company मध्ये लागतं. वेगवेगळ्या ठिकाणी पाहिलं की लक्षात राहतं.

हे काय आहे?

प्रत्येक row म्हणजे एक काल्पनिक team. कोण हे वापरतं आणि कसं ते दाखवते.

कसं करायचं (step by step)

Team आणि शहरते कसं वापरतातCommand
Nikhil, banking, Pune-r ने DB volumes online वाढवतोlvextend -L +20G -r /dev/vgdata/lvdb
Chloe, SaaS, ParisUpgrades आधी snapshotslvcreate -s -n pre -L 10G /dev/vg/lv
Ravi K., telecom, Chennaipvmove ने disks बदलतोpvmove /dev/sdb /dev/sdd
Ingrid, research, StockholmLab VMs साठी thin poolslvcreate --type thin-pool
Musa, retail, LagosPeak season मधे VG ला disksvgextend vgdata /dev/nvme3n1
Snehal, hospital, Nagpurapp, logs, uploads साठी वेगळे LVslvcreate -n lvuploads -L 40G vgdata

14. नेहमीच्या errors आणि त्यांचे fixes

हे का लागतं?

हे errors सगळ्यांना येतात. कारण माहीत असलं की तास वाचतात.

हे काय आहे?

आधी नेमका message वाचा. मग खालच्या row शी जुळवा.

कसं करायचं (step by step)

दिसणारा errorका होतंFix कसा करायचा
Insufficient free space: N extents neededVG मधे जागा नाहीआधी vgextend किंवा pvresize.
sudo vgs
Device /dev/sdb excluded by a filterजुनी signature किंवा lvm.conf filterFree disk wipefs किंवा filter fix.
sudo wipefs -n /dev/sdb
Can't open /dev/sdb exclusively. Mounted filesystem?Disk वापरातFree disk वापरा.
lsblk -f
df shows old size after lvextend-r विसरलात / fs resize नाहीFilesystem वाढवा.
sudo xfs_growfs /var/lib/pgsql
fsadm: Xfs filesystem shrinking is unsupportedxfs कमी होत नाहीछोट्या LV ला copy.
sudo lvcreate -n lvnew -L 50G vgdata
Snapshot is invalid / 100% fullबदल जागा संपलीकाढा; पुढच्या वेळी मोठा.
sudo lvremove vgdata/lvdb_pre
Physical volume still in useVG मधे असताना pvremoveआधी vgreduce (pvmove नंतर).
sudo vgreduce vgdata /dev/nvme1n1
Logical volume contains a filesystem in useMounted LV वर lvremoveआधी unmount.
sudo umount /srv/logs
mount: wrong fs type ... duplicate UUID (xfs snapshot)xfs snapshot चा तोच UUIDnouuid ने mount.
sudo mount -o ro,nouuid /dev/vg/snap /mnt/snap
Thin pool Data% 100, I/O errorsThin pool भरलाPool लगेच वाढवा.
sudo lvextend -L +20G vgdata/tpool

15. Troubleshooting step by step

हे का लागतं?

तीनही layers, मग filesystem.

हे काय आहे?

वरून खाली जा. ज्या step ला problem दिसतो तिथे थांबा.

कसं करायचं (step by step)

  1. PVs.
sudo pvs
  1. VG free.
sudo vgs
  1. LVs आणि attrs.
sudo lvs -a -o +devices
  1. Filesystem size.
df -h
  1. Disk tree.
lsblk
  1. LVM messages.
journalctl -b | grep -i lvm | tail

16. Lab 1: Loop devices वर LVM

हे का लागतं?

दोन fake disks, VG आणि LV बनवून वाढवा.

हे काय आहे?

पूर्ण hands-on lab. प्रत्येक step test Linux machine वर करा (EC2 instance, VM किंवा WSL).

कसं करायचं (step by step)

  1. Fake disks.
for i in 1 2; do truncate -s 1G /tmp/pv$i.img; sudo losetup -f --show /tmp/pv$i.img; done

Output:

/dev/loop1
/dev/loop2
  1. PV आणि VG.
sudo pvcreate /dev/loop1 /dev/loop2 && sudo vgcreate vglab /dev/loop1 /dev/loop2

Output:

Volume group "vglab" successfully created
  1. LV आणि fs.
sudo lvcreate -n lv1 -L 500M vglab && sudo mkfs.ext4 -q /dev/vglab/lv1 && sudo mkdir -p /mnt/lv1 && sudo mount /dev/vglab/lv1 /mnt/lv1

Output:

(no output)
  1. वाढवा.
sudo lvextend -L +700M -r /dev/vglab/lv1 && df -h /mnt/lv1

Output:

/dev/mapper/vglab-lv1 1.2G ...
  1. Layers.
sudo pvs; sudo vgs; sudo lvs

Output:

vglab ... lv1 1.17g

17. Lab 2: Snapshot आणि rollback

हे का लागतं?

Snapshot घ्या, file बिघडवा, आणि merge back.

हे काय आहे?

पूर्ण hands-on lab. प्रत्येक step test Linux machine वर करा (EC2 instance, VM किंवा WSL).

कसं करायचं (step by step)

  1. File लिहा.
echo good | sudo tee /mnt/lv1/app.conf

Output:

good
  1. Snapshot.
sudo lvcreate -s -n lv1snap -L 200M /dev/vglab/lv1

Output:

Logical volume "lv1snap" created.
  1. बिघडवा.
echo broken | sudo tee /mnt/lv1/app.conf

Output:

broken
  1. Merge back.
sudo umount /mnt/lv1 && sudo lvconvert --merge /dev/vglab/lv1snap && sudo mount /dev/vglab/lv1 /mnt/lv1

Output:

Merging of volume vglab/lv1snap started.
  1. Check.
cat /mnt/lv1/app.conf

Output:

good

Ravindra Bagale's Tip

Always use lvextend with -r. It grows the logical volume and the filesystem in one step, so you never end up with a bigger volume but the same df size. For shrinking, -r also protects you by resizing the filesystem first.

18. नेहमी विचारले जाणारे प्रश्न

प्र. LVM slow?

Overhead खूप कमी; flexibility फायद्याची.

प्र. LV path कोणता?

दोन्ही एकच device; fstab मधे कोणताही.

प्र. LV दोन disks वर?

हो, मुख्य feature (default linear).

प्र. Snapshot म्हणजे backup?

नाही, त्याच disks वर; दुसरीकडे copy करा.

प्र. LVM redundancy देतो?

Default ला नाही; RAID (chapter 32) किंवा lvcreate --type raid1.

प्र. xfs कमी?

नाही.

प्र. pvcreate आधी partition?

Optional; cloud मधे पूर्ण disks सामान्य.

प्र. 100%FREE म्हणजे?

VG मधले सगळे free extents.

19. मुलाखत प्रश्न आणि उत्तरं

Beginner level

प्र. VG म्हणजे?

PVs चा pool.

प्र. LVs list?

lvs.

प्र. PV बनवा?

pvcreate DEV.

प्र. 10G LV?

lvcreate -n NAME -L 10G VG.

Mid level level

प्र. LV आणि fs एकत्र?

lvextend -L +N -r.

प्र. VG ला disk?

pvcreate मग vgextend.

प्र. Live disk काढा?

pvmove, vgreduce, pvremove.

प्र. Snapshot invalid का?

बदल जागा भरली.

Senior level

प्र. DB server साठी LVM plan?

data, WAL आणि logs साठी वेगळे LVs, snapshots आणि growth साठी VG free जागा, monitor.

प्र. Thin provisioning risk?

Pool भरतो आणि सगळे thin LVs थांबतात; Data% monitor आणि autoextend.

प्र. Downtime शिवाय नव्या SAN ला data?

नवे PVs, pvmove, जुने vgreduce.

प्र. LVM snapshot vs EBS snapshot?

LVM snapshot local आणि short-lived; EBS snapshot S3 मधे durable.

घरी करून बघा

  1. Lab 1 करा, मग vgextend ने तिसरी loop disk जोडा आणि LV सगळी free जागा वापरेल इतका वाढवा.
  2. LVM commands वापरून एक page runbook लिहा: 'रात्री 2 ला DB volume full'.

सराव Tasks

या scenario बद्दल

Ahmednagar Sugar Co-op हा अहिल्यानगर मधला साखर सहकारी व्यवसाय आहे. Balasaheb Pawar त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.

0 / 17

सोपं PV बनवा

का: Flexible volumes downtime टाळतात.

काय करायचं: /dev/xvdj LVM साठी तयार.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

सोपं PVs list

का: Flexible volumes downtime टाळतात.

काय करायचं: फक्त /dev/xvdj चा PV report.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

सोपं VG बनवा

का: Flexible volumes downtime टाळतात.

काय करायचं: /dev/xvdj आणि /dev/xvdk पासून vgweb volume group.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

सोपं VGs list

का: Flexible volumes downtime टाळतात.

काय करायचं: फक्त vgweb चा VG report.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

सोपं LVs list

का: Flexible volumes downtime टाळतात.

काय करायचं: vgweb मधले सगळे LVs, hidden सह.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

मध्यम 30G LV

का: Flexible volumes downtime टाळतात.

काय करायचं: vgweb मधे 30G चा lvcache LV.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

मध्यम सगळी free जागा

का: Flexible volumes downtime टाळतात.

काय करायचं: vgweb मधे सगळी free जागा वापरून lvrest LV.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

मध्यम Devices सह LVs

का: Flexible volumes downtime टाळतात.

काय करायचं: vgweb चे LVs ते वापरत असलेल्या devices सह.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

मध्यम VG ला disk

का: Flexible volumes downtime टाळतात.

काय करायचं: vgweb ला PV /dev/xvdl जोडा.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

मध्यम PV वाढवा

का: Flexible volumes downtime टाळतात.

काय करायचं: Cloud volume resize नंतर PV /dev/xvdj वाढवा.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

मध्यम Snapshot

का: Flexible volumes downtime टाळतात.

काय करायचं: /dev/vgweb/lvcache चा cache_snap नावाचा 4G snapshot.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

मध्यम LV काढा

का: Flexible volumes downtime टाळतात.

काय करायचं: LV vgweb/cache_snap delete.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

अवघड fs सह वाढवा

का: Flexible volumes downtime टाळतात.

काय करायचं: /dev/vgweb/lvcache 15G ने आणि filesystem एकाच step मधे.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

अवघड सगळ्या free पर्यंत

का: Flexible volumes downtime टाळतात.

काय करायचं: उरलेल्या सगळ्या free जागेने /dev/vgweb/lvrest वाढवा आणि filesystem resize.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

अवघड Data हलवा

का: Flexible volumes downtime टाळतात.

काय करायचं: /dev/xvdj वरचा सगळा data /dev/xvdl ला.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

अवघड VG मधून PV

का: Flexible volumes downtime टाळतात.

काय करायचं: vgweb मधून /dev/xvdj काढा.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

अवघड Rollback

का: Flexible volumes downtime टाळतात.

काय करायचं: vgweb/cache_snap snapshot origin मधे परत merge.

कसं करायचं:
  1. हे काम करणारा Linux command शोधा.
  2. Task ला लागणारे options (उदा. -r, -h) जोडा.
  3. File नावं, folders किंवा users योग्य क्रमाने लिहा.
  4. System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.

थोडक्यात सांगायचं तर

  1. PV, VG, LV, PE.
  2. pvcreate, vgcreate, lvcreate.
  3. pvs, vgs, lvs layers वाचतात.
  4. lvextend -r online वाढवतो; vgextend disks.
  5. pvmove live disks बदलतो; lvreduce फक्त ext4.
  6. Snapshots आणि thin pools ना monitoring.

उजळणी, तुलना आणि मुलाखत cards

हा lesson काही मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR हा lesson उघडतो.

4 steps मधे LVM. Flexible disks. Disk pvcreate. vgcreate group, lvcreate volume. Volume बनवा.
उजळणी card: 4 steps मधे LVM · PNG download करा · Card page उघडा
LV वाढवा. Disk जवळजवळ full. vgs ने VFree. -r filesystem पण वाढवतो. 10G ने वाढवा.
उजळणी card: LV वाढवा · PNG download करा · Card page उघडा
-L vs -l. 10G सारखी size. / Extents किंवा percent.
तुलना: -L vs -l · PNG download करा · Card page उघडा
thick LV vs thin LV. आत्ता reserve. / लिहिलं तशी वापर.
तुलना: thick LV vs thin LV · PNG download करा · Card page उघडा
LVM का?. Downtime शिवाय वाढवा. अनेक disks, snapshots. Overview.
मुलाखत card: LVM का? · PNG download करा · Card page उघडा
XFS LV छोटा?. XFS shrink होत नाही. Backup, recreate, restore. ext4 करू शकतो.
मुलाखत card: XFS LV छोटा? · PNG download करा · Card page उघडा
LVM snapshot वापर?. Upgrade आधी safe point. Rollback साठी merge. बनवा.
मुलाखत card: LVM snapshot वापर? · PNG download करा · Card page उघडा
LVM मधे live disk बदल?. नवी disk vgextend. जुन्यावरून pvmove. मग काढा.
मुलाखत card: LVM मधे live disk बदल? · PNG download करा · Card page उघडा

अजून cards: Ravi Sir's Cards.