[CentOS]LVM,XFSシステム上でルートパーティション容量を増加



1.パーティション容量を増やす必要がある理由


Centos 8のインストールと初期設定では、パーティションを設定する必要があります.私はずっとウィンドウだけを使っていて、LinuxベースのオペレーティングシステムCentosを使うことに慣れていないと自信がありません.このため,初期インストール時に開発用ノートパソコンの総容量128 GBのうち,20 GBのみがシステムに割り当てられた.しかし、システムの熟知と開発に伴い、容量を増やす必要がある.

2.曲がりくねった


Centosについては、国内では多くの情報が見つからず、グーグル検索でもなかなか見つからない.
だから3日間かかりました.Centosの最新バージョンでは、バージョン8でルートパーティション容量を増やすのは難しいようです.
実際の検索結果はCentos 6,7バージョンを基準としており,パーティション容量の増加に関する多くの情報がある.バージョン8に適用するには、エラーが発生し続け、挫折するだけです.
誰も私のように苦しんでいないことを望んでいます...一歩一歩書きます.

3.開始

  • 環境
  • オペレーティングシステム:Centos 8
  • 本のパーティションタイプ:XFS、LVM
  • 1.概念をつかむ


    まず、自分のハードディスク(HDD)がどのようにパーティション化され、容量がどれだけ残っているかを確認します.
    lsblk:パーティションステータスの表示
    [root@localhost ~]# lsblk
    NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    sda           8:0    0 119.2G  0 disk 
    ├─sda1        8:1    0   499M  0 part 
    ├─sda2        8:2    0   300M  0 part /boot/efi
    ├─sda5        8:5    0   881M  0 part 
    ├─sda6        8:6    0     1G  0 part /boot
    └─sda7        8:7    0  20.6G  0 part 
      ├─cl-root 253:0    0  18.4G  0 lvm  /
      └─cl-swap 253:1    0   2.2G  0 lvm  [SWAP]
    
    上は本人のディスクの現状です.[sda]という物理ハードディスク119.2 GBはsda 1-7に分けられ、ルートは合計18.4 Gである.残りのパーティションの容量は合計119.2 GB未満で、指定されていないパーティションの残り(残り)容量です.この容量を全部根にあげます.
    ここで注意しなければならないのはsda 7、cl-root、lvmです.
    整理すると...
    **ルートシステムは/dev/sda 7/パスの下にあり、タイプはlvm、容量は18.4 Gです.

    2.残りの容量を新しいパーティションに割り当てる


    残りの容量をルートパーティションに割り当てることはできませんか?
    そうはいかない.プロセッサは、次の手順に従います.

    新しいパーティションを作成して容量を増やします(ルートパーティションに100 GB追加する場合は、新しいパーティションの容量を100 GBに増やします)。


    ->新しいパーティションを物理ボリュームとして割り当てる


    ->新しいパーティション(物理ボリュームとして指定)のすべての容量をルートパーティションに含める


    ->ルートパーティションが追加されました。


    私が何を言っているのか分からないことができます。あなたが下についてほしい。


    1.新規パーティションの作成


    まず、新しいパーティションに割り当てる必要があります.そのため、パーティションを作成する必要があります.
    fdisk:パーティションの割り当て
    [root@localhost ~]# fdisk /dev/sda
    
    Welcome to fdisk (util-linux 2.32.1).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
    
    
    Command (m for help): n
    Partition number (3,4,8-128, default 3): 4
    First sector (1638400-202995711, default 1638400): 
    Last sector, +sectors or +size{K,M,G,T,P} (1638400-202995711, default 202995711): 
    
    Created a new partition 4 of type 'Linux filesystem' and of size 96 GiB.
    Partition #4 contains a xfs signature.
    
    Do you want to remove the signature? [Y]es/[N]o: y
    
    The signature will be removed by a write command.
    
    Command (m for help): w
    The partition table has been altered.
    Syncing disks.
    本人はsdaハードディスクしかありません.他の物理ハードディスク(HDD)をPCにマウントすると、sdb、sdc、sddの順に自動的に認識されます.
    本題に戻ると、私はsdaハードディスクを持っていて、このハードディスク内の残りの容量をルートパーティションに割り当てます.
    そのため、sdaハードディスク内にパーティションを作成する必要があります.
    したがって、fdisk/dev/sdaを入力して、sdaハードディスク(HDD)内にパーティションを作成することを宣言します.
    後n入力:new.新規作成
    後続4を入力:パーティション番号を指定(sda 4)
    次はenter、enter入力です.開始部と終了部を入力しますが、残りのすべての容量をルートに割り当てます.
    通常、ここでSyncing Disksメッセージが出力されます.でもサインを削除するの?出力する場合はyを入力します.
    最後のステップでw:保存して終了する
    Created a new partition 4 of type 'Linux filesystem' and of size 96 GiB.
    Partition #4 contains a xfs signature.
    =>sda 4パーティションが作成され、96 GBの容量が含まれています.

    2.新しいパーティションを物理ボリュームとして指定


    pvscan:物理ボリュームスキャン:物理ボリュームをスキャンします.この結果に新しく追加したsda 4を出力してこそ、ルートパーティションの容量を増やすことができます.
    [root@localhost ~]# pvscan
      PV /dev/sda7   VG cl              lvm2 [20.58 GiB / 0    free]
      Total: 1 [20.58 GiB] / in use: 1 [20.58 GiB] / in no VG: 0 [0   ]
    Uh uh.. 物理ボリュームをスキャンしましたが、生成したばかりのsda 4はスキャンできません.
    これは、単純なパーティションを作成しただけで、物理ボリュームとして指定していないためです.
    もう一つ確認します.
    vgdisplay:ルートパーティション内のボリュームグループとインクリメンタル容量の決定
    [root@localhost ~]# vgdisplay
      --- Volume group ---
      VG Name               cl
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  7
      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.58 GiB
      PE Size               4.00 MiB
      Total PE              5269
      Alloc PE / Size       5269 / 20.58 GiB
      Free  PE / Size       0 / 0   
      VG UUID               hTDJDC-CWoa-BuHW-HE1E-L98O-Vtqr-dfk455
    vgdisplayの結果,ルートパーティションはclというボリュームグループに属し,追加可能容量(Free PE/size)は0であった.
    今は本当に物理ボリュームを指定しましょう
    pvcreate:物理ボリュームの作成
    [root@localhost ~]# pvcreate /dev/sda4
      Physical volume "/dev/sda4" successfully created.
    作成したばかりのsda 4パーティションは物理ボリュームとして指定されています.
    pvscanを再実行し、
    [root@localhost ~]# pvscan
      PV /dev/sda7   VG cl              lvm2 [20.58 GiB / 0    free]
      PV /dev/sda4                      lvm2 [96.01 GiB]
    生成したsda 4は物理ボリュームとしてよく指定されている.
    vgextend「ボリュームグループ」「パーティション」:特定のパーティションを特定のボリュームグループに含める.
    [root@localhost ~]# vgextend cl /dev/sda4
      Volume group "cl" successfully extended
    sda 4パーティションをclというボリュームグループ(VG)に含めます.
    vgdisplayを再実行して、追加可能な容量を決定します.
    [root@localhost ~]# vgdisplay
      --- Volume group ---
      VG Name               cl
      System ID             
      Format                lvm2
      Metadata Areas        2
      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                2
      Act PV                2
      VG Size               116.59 GiB
      PE Size               4.00 MiB
      Total PE              29848
      Alloc PE / Size       5269 / 20.58 GiB
      Free  PE / Size       24579 / 96.01 GiB
      VG UUID               hTDJDC-CWoa-BuHW-HE1E-L98O-Vtqr-dfk455
    Free PE/SIZE部分に24579/96 GBが追加されました!!

    3.ルートパーティションにすべての新しいパーティション容量を含める


    もうすぐ着きます.
    ルートパーティションに24579の追加容量を含める必要があります.
    lvextend[rootパーティションパス]-l+24579:24579をルートとして含みます.
    [root@localhost ~]# lvextend /dev/cl/root -l +24579
      Size of logical volume cl/root changed from 18.42 GiB (4716 extents) to 114.43 GiB (29295 extents).
      Logical volume cl/root successfully resized.
    私のルートパーティションパスは/dev/cl/rootです.人によって異なるので、独自のルートパーティションパスを指定します.
    文章のタイトルのように、私たちのrootパーティションタイプはxfsです.xfsの容量を増やすために、
    xfs growfs[パーティションパス]が必要です.
    [root@localhost ~]# xfs_growfs /dev/cl/root
    meta-data=/dev/mapper/cl-root    isize=512    agcount=4, agsize=1207296 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=1, sparse=1, rmapbt=0
             =                       reflink=1
    data     =                       bsize=4096   blocks=4829184, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
    log      =internal log           bsize=4096   blocks=2560, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    data blocks changed from 4829184 to 29998080

    4.ルートパーティション拡張完了!


    これで終わりです.
    再度lsblkを入力します.
    [root@localhost ~]# lsblk
    NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    sda           8:0    0 119.2G  0 disk 
    ├─sda1        8:1    0   499M  0 part 
    ├─sda2        8:2    0   300M  0 part /boot/efi
    ├─sda4        8:4    0    96G  0 part 
    │ └─cl-root 253:0    0 114.4G  0 lvm  /
    ├─sda5        8:5    0   881M  0 part 
    ├─sda6        8:6    0     1G  0 part /boot
    └─sda7        8:7    0  20.6G  0 part 
      ├─cl-root 253:0    0 114.4G  0 lvm  /
      └─cl-swap 253:1    0   2.2G  0 lvm  [SWAP]
    出力します.
    sda 4パーティションにもcl-rootの位置があります.
    ルートパーティション全体の容量は従来の18 GBから114 GBに増加した.