Změna velikosti disku s operačním systémem, který má oddíl GPT

Platí pro: ✔️ Virtuální počítače s Linuxem ✔️ Flexibilní škálovací sady

Poznámka

Tento článek se týká jenom disků s operačním systémem, které mají oddíl GPT (Guid Partition Table).

Tento článek popisuje, jak zvětšit velikost disku s operačním systémem, který má oddíl GPT v Linuxu.

Určení, jestli má disk s operačním systémem oddíl MBR nebo GPT

Pomocí příkazu zjistěte, jestli se diskový oddíl vytvořil s oddílem parted MBR (Master Boot Record) nebo s oddílem GPT.

Oddíl MBR

V následujícím výstupu tabulka oddílů zobrazuje hodnotu msdos. Tato hodnota identifikuje oddíl MBR.

[user@myvm ~]# parted -l /dev/sda
Model: Msft Virtual Disk (scsi)
Disk /dev/sda: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number  Start   End     Size    Type     File system  Flags
1       1049kB  525MB   524MB   primary  ext4         boot
2       525MB   34.4GB  33.8GB  primary  ext4
[user@myvm ~]#

Oddíl GPT

V následujícím výstupu tabulka oddílů zobrazuje hodnotu gpt. Tato hodnota identifikuje oddíl GPT.

[user@myvm ~]# parted -l /dev/sda
Model: Msft Virtual Disk (scsi)
Disk /dev/sda: 68.7GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name                  Flags
1       1049kB  525MB   524MB   fat16        EFI System Partition  boot
2       525MB   1050MB  524MB   xfs
3       1050MB  1052MB  2097kB                                     bios_grub
4       1052MB  68.7GB  67.7GB                                     lvm

Pokud má váš virtuální počítač na disku s operačním systémem oddíl GPT, zvětšete velikost disku s operačním systémem.

Zvětšení velikosti disku s operačním systémem

Následující pokyny platí pro distribuce schválené pro Linux.

Poznámka

Než budete pokračovat, vytvořte záložní kopii virtuálního počítače nebo pořazte snímek disku s operačním systémem.

Ubuntu

Zvětšení velikosti disku s operačním systémem v Ubuntu 16 x a 18. x:

  1. Zastavte virtuální počítač.
  2. Zvětšete velikost disku s operačním systémem z portálu.
  3. Restartujte virtuální počítač a přihlaste se k virtuálnímu počítače jako uživatel root.
  4. Ověřte, že se na disku s operačním systémem teď zobrazuje větší velikost systému souborů.

V následujícím příkladu se velikost disku s operačním systémem z portálu změnila na 100 GB. Systém souborů /dev/sda1, ke které je teď / připojen, teď zobrazuje 97 GB.

user@myvm:~# df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  314M     0  314M   0% /dev
tmpfs          tmpfs      65M  2.3M   63M   4% /run
/dev/sda1      ext4       97G  1.8G   95G   2% /
tmpfs          tmpfs     324M     0  324M   0% /dev/shm
tmpfs          tmpfs     5.0M     0  5.0M   0% /run/lock
tmpfs          tmpfs     324M     0  324M   0% /sys/fs/cgroup
/dev/sda15     vfat      105M  3.6M  101M   4% /boot/efi
/dev/sdb1      ext4       20G   44M   19G   1% /mnt
tmpfs          tmpfs      65M     0   65M   0% /run/user/1000
user@myvm:~#

SUSE

Pokud chcete zvětšit velikost disku s operačním systémem v SUSE 12 SP4, SUSE SLES 12 pro SAP, SUSE SLES 15 a SUSE SLES 15 pro SAP:

  1. Zastavte virtuální počítač.
  2. Zvětšete velikost disku s operačním systémem z portálu.
  3. Restartujte virtuální počítač.

