GNU/Linux >> Znalost Linux >  >> Linux

Jak změnit velikost oddílu LVM uvnitř rozšířeného oddílu

Změna velikosti logického svazku v Linuxu není příliš obtížná a lze ji dosáhnout velmi přímočarým přístupem. Zde jsou obvyklé kroky:

  1. Vytvořte nový oddíl na pevném disku.
  2. Přidejte oddíl, který jste právě vytvořili, jako fyzický svazek.
  3. Přidejte nový fyzický svazek do skupiny svazků.
  4. Přiřaďte prostor ze skupiny disků logickému disku.
  5. Změňte velikost souborového systému.

Ale v tomto scénáři máte kořenový souborový systém (jako oddíl LVM) připojený pod rozšířeným oddílem, nikoli v rámci primárního oddílu. Máte pouze jeden primární oddíl, který je připojen k /boot a zbytek místa je součástí tohoto rozšířeného oddílu.

Zní to obtížně? Dovolte mi, abych vám ukázal, jak změnit velikost LVM uvnitř rozšířeného oddílu.

Změna velikosti oddílu LVM uvnitř rozšířeného oddílu

V tomto tutoriálu používám Linux nainstalovaný ve virtuálním počítači.

Mějte prosím na paměti, že byste měli být velmi opatrní při práci s diskovými oddíly.

Krok 1: Vypněte virtuální počítač a zvětšete velikost disku

Nejprve vypněte virtuální počítač a zvětšete velikost disku. Zde jsem zvětšil velikost disku /dev/sda o 20 GB na přibližně 40 GB. Poté spusťte virtuální počítač a přejděte do konzoly.

Podívejte se na naše diskové oddíly.

[email protected]:~# fdisk -l

Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a975f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      499711      248832   83  Linux
/dev/sda2          501758    41940991    20719617    5  Extended
/dev/sda5          501760    41940991    20719616   8e  Linux LVM

Pokud analyzujete místo na disku pomocí příkazu df, zobrazí se mi toto:

[email protected]:~# df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  989M  4.0K  989M   1% /dev
tmpfs          tmpfs     201M  716K  200M   1% /run
/dev/dm-0      ext4       19G  1.5G   16G   9% /
none           tmpfs     4.0K     0  4.0K   0% /sys/fs/cgroup
none           tmpfs     5.0M     0  5.0M   0% /run/lock
none           tmpfs    1001M     0 1001M   0% /run/shm
none           tmpfs     100M     0  100M   0% /run/user
/dev/sda1      ext2      236M   40M  184M  18% /boot

Zde je cílem zvětšit velikost oddílu /dev/dm-0, který je připojen k /dev/sda5.

Dovolte mi také ukázat aktuální stav fyzických svazků, skupin svazků a logických svazků:

[email protected]:~# lvs
  LV     VG          Attr      LSize    Pool Origin Data%  Move Log Copy%  Convert
  root   ubuntu14-vg -wi-ao---   18.74g                                           
  swap_1 ubuntu14-vg -wi-ao--- 1020.00m   
  
[email protected]:~# pvs
  PV         VG          Fmt  Attr PSize  PFree 
  /dev/sda5  ubuntu14-vg lvm2 a--  19.76g 20.00m
  
[email protected]:~# vgs
  VG          #PV #LV #SN Attr   VSize  VFree 
  ubuntu14-vg   1   2   0 wz--n- 19.76g 20.00m

Všechny mají přiděleno přibližně 20 GB úložného prostoru.

Krok 2:Zahajte proces změny velikosti LVM

Zde jsou kroky pro změnu velikosti oddílu LVM:

Otevřete nástroj fdisk a podívejte se na oddíly:

[email protected]:~# fdisk /dev/sda

Command (m for help): p

Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a975f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      499711      248832   83  Linux
/dev/sda2          501758    41940991    20719617    5  Extended
/dev/sda5          501760    41940991    20719616   8e  Linux LVM

Smažte rozšířený oddíl (/dev/sda2) pomocí příkazu d , což automaticky odstraní základní oddíl LVM, kterým je /dev/sda5.

Command (m for help): d
Partition number (1-5): 2

Vytvořte nový oddíl znovu jako rozšířený pomocí příkazu n s výchozími počátečními a koncovými hodnotami cylindru.

Command (m for help): n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): e
Partition number (1-4, default 2): 
Using default value 2
First sector (499712-83886079, default 499712): 
Using default value 499712
Last sector, +sectors or +size{K,M,G} (499712-83886079, default 83886079): 
Using default value 83886079

Command (m for help): p

Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a975f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      499711      248832   83  Linux
/dev/sda2          499712    83886079    41693184    5  Extended

Vytvořte logický oddíl (dev/sda5) pomocí výchozích hodnot počátečního a koncového cylindru.

Command (m for help): n
Partition type:
   p   primary (1 primary, 1 extended, 2 free)
   l   logical (numbered from 5)
Select (default p): l
Adding logical partition 5
First sector (501760-83886079, default 501760): 
Using default value 501760
Last sector, +sectors or +size{K,M,G} (501760-83886079, default 83886079): 
Using default value 83886079

Přepněte do expertního režimu stisknutím x .

Command (m for help): x

Spusťte expertní příkaz b upravit začátek oddílu (tím se změní velikost oddílu, nikoli místo, kde končí). Zadejte počáteční hodnotu, jaká byla dříve před odstraněním oddílů. Tady je 501760.

Expert command (m for help): b
Partition number (1-5): 5
New beginning of data (499713-83886079, default 501760): 501760

Poté spusťte r pro návrat do hlavní nabídky.

Expert command (m for help): r

Pro jistotu zkontrolujte číslo oddílu.

