Extindere Disk: Difference between revisions
(→Nota) |
|||
| (19 intermediate revisions by the same user not shown) | |||
| Line 13: | Line 13: | ||
  ...... |   ...... | ||
</code> | </code> | ||
De asemenea facem o verificare a mount-urilor pentru disk-ul in scop: | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
-->  # df -h | |||
  Filesystem Size Used Avail Use% Mounted on | |||
  ...... | |||
  /dev/mapper/vg_wiki-lv_wiki_1 5.9G 24K 5.6G 1% /wiki/lv1 | |||
  /dev/mapper/vg_wiki-lv_wiki_2 3.9G 24K 3.7G 1% /wiki/lv2 | |||
</code> | |||
=== Extindere HDD === | === Extindere HDD === | ||
| Line 35: | Line 46: | ||
  NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS |   NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS | ||
  ...... |   ...... | ||
  sdb 8:16 0 <span style="color:#f00"> |   sdb 8:16 0 <span style="color:#f00">20G</span> 0 disk | ||
  └─sdb1 8:17 0 10G 0 part |   └─sdb1 8:17 0 10G 0 part | ||
    ├─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1 |     ├─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1 | ||
| Line 48: | Line 59: | ||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | <code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | ||
-->  # growpart /dev/sdb 1 | -->  # growpart /dev/sdb 1 | ||
  CHANGED: partition=1 start=2048 old: size= |   CHANGED: partition=1 start=2048 old: size=31455199 end=31457246 new: size=41940959 end=41943006 | ||
  # pvresize /dev/sdb1 |   # pvresize /dev/sdb1 | ||
    Physical volume "/dev/sdb1" changed |     Physical volume "/dev/sdb1" changed | ||
| Line 54: | Line 65: | ||
</code> | </code> | ||
Apoi ne asiguram ca extinderea se reflecta in OS: | Apoi ne asiguram ca extinderea se reflecta pe partitie in OS: | ||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | <code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | ||
| Line 60: | Line 71: | ||
  NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS |   NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS | ||
  ...... |   ...... | ||
  sdb 8:16 0 <span style="color:#f00"> |   sdb 8:16 0 <span style="color:#f00">20G</span> 0 disk | ||
  └─sdb1 8:17 0 <span style="color:#f00"> |   └─sdb1 8:17 0 <span style="color:#f00">20G</span> 0 part | ||
    ├─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1 |     ├─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1 | ||
    └─vg_wiki-lv_wiki_2 252:2 0 4G 0 lvm /wiki/lv2 |     └─vg_wiki-lv_wiki_2 252:2 0 4G 0 lvm /wiki/lv2 | ||
| Line 67: | Line 78: | ||
</code> | </code> | ||
=== Query Logical Volume si Volume Group=== | === Extindere Logical Volume === | ||
In continuare dorim sa marim lv_wiki_1 cu 7GB iar restul spatiului disponibil il vom aloca catre lv_wiki_2 | |||
==== Query Logical Volume si Volume Group ==== | |||
Volume group-ul (VG) vg_wiki a fost creeat peste intreaga partitie /dev/sdb1 iar odata cu extinderea partitiei s-a exting si VG-ul | Volume group-ul (VG) vg_wiki a fost creeat peste intreaga partitie /dev/sdb1 iar odata cu extinderea partitiei s-a exting si VG-ul | ||
| Line 78: | Line 93: | ||
    Format lvm2 |     Format lvm2 | ||
    Metadata Areas 1 |     Metadata Areas 1 | ||
    Metadata Sequence No |     Metadata Sequence No 8 | ||
    VG Access read/write |     VG Access read/write | ||
    VG Status resizable |     VG Status resizable | ||
| Line 87: | Line 102: | ||
    Cur PV 1 |     Cur PV 1 | ||
    Act PV 1 |     Act PV 1 | ||
    <span style="color:#f00">VG Size < |     <span style="color:#f00">VG Size <20.00 GiB</span> | ||
    PE Size 4.00 MiB |     PE Size 4.00 MiB | ||
    Total PE 3839 |     Total PE 3839 | ||
    <span style="color:#f00">Alloc PE / Size 2559 / <10.00 GiB</span> |     <span style="color:#f00">Alloc PE / Size 2559 / <10.00 GiB</span> | ||
    <span style="color:#f00">Free PE / Size 1280 / |     <span style="color:#f00">Free PE / Size 1280 / 10.00 GiB</span> | ||
    VG UUID LvZwAo-9K3I-Qdvw-x39q-kbGT-9IAn-s7e2Nb |     VG UUID LvZwAo-9K3I-Qdvw-x39q-kbGT-9IAn-s7e2Nb | ||