Po restartování virtuálního počítače proveďte následující kroky:

  1. Přístup k virtuálnímu počítači jako uživatel root pomocí tohoto příkazu:

    # sudo -i
    
  2. Pomocí následujícího příkazu nainstalujte balíček growpart, který použijete ke změně velikosti oddílu:

    # zypper install growpart
    
  3. Pomocí lsblk příkazu vyhledejte oddíl, který je připojen k kořenovému adresáři systému souborů ( / ). V tomto případě vidíme, že oddíl 4 SDA zařízení je připojen k / :

    # lsblk
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda      8:0    0   48G  0 disk
    ├─sda1   8:1    0    2M  0 part
    ├─sda2   8:2    0  512M  0 part /boot/efi
    ├─sda3   8:3    0    1G  0 part /boot
    └─sda4   8:4    0 28.5G  0 part /
    sdb      8:16   0    4G  0 disk
    └─sdb1   8:17   0    4G  0 part /mnt/resource
    
  4. Změňte velikost požadovaného oddílu pomocí příkazu a čísla growpart oddílu stanovených v předchozím kroku:

    # growpart /dev/sda 4
    CHANGED: partition=4 start=3151872 old: size=59762655 end=62914527 new: size=97511391 end=100663263
    
  5. Znovu spusťte lsblk příkaz a zkontrolujte, jestli se oddíl zvýšil.

    Následující výstup ukazuje, že velikost oddílu /dev/sda4 byla změněna na 46,5 GB:

    linux:~ # lsblk
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda      8:0    0   48G  0 disk
    ├─sda1   8:1    0    2M  0 part
    ├─sda2   8:2    0  512M  0 part /boot/efi
    ├─sda3   8:3    0    1G  0 part /boot
    └─sda4   8:4    0 46.5G  0 part /
    sdb      8:16   0    4G  0 disk
    └─sdb1   8:17   0    4G  0 part /mnt/resource
    
  6. Pomocí příkazu s příznakem identifikujte typ systému souborů na disku s operačním lsblk -f systémem:

    linux:~ # lsblk -f
    NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
    sda
    ├─sda1
    ├─sda2 vfat   EFI   AC67-D22D                            /boot/efi
    ├─sda3 xfs    BOOT  5731a128-db36-4899-b3d2-eb5ae8126188 /boot
    └─sda4 xfs    ROOT  70f83359-c7f2-4409-bba5-37b07534af96 /
    sdb
    └─sdb1 ext4         8c4ca904-cd93-4939-b240-fb45401e2ec6 /mnt/resource
    
  7. V závislosti na typu systému souborů změňte velikost systému souborů pomocí příslušných příkazů.

    Pro xfs použijte tento příkaz:

    #xfs_growfs /
    

    Příklad výstupu:

    linux:~ # xfs_growfs /
    meta-data=/dev/sda4              isize=512    agcount=4, agsize=1867583 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=0 spinodes=0 rmapbt=0
             =                       reflink=0
    data     =                       bsize=4096   blocks=7470331, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal               bsize=4096   blocks=3647, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    data blocks changed from 7470331 to 12188923
    

    Pro ext4 použijte tento příkaz:

    #resize2fs /dev/sda4
    
  8. Pomocí tohoto příkazu ověřte zvýšenou velikost systému souborů pro df -Th:

    #df -Thl
    

    Příklad výstupu:

    linux:~ # df -Thl
    Filesystem     Type      Size  Used Avail Use% Mounted on
    devtmpfs       devtmpfs  445M  4.0K  445M   1% /dev
    tmpfs          tmpfs     458M     0  458M   0% /dev/shm
    tmpfs          tmpfs     458M   14M  445M   3% /run
    tmpfs          tmpfs     458M     0  458M   0% /sys/fs/cgroup
    /dev/sda4      xfs        47G  2.2G   45G   5% /
    /dev/sda3      xfs      1014M   86M  929M   9% /boot
    /dev/sda2      vfat      512M  1.1M  511M   1% /boot/efi
    /dev/sdb1      ext4      3.9G   16M  3.7G   1% /mnt/resource
    tmpfs          tmpfs      92M     0   92M   0% /run/user/1000
    tmpfs          tmpfs      92M     0   92M   0% /run/user/490
    

    V předchozím příkladu vidíme, že se zvýšila velikost systému souborů disku s operačním systémem.