Command (m for help): p

Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a975f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      499711      248832   83  Linux
/dev/sda2          499712    83886079    41693184    5  Extended
/dev/sda5          501760    83886079    41692160   83  Linux

Nyní změňte typ oddílu na LVM stisknutím t a vyberte typ 8e .

Command (m for help): t
Partition number (1-5): 5
Hex code (type L to list codes): 8e
Changed system type of partition 5 to 8e (Linux LVM)

Stiskněte w zapsat všechny změny na disk.

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 or after you run partprobe(8) or kpartx(8)
Syncing disks.

Krok 3:Proveďte ruční změny fyzického a logického svazku

Spusťte příkaz partprobe a informujte OS o změnách tabulky oddílů:

[email protected]:~# partprobe /dev/sda

Spusťte příkaz lsblk a zjistěte, že /dev/sda5 má nyní velikost přibližně 40 GB (pro mě).

[email protected]:~# lsblk 
NAME                           MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                              8:0    0    40G  0 disk 
├─sda1                           8:1    0   243M  0 part /boot
├─sda2                           8:2    0     1K  0 part 
└─sda5                           8:5    0  39.8G  0 part 
  ├─ubuntu14--vg-root (dm-0)   252:0    0  18.8G  0 lvm  /
  └─ubuntu14--vg-swap_1 (dm-1) 252:1    0  1020M  0 lvm  [SWAP]
sr0                             11:0    1  1024M  0 rom  

Spusťte příkaz df a všimnete si, že /dev/dm-0  stále zobrazuje staré podrobnosti o velikosti:

[email protected]:~# df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  989M  4.0K  989M   1% /dev
tmpfs          tmpfs     201M  716K  200M   1% /run
/dev/dm-0      ext4       19G  1.5G   16G   9% /
none           tmpfs     4.0K     0  4.0K   0% /sys/fs/cgroup
none           tmpfs     5.0M     0  5.0M   0% /run/lock
none           tmpfs    1001M     0 1001M   0% /run/shm
none           tmpfs     100M     0  100M   0% /run/user
/dev/sda1      ext2      236M   40M  184M  18% /boot

Totéž platí pro fyzické svazky, skupiny svazků a logické svazky:

[email protected]:~# lvs
  LV     VG          Attr      LSize    Pool Origin Data%  Move Log Copy%  Convert
  root   ubuntu14-vg -wi-ao---   18.74g                                           
  swap_1 ubuntu14-vg -wi-ao--- 1020.00m   
  
[email protected]:~# pvs
  PV         VG          Fmt  Attr PSize  PFree 
  /dev/sda5  ubuntu14-vg lvm2 a--  19.76g 20.00m
  
[email protected]:~# vgs
  VG          #PV #LV #SN Attr   VSize  VFree 
  ubuntu14-vg   1   2   0 wz--n- 19.76g 20.00m

Zde budete muset vynaložit nějaké ruční úsilí.

Změňte velikost fyzického svazku:

[email protected]:~# pvresize /dev/sda5 
Physical volume "/dev/sda5" changed
1 physical volume(s) resized / 0 physical volume(s) not resized

Nyní zkontrolujte stav fyzického svazku a skupiny svazků a zkontrolujte, zda správně zobrazuje novou velikost:

[email protected]:~# pvs
PV         VG          Fmt  Attr PSize  PFree 
/dev/sda5  ubuntu14-vg lvm2 a--  39.76g 20.02g

[email protected]:~# vgs
VG          #PV #LV #SN Attr   VSize  VFree 
ubuntu14-vg   1   2   0 wz--n- 39.76g 20.02g

Podobně změňte velikost logického svazku:

[email protected]:~# lvextend -l +100%FREE /dev/ubuntu14-vg/root
  Extending logical volume root to 38.76 GiB
  Logical volume root successfully resized

Nakonec změňte velikost souborového systému:

[email protected]:~# resize2fs /dev/ubuntu14-vg/root
resize2fs 1.42.9 (4-Feb-2014)
Filesystem at /dev/ubuntu14-vg/root is mounted on /; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 3
The filesystem on /dev/ubuntu14-vg/root is now 10161152 blocks long.

Ověřte stav disku a zjistěte, že velikost LVM je nyní správně změněna:

[email protected]:~# df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  989M  4.0K  989M   1% /dev
tmpfs          tmpfs     201M  716K  200M   1% /run
/dev/dm-0      ext4       39G  1.5G   35G   4% /
none           tmpfs     4.0K     0  4.0K   0% /sys/fs/cgroup
none           tmpfs     5.0M     0  5.0M   0% /run/lock
none           tmpfs    1001M     0 1001M   0% /run/shm
none           tmpfs     100M     0  100M   0% /run/user
/dev/sda1      ext2      236M   40M  184M  18% /boot

To je vše! Úspěšně jste změnili velikost oddílu LVM uvnitř rozšířeného oddílu.

Otázky nebo návrhy? Zanechte komentář níže.


Linux
  1. Jak vytvořit oddíl LVM/fyzický objem> 2 TB?

  2. Jak vytvořit oddíly uvnitř zařízení se zpětnou smyčkou

  3. Linux / UNIX :Jak vytvořit rozšířený oddíl pomocí fdisk

  1. Jak přesunout swap z diskového oddílu na svazek LVM v Linuxu

  2. Jak změnit velikost (rozšířit) souborový systém založený na oddílech v Linuxu

  3. Gparted nemůže změnit velikost rozšířeného oddílu nebo oddílu LVM

  1. Jak rozdělit disk v Linuxu

  2. Jak změnit systém fyzického oddílu na LVM?

  3. Změňte velikost LVM bez ztráty dat