CentOSを起動したままパーティションとlvmとfsを拡張

  • LINEで送る

こんばんにちは

仮想マシンでのディスク容量拡張やVPSのスケールアップなどで,システムがブートしているファイルシステムをそのシステム上から拡張したくなることがあります.

以前,Ubuntuで同様のことを記事にしております.

今回は,CentOSでインストール時に標準で選択される論理ボリュームを使用した構成になります.

なお,swapのサイズは変更しません.

続きをどうぞ.

最初に

sakura3 ~ % cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)

※ 以下,関係ないディスク等はコマンド実行結果から省いています.

変更前

25GBのディスク

sakura3 ~ % df -h
ファイルシス                サイズ  使用  残り 使用% マウント位置
/dev/mapper/centos_***-root    23G   14G  8.9G   61% /
/dev/vda1                     497M  259M  238M   53% /boot

sakura3 ~ % sudo fdisk -l

Disk /dev/vda: 107.4 GB, 107374182400 bytes, 209715200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x000864fc

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/vda1   *        2048     1026047      512000   83  Linux
/dev/vda2         1026048    52428799    25701376   83  Linux

Disk /dev/mapper/centos_***-root: 24.2 GB, 24167579648 bytes, 47202304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト


Disk /dev/mapper/centos_***-swap: 2147 MB, 2147483648 bytes, 4194304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト

sakura3 ~ % sudo lvdisplay
  --- Logical volume ---
  LV Path                /dev/centos_***/swap
  LV Name                swap
  VG Name                centos_***
  LV UUID                ******-****-****-****-****-****-******
  LV Write Access        read/write
  LV Creation host, time ********.**.**, 2018-01-12 13:23:40 +0900
  LV Status              available
  # open                 2
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1

  --- Logical volume ---
  LV Path                /dev/centos_***/root
  LV Name                root
  VG Name                ***
  LV UUID                ******-****-****-****-****-****-******
  LV Write Access        read/write
  LV Creation host, time ********.**.**, 2018-01-12 13:23:41 +0900
  LV Status              available
  # open                 1
  LV Size                <22.51 GiB
  Current LE             5762
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

パーティションのリサイズ

論理ボリュームが乗っている /dev/vda2 をディスクいっぱいまで拡張します.

sakura3 ~ % sudo parted /dev/vda
GNU Parted 3.1
/dev/vda を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) print
モデル: Virtio Block Device (virtblk)
ディスク /dev/vda: 107GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: msdos
ディスクフラグ:

番号  開始    終了    サイズ  タイプ   ファイルシステム  フラグ
 1    1049kB  525MB   524MB   primary  xfs               boot
 2    525MB   26.8GB  26.3GB  primary

(parted) resizepart 2
終了?  [26.8GB]? 100%
(parted) print
モデル: Virtio Block Device (virtblk)
ディスク /dev/vda: 107GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: msdos
ディスクフラグ:

番号  開始    終了   サイズ  タイプ   ファイルシステム  フラグ
 1    1049kB  525MB  524MB   primary  xfs               boot
 2    525MB   107GB  107GB   primary

(parted) quit
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。

sakura3 ~ % sudo fdisk -l

Disk /dev/vda: 107.4 GB, 107374182400 bytes, 209715200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x000864fc

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/vda1   *        2048     1026047      512000   83  Linux
/dev/vda2         1026048   209715199   104344576   83  Linux

Disk /dev/mapper/centos_***-root: 24.2 GB, 24167579648 bytes, 47202304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト


Disk /dev/mapper/centos_***-swap: 2147 MB, 2147483648 bytes, 4194304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト

物理ボリュームのリサイズ

リサイズしたパーティションに合わせて物理ボリュームをリサイズします.

sakura3 ~ % sudo pvdisplay
  --- Physical volume ---
  PV Name               /dev/vda2
  VG Name               centos_***
  PV Size               <24.51 GiB / not usable 2.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              6274
  Free PE               0
  Allocated PE          6274
  PV UUID               ******-****-****-****-****-****-******

sakura3 ~ % sudo pvresize -tv /dev/vda2
  TEST MODE: Metadata will NOT be updated and volumes will not be (de)activated.
    Test mode: Skipping archiving of volume group.
    Resizing volume "/dev/vda2" to 208689152 sectors.
    Resizing physical volume /dev/vda2 from 6274 to 25474 extents.
    Updating physical volume "/dev/vda2"
    Test mode: Skipping backup of volume group.
  Physical volume "/dev/vda2" changed
  1 physical volume(s) resized or updated / 0 physical volume(s) not resized
sakura3 ~ % sudo pvresize -v /dev/vda2
    Archiving volume group "centos_***" metadata (seqno 6).
    Resizing volume "/dev/vda2" to 208689152 sectors.
    Resizing physical volume /dev/vda2 from 6274 to 25474 extents.
    Updating physical volume "/dev/vda2"
    Creating volume group backup "/etc/lvm/backup/centos_***" (seqno 7).
  Physical volume "/dev/vda2" changed
  1 physical volume(s) resized or updated / 0 physical volume(s) not resized
sakura3 ~ % sudo pvdisplay
  --- Physical volume ---
  PV Name               /dev/vda2
  VG Name               centos_***
  PV Size               <99.51 GiB / not usable 2.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              25474
  Free PE               19200
  Allocated PE          6274
  PV UUID               ******-****-****-****-****-****-******

論理ボリュームとファイルシステムのリサイズ

論理ボリュームをリサイズします.同時にファイルシステムをリサイズすることが出来ます.

sakura3 ~ % sudo lvdisplay
  --- Logical volume ---
  LV Path                /dev/centos_***/swap
  LV Name                swap
  VG Name                centos_***
  LV UUID                ******-****-****-****-****-****-******
  LV Write Access        read/write
  LV Creation host, time ********.**.**, 2018-01-12 13:23:40 +0900
  LV Status              available
  # open                 2
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1

  --- Logical volume ---
  LV Path                /dev/centos_***/root
  LV Name                root
  VG Name                centos_***
  LV UUID                ******-****-****-****-****-****-******
  LV Write Access        read/write
  LV Creation host, time ********.**.**, 2018-01-12 13:23:41 +0900
  LV Status              available
  # open                 1
  LV Size                <22.51 GiB
  Current LE             5762
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

sakura3 ~ % sudo lvextend -trl +100%FREE /dev/centos_***/root
  TEST MODE: Metadata will NOT be updated and volumes will not be (de)activated.
  Size of logical volume centos_***/root changed from <22.51 GiB (5762 extents) to <97.51 GiB (24962 extents).
  Logical volume centos_***/root successfully resized.
sakura3 ~ % sudo lvextend -rl +100%FREE /dev/centos_***/root
  Size of logical volume centos_***/root changed from <22.51 GiB (5762 extents) to <97.51 GiB (24962 extents).
  Logical volume centos_***/root successfully resized.
meta-data=/dev/mapper/centos_***-root isize=256    agcount=6, agsize=1147392 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=5900288, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal               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 5900288 to 25561088

結果

sakura3 ~ % df -h
ファイルシス                サイズ  使用  残り 使用% マウント位置
/dev/mapper/centos_***-root    98G   14G   84G   15% /
/dev/vda1                     497M  259M  238M   53% /boot

まとめ

一度も再起動してないです.

簡単すぎて驚きました...

参考

【 lvextend 】コマンド――論理ボリュームのサイズを拡張する:Linux基本コマンドTips(343) - @IT

  • LINEで送る

コメント

コメントを残す

*