</code> | </code> | ||
| Line 141: | Line 156: | ||
    VG #PV #LV #SN Attr VSize VFree |     VG #PV #LV #SN Attr VSize VFree | ||
    ...... |     ...... | ||
    vg_wiki 1 2 0 wz--n- < |     vg_wiki 1 2 0 wz--n- <20.00g <span style="color:#f00">10.00g</span> | ||
  # lvs |   # lvs | ||
    LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert |     LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert | ||
| Line 149: | Line 164: | ||
</code> | </code> | ||
=== Extindere Logical | ==== Extindere lv_wiki_1 cu 7GB ==== | ||
Extindem mai intai volumul logic: | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
-->  # lvextend -r -L+7G /dev/mapper/vg_wiki-lv_wiki_1 | |||
    Size of logical volume vg_wiki/lv_wiki_1 changed from 6.00 GiB (1792 extents) to 13.00 GiB (3328 extents). | |||
    Logical volume vg_wiki/lv_wiki_1 successfully resized. | |||
  resize2fs 1.47.0 (5-Feb-2023) | |||
  Filesystem at /dev/mapper/vg_wiki-lv_wiki_1 is mounted on /wiki/lv1; on-line resizing required | |||
  old_desc_blocks = 1, new_desc_blocks = 2 | |||
  The filesystem on /dev/mapper/vg_wiki-lv_wiki_1 is now 3407872 (4k) blocks long. | |||
</code> | |||
Din verbose-itatea de mai sus observam ca a fost rulat automat si redimensionarea file system-ului, astfel ca putem vedea instant marirea la nivel de mount: | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
-->  # df -h /wiki/lv1/ | |||
  Filesystem Size Used Avail Use% Mounted on | |||
  /dev/mapper/vg_wiki-lv_wiki_1 <span style="color:#f00">13G</span> 24K 13G 1% /wiki/lv1 | |||
</code> | |||
==== Extindere lv_wiki_2 cu aprox 3GB ==== | |||
In VG vg_wiki au mai ramas nealocati aproximativ 3GB: | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
--># vgs | |||
    VG #PV #LV #SN Attr VSize VFree | |||
    ...... | |||
    vg_wiki 1 2 0 wz--n- <20.00g <span style="color:#f00">3.00g</span> | |||
</code> | |||
Acesti 3GB ii vom aloca catre lv_wiki_2 in totalitate: | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
-->  # lvextend -l +100%FREE /dev/mapper/vg_wiki-lv_wiki_2 | |||
    Size of logical volume vg_wiki/lv_wiki_2 changed from <4.00 GiB (1023 extents) to <7.00 GiB (1791 extents). | |||
    Logical volume vg_wiki/lv_wiki_2 successfully resized. | |||
</code> | |||
De aceasta data redimenionarea filesystem-ului nu a mai fost facuta in mod automat motiv pentru care acest lucru trebuie sa il facem manual: | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
-->  # resize2fs /dev/mapper/vg_wiki-lv_wiki_2 | |||
  resize2fs 1.47.0 (5-Feb-2023) | |||
  Filesystem at /dev/mapper/vg_wiki-lv_wiki_2 is mounted on /wiki/lv2; on-line resizing required | |||
  old_desc_blocks = 1, new_desc_blocks = 1 | |||
  The filesystem on /dev/mapper/vg_wiki-lv_wiki_2 is now 1833984 (4k) blocks long. | |||
</code> | |||
Dupa redimenionarea filesystem-ului putem vedea extinderea si la nivel de mount: | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
-->  # df -h /wiki/lv2/ | |||
  Filesystem Size Used Avail Use% Mounted on | |||
  /dev/mapper/vg_wiki-lv_wiki_2 <span style="color:#f00">6.9G</span> 24K 6.5G 1% /wiki/lv2 | |||