RHEL s LVM

  1. Přístup k virtuálnímu počítači jako uživatel root pomocí tohoto příkazu:

    [root@dd-rhel7vm ~]# sudo -i
    
  2. Pomocí příkazu lsblk určete, který logický svazek (LV) je připojen k kořenovému adresáři systému souborů ( / ). V tomto případě vidíme, že rootvg-rootlv je připojen k / . Pokud chcete jiný systém souborů, nahraďte LV a přípojný bod v celém tomto článku.

    [root@dd-rhel7vm ~]# lsblk -f
    NAME                  FSTYPE      LABEL   UUID                                   MOUNTPOINT
    fd0
    sda
    ├─sda1                vfat                C13D-C339                              /boot/efi
    ├─sda2                xfs                 8cc4c23c-fa7b-4a4d-bba8-4108b7ac0135   /boot
    ├─sda3
    └─sda4                LVM2_member         zx0Lio-2YsN-ukmz-BvAY-LCKb-kRU0-ReRBzh
       ├─rootvg-tmplv      xfs                 174c3c3a-9e65-409a-af59-5204a5c00550   /tmp
       ├─rootvg-usrlv      xfs                 a48dbaac-75d4-4cf6-a5e6-dcd3ffed9af1   /usr
       ├─rootvg-optlv      xfs                 85fe8660-9acb-48b8-98aa-bf16f14b9587   /opt
       ├─rootvg-homelv     xfs                 b22432b1-c905-492b-a27f-199c1a6497e7   /home
       ├─rootvg-varlv      xfs                 24ad0b4e-1b6b-45e7-9605-8aca02d20d22   /var
       └─rootvg-rootlv     xfs                 4f3e6f40-61bf-4866-a7ae-5c6a94675193   /
    
  3. Zkontrolujte, jestli je ve skupině svazků LVM (VG), která obsahuje kořenový oddíl, volné místo. Pokud je volné místo, přejděte ke kroku 12.

    [root@dd-rhel7vm ~]# vgdisplay rootvg
    --- Volume group ---
    VG Name               rootvg
    System ID
    Format                lvm2
    Metadata Areas        1
    Metadata Sequence No  7
    VG Access             read/write
    VG Status             resizable
    MAX LV                0
    Cur LV                6
    Open LV               6
    Max PV                0
    Cur PV                1
    Act PV                1
    VG Size               <63.02 GiB
    PE Size               4.00 MiB
    Total PE              16132
    Alloc PE / Size       6400 / 25.00 GiB
    Free  PE / Size       9732 / <38.02 GiB
    VG UUID               lPUfnV-3aYT-zDJJ-JaPX-L2d7-n8sL-A9AgJb
    

    V tomto příkladu řádek Free PE / Size ukazuje, že ve skupině svazků je 38,02 GB volného místa. Před přidáním místa do skupiny svazků není nutné měnit velikost disku.

  4. Zvětšení velikosti disku s operačním systémem v RHEL 7 x s LVM:

    1. Zastavte virtuální počítač.
    2. Zvětšete velikost disku s operačním systémem z portálu.
    3. Spusťte virtuální počítač.
  5. Po restartování virtuálního počítače proveďte následující krok:

    • Nainstalujte balíček cloud-utils-growpart, který poskytne příkaz growpart, který je nutný ke zvětšení velikosti disku s operačním systémem a obslužné rutiny gdisku pro rozložení disků GPT. Tyto balíčky jsou předinstalované na většině imagí marketplace.
    [root@dd-rhel7vm ~]# yum install cloud-utils-growpart gdisk
    
  6. Pomocí příkazu zjistěte, který disk a oddíl obsahuje fyzický svazek LVM nebo svazky (PV) ve skupině svazků rootvg. pvscan Všimněte si velikosti a volné mezery uvedené mezi hranatými závorkami ([ a ]).

    [root@dd-rhel7vm ~]# pvscan
      PV /dev/sda4   VG rootvg          lvm2 [<63.02 GiB / <38.02 GiB free]
    
  7. Pomocí příkazu ověřte velikost lsblk oddílu.

    [root@dd-rhel7vm ~]# lsblk /dev/sda4
    NAME            MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    sda4              8:4    0  63G  0 part
    ├─rootvg-tmplv  253:1    0   2G  0 lvm  /tmp
    ├─rootvg-usrlv  253:2    0  10G  0 lvm  /usr
    ├─rootvg-optlv  253:3    0   2G  0 lvm  /opt
    ├─rootvg-homelv 253:4    0   1G  0 lvm  /home
    ├─rootvg-varlv  253:5    0   8G  0 lvm  /var
    └─rootvg-rootlv 253:6    0   2G  0 lvm  /
    
  8. Rozbalte oddíl, který obsahuje tuto pv, pomocí growpart , názvu zařízení a čísla oddílu. Tím se zadaný oddíl rozbalí tak, aby se na zařízení vyu dělali veškeré volné souvislé místo.

    [root@dd-rhel7vm ~]# growpart /dev/sda 4
    CHANGED: partition=4 start=2054144 old: size=132161536 end=134215680 new: size=199272414 end=201326558
    
  9. Pomocí příkazu znovu ověřte, že se velikost oddílu změnila na lsblk očekávanou velikost. Všimněte si, že v příkladu se sda4 změnil z 63 GB na 95 GB.

    [root@dd-rhel7vm ~]# lsblk /dev/sda4
    NAME            MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    sda4              8:4    0  95G  0 part
    ├─rootvg-tmplv  253:1    0   2G  0 lvm  /tmp
    ├─rootvg-usrlv  253:2    0  10G  0 lvm  /usr
    ├─rootvg-optlv  253:3    0   2G  0 lvm  /opt
    ├─rootvg-homelv 253:4    0   1G  0 lvm  /home
    ├─rootvg-varlv  253:5    0   8G  0 lvm  /var
    └─rootvg-rootlv 253:6    0   2G  0 lvm  /
    
  10. Rozbalte PV a použijte zbytek nově rozbaleného oddílu:

    [root@dd-rhel7vm ~]# pvresize /dev/sda4
    Physical volume "/dev/sda4" changed
    1 physical volume(s) resized or updated / 0 physical volume(s) not resized
    
  11. Ověřte, že je nová velikost pv očekávanou velikostí, a porovnejte ji s původními hodnotami [velikost /zdarma]:

    [root@dd-rhel7vm ~]# pvscan
    PV /dev/sda4   VG rootvg          lvm2 [<95.02 GiB / <70.02 GiB free]
    
  12. Rozbalte požadovaný logický svazek (LV) podle požadovaného množství. Velikost nemusí být veškerým volným prostorem ve skupině svazků. V následujícím příkladu se velikost /dev/mapper/rootvg-rootlv změní z 2 GB na 12 GB (zvýšení o 10 GB). Tento příkaz také změní velikost systému souborů.

    [root@dd-rhel7vm ~]# lvresize -r -L +10G /dev/mapper/rootvg-rootlv
    

    Příklad výstupu:

    [root@dd-rhel7vm ~]# lvresize -r -L +10G /dev/mapper/rootvg-rootlv
    Size of logical volume rootvg/rootlv changed from 2.00 GiB (512 extents) to 12.00 GiB (3072 extents).
    Logical volume rootvg/rootlv successfully resized.
    meta-data=/dev/mapper/rootvg-rootlv isize=512    agcount=4, agsize=131072 blks
             =                       sectsz=4096  attr=2, projid32bit=1
             =                       crc=1        finobt=0 spinodes=0
    data     =                       bsize=4096   blocks=524288, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal               bsize=4096   blocks=2560, version=2
             =                       sectsz=4096  sunit=1 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    data blocks changed from 524288 to 3145728
    
  13. Příkaz lvresize automaticky zavolá odpovídající příkaz pro změnu velikosti pro systém souborů v LV. Pomocí tohoto příkazu zkontrolujte, jestli má soubor /dev/mapper/rootvg-rootlv, který je připojen k , / větší velikost systému souborů:

    [root@dd-rhel7vm ~]# df -Th /
    

    Příklad výstupu:

    [root@dd-rhel7vm ~]# df -Th /
    Filesystem                Type  Size  Used Avail Use% Mounted on
    /dev/mapper/rootvg-rootlv xfs    12G   71M   12G   1% /
    [root@dd-rhel7vm ~]#
    

Poznámka

Pokud chcete použít stejný postup pro změnu velikosti jakéhokoli jiného logického svazku, změňte název LV v kroku 12.

RHEL RAW

Zvětšení disku s operačním systémem v oddílu RHEL RAW:

  1. Zastavte virtuální počítač.
  2. Zvětšete velikost disku s operačním systémem z portálu.
  3. Spusťte virtuální počítač.

Po restartování virtuálního počítače proveďte následující kroky:

  1. Přístup k virtuálnímu počítači jako uživatel root pomocí následujícího příkazu:

    [root@dd-rhel7vm ~]# sudo -i
    
  2. Po restartování virtuálního počítače proveďte následující krok:

    • Nainstalujte balíček cloud-utils-growpart, který poskytne příkaz growpart, který je nutný ke zvětšení velikosti disku s operačním systémem a obslužné rutiny gdisku pro rozložení disků GPT. Tento balíček je předinstalovaný na většině imagí marketplace.
    [root@dd-rhel7vm ~]# yum install cloud-utils-growpart gdisk
    
  3. Pomocí příkazu lsblk -f ověřte typ oddílu a systému souborů, který obsahuje kořenový oddíl ( / ):

    [root@vm-dd-cent7 ~]# lsblk -f
    NAME    FSTYPE LABEL UUID                                 MOUNTPOINT
    sda
    ├─sda1  xfs          2a7bb59d-6a71-4841-a3c6-cba23413a5d2 /boot
    ├─sda2  xfs          148be922-e3ec-43b5-8705-69786b522b05 /
    ├─sda14
    └─sda15 vfat         788D-DC65                            /boot/efi
    sdb
    └─sdb1  ext4         923f51ff-acbd-4b91-b01b-c56140920098 /mnt/resource
    
  4. Pro ověření začněte výpisem tabulky oddílů disku SDA s gdiskem. V tomto příkladu vidíme 48GB disk s oddílem 2 s 29,0 GiB. Disk se rozšířil z 30 GB na 48 GB v Azure Portal.

    [root@vm-dd-cent7 ~]# gdisk -l /dev/sda
    GPT fdisk (gdisk) version 0.8.10
    
    Partition table scan:
    MBR: protective
    BSD: not present
    APM: not present
    GPT: present
    
    Found valid GPT with protective MBR; using GPT.
    Disk /dev/sda: 100663296 sectors, 48.0 GiB
    Logical sector size: 512 bytes
    Disk identifier (GUID): 78CDF84D-9C8E-4B9F-8978-8C496A1BEC83
    Partition table holds up to 128 entries
    First usable sector is 34, last usable sector is 62914526
    Partitions will be aligned on 2048-sector boundaries
    Total free space is 6076 sectors (3.0 MiB)
    
    Number  Start (sector)    End (sector)  Size       Code  Name
       1         1026048         2050047   500.0 MiB   0700
       2         2050048        62912511   29.0 GiB    0700
    14            2048           10239   4.0 MiB     EF02
    15           10240         1024000   495.0 MiB   EF00  EFI System Partition
    
  5. Rozbalte oddíl pro root, v tomto případě sda2 pomocí příkazu growpart. Pomocí tohoto příkazu rozbalíte oddíl, aby se na disku vyukázaly veškeré souvislé místo.

    [root@vm-dd-cent7 ~]# growpart /dev/sda 2
    CHANGED: partition=2 start=2050048 old: size=60862464 end=62912512 new: size=98613214 end=100663262
    
  6. Teď znovu vytiskněte novou tabulku oddílů pomocí gdisku. Všimněte si, že oddíl 2 se rozšířil na 47,0 GiB:

    [root@vm-dd-cent7 ~]# gdisk -l /dev/sda
    GPT fdisk (gdisk) version 0.8.10
    
    Partition table scan:
    MBR: protective
    BSD: not present
    APM: not present
    GPT: present
    
    Found valid GPT with protective MBR; using GPT.
    Disk /dev/sda: 100663296 sectors, 48.0 GiB
    Logical sector size: 512 bytes
    Disk identifier (GUID): 78CDF84D-9C8E-4B9F-8978-8C496A1BEC83
    Partition table holds up to 128 entries
    First usable sector is 34, last usable sector is 100663262
    Partitions will be aligned on 2048-sector boundaries
    Total free space is 4062 sectors (2.0 MiB)
    
    Number  Start (sector)    End (sector)  Size       Code  Name
       1         1026048         2050047   500.0 MiB   0700
       2         2050048       100663261   47.0 GiB    0700
    14            2048           10239   4.0 MiB     EF02
    15           10240         1024000   495.0 MiB   EF00  EFI System Partition
    
  7. Rozbalte systém souborů v oddílu pomocí xfs_growfs, který je vhodný pro standardní systém RedHat generovaný marketplace:

    [root@vm-dd-cent7 ~]# xfs_growfs /
    meta-data=/dev/sda2              isize=512    agcount=4, agsize=1901952 blks
             =                       sectsz=4096  attr=2, projid32bit=1
             =                       crc=1        finobt=0 spinodes=0
    data     =                       bsize=4096   blocks=7607808, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal               bsize=4096   blocks=3714, version=2
             =                       sectsz=4096  sunit=1 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    data blocks changed from 7607808 to 12326651
    
  8. Ověřte, že se nová velikost odráží pomocí příkazu DF :

    [root@vm-dd-cent7 ~]# df -hl
    Filesystem      Size  Used Avail Use% Mounted on
    devtmpfs        452M     0  452M   0% /dev
    tmpfs           464M     0  464M   0% /dev/shm
    tmpfs           464M  6.8M  457M   2% /run
    tmpfs           464M     0  464M   0% /sys/fs/cgroup
    /dev/sda2        48G  2.1G   46G   5% /
    /dev/sda1       494M   65M  430M  13% /boot
    /dev/sda15      495M   12M  484M   3% /boot/efi
    /dev/sdb1       3.9G   16M  3.7G   1% /mnt/resource
    tmpfs            93M     0   93M   0% /run/user/1000