</code> | |||
=== Nota === | |||
Situatia extinerii de disk-uri dintr-un VM este diferita si cu un risc mai mare de pierdere a datelor in situatia in care fiecare lv are propia lui partitie: | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
-->  # lsblk | |||
  sdb 8:16 0 10G 0 disk | |||
  └─sdb1 8:17 0 6G 0 part | |||
    └─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1 | |||
  └─sdb2 8:17 0 4G 0 part | |||
    └─vg_wiki-lv_wiki_2 252:2 0 4G 0 lvm /wiki/lv2 | |||
</code> | |||
... sau atunci cand disk-urile sunt tratate ca raw-disk | |||
<code class="mw-code mw-highlight plainlinks" style="display:block"><!-- | |||
-->  # lsblk | |||
  sdb 8:16 0 10G 0 disk | |||
  ├─sdb1 8:17 0 6G 0 part /wiki/lv1 | |||
  └─sdb2 8:17 0 4G 0 part /wiki/lv2 | |||
</code> | |||
Latest revision as of 22:02, 27 June 2025
Extindere disk live in Ubuntu 2X.04 LTS[edit | edit source]
Cu VM pornit verificam disk-ul in scop cu ce partitii, VG si LV se prezinta:
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
......
sdb 8:16 0 10G 0 disk
└─sdb1 8:17 0 10G 0 part
├─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1
└─vg_wiki-lv_wiki_2 252:2 0 4G 0 lvm /wiki/lv2
......
De asemenea facem o verificare a mount-urilor pentru disk-ul in scop:
# df -h
Filesystem Size Used Avail Use% Mounted on
......
/dev/mapper/vg_wiki-lv_wiki_1 5.9G 24K 5.6G 1% /wiki/lv1
/dev/mapper/vg_wiki-lv_wiki_2 3.9G 24K 3.7G 1% /wiki/lv2
Extindere HDD[edit | edit source]
Procedam la extinderea disk-ului in hypervisor (ex Proxmox VM):
Fara a restarta masina virtuala este nevoie de rescanarea disk-ului pentru a colecta informatiile legate de noua capacitate:
# echo 1 > /sys/block/sdb/device/rescan
Apoi ne asiguram ca OS-ul scanat disk-ul:
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
......
sdb 8:16 0 20G 0 disk
└─sdb1 8:17 0 10G 0 part
├─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1
└─vg_wiki-lv_wiki_2 252:2 0 4G 0 lvm /wiki/lv2
......
Extindere Partitie[edit | edit source]
Dupe ce a fost extins disk-ul fizic trebuie extinsa si partitia aflata pe respectivul disk:
# growpart /dev/sdb 1
CHANGED: partition=1 start=2048 old: size=31455199 end=31457246 new: size=41940959 end=41943006
# pvresize /dev/sdb1
Physical volume "/dev/sdb1" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
Apoi ne asiguram ca extinderea se reflecta pe partitie in OS:
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
......
sdb 8:16 0 20G 0 disk
└─sdb1 8:17 0 20G 0 part
├─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1
└─vg_wiki-lv_wiki_2 252:2 0 4G 0 lvm /wiki/lv2
......
Extindere Logical Volume[edit | edit source]
In continuare dorim sa marim lv_wiki_1 cu 7GB iar restul spatiului disponibil il vom aloca catre lv_wiki_2
Query Logical Volume si Volume Group[edit | edit source]
Volume group-ul (VG) vg_wiki a fost creeat peste intreaga partitie /dev/sdb1 iar odata cu extinderea partitiei s-a exting si VG-ul
# vgdisplay vg_wiki
--- Volume group ---
VG Name vg_wiki
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 8
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size <20.00 GiB
PE Size 4.00 MiB
Total PE 3839
Alloc PE / Size 2559 / <10.00 GiB
Free PE / Size 1280 / 10.00 GiB
VG UUID LvZwAo-9K3I-Qdvw-x39q-kbGT-9IAn-s7e2Nb
Pentru a vedea informatiile volumelor logice rulam:
# lvdisplay
--- Logical volume ---
LV Path /dev/vg_wiki/lv_wiki_1
LV Name lv_wiki_1
VG Name vg_wiki
LV UUID 4sOD3P-pYEi-S0Tf-OaYb-83B3-NhCM-lqLSdG
LV Write Access read/write
LV Creation host, time docktest, 2025-06-27 11:47:34 +0000
LV Status available
# open 1
LV Size 6.00 GiB
Current LE 1536
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:1
--- Logical volume ---
LV Path /dev/vg_wiki/lv_wiki_2
LV Name lv_wiki_2
VG Name vg_wiki
LV UUID 4UMXIA-7Ftj-UPRf-bccb-Iltw-EoJl-h3U0iZ
LV Write Access read/write
LV Creation host, time docktest, 2025-06-27 11:47:43 +0000
LV Status available
# open 1
LV Size <4.00 GiB
Current LE 1023
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:2
......
Pentru a vedea informatiile strict necesare in acest caz putem rula:
# vgs
VG #PV #LV #SN Attr VSize VFree
......
vg_wiki 1 2 0 wz--n- <20.00g 10.00g
# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
......
lv_wiki_1 vg_wiki -wi-ao---- 6.00g
lv_wiki_2 vg_wiki -wi-ao---- <4.00g
Extindere lv_wiki_1 cu 7GB[edit | edit source]
Extindem mai intai volumul logic:
# lvextend -r -L+7G /dev/mapper/vg_wiki-lv_wiki_1
Size of logical volume vg_wiki/lv_wiki_1 changed from 6.00 GiB (1792 extents) to 13.00 GiB (3328 extents).
Logical volume vg_wiki/lv_wiki_1 successfully resized.
resize2fs 1.47.0 (5-Feb-2023)
Filesystem at /dev/mapper/vg_wiki-lv_wiki_1 is mounted on /wiki/lv1; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
The filesystem on /dev/mapper/vg_wiki-lv_wiki_1 is now 3407872 (4k) blocks long.
Din verbose-itatea de mai sus observam ca a fost rulat automat si redimensionarea file system-ului, astfel ca putem vedea instant marirea la nivel de mount:
# df -h /wiki/lv1/
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_wiki-lv_wiki_1 13G 24K 13G 1% /wiki/lv1
Extindere lv_wiki_2 cu aprox 3GB[edit | edit source]
In VG vg_wiki au mai ramas nealocati aproximativ 3GB:
# vgs
VG #PV #LV #SN Attr VSize VFree
......
vg_wiki 1 2 0 wz--n- <20.00g 3.00g
Acesti 3GB ii vom aloca catre lv_wiki_2 in totalitate:
# lvextend -l +100%FREE /dev/mapper/vg_wiki-lv_wiki_2
Size of logical volume vg_wiki/lv_wiki_2 changed from <4.00 GiB (1023 extents) to <7.00 GiB (1791 extents).
Logical volume vg_wiki/lv_wiki_2 successfully resized.
De aceasta data redimenionarea filesystem-ului nu a mai fost facuta in mod automat motiv pentru care acest lucru trebuie sa il facem manual:
# resize2fs /dev/mapper/vg_wiki-lv_wiki_2
resize2fs 1.47.0 (5-Feb-2023)
Filesystem at /dev/mapper/vg_wiki-lv_wiki_2 is mounted on /wiki/lv2; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/mapper/vg_wiki-lv_wiki_2 is now 1833984 (4k) blocks long.
Dupa redimenionarea filesystem-ului putem vedea extinderea si la nivel de mount:
# df -h /wiki/lv2/
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_wiki-lv_wiki_2 6.9G 24K 6.5G 1% /wiki/lv2
Nota[edit | edit source]
Situatia extinerii de disk-uri dintr-un VM este diferita si cu un risc mai mare de pierdere a datelor in situatia in care fiecare lv are propia lui partitie:
# lsblk
sdb 8:16 0 10G 0 disk
└─sdb1 8:17 0 6G 0 part
└─vg_wiki-lv_wiki_1 252:1 0 6G 0 lvm /wiki/lv1
└─sdb2 8:17 0 4G 0 part
└─vg_wiki-lv_wiki_2 252:2 0 4G 0 lvm /wiki/lv2
... sau atunci cand disk-urile sunt tratate ca raw-disk
# lsblk
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 6G 0 part /wiki/lv1
└─sdb2 8:17 0 4G 0 part /wiki/lv2