ディスク容量不足により追加でハードディスクを増設するリアルなサーバーと違い、仮想環境なのでOSインストール済の元々の仮想ハードディスクを 8GB から 16GB へ大きくする記録。
VirtualBox 6.1.18
ホストOS : Windows 10
ゲストOS : CentOS Linux release 7.7.1908 (Core)[CentOS-7-x86_64-Minimal-1908.iso]
理解しておきたいキーワード
●LVM(Logical Volume Manager) : Linuxで当初HDDなどに直接ファイルシステムを割り当てて管理していたものが、物理ボリュームをまとめて仮想化されたボリュームグループとし それを論理ボリュームに分けて管理する仕組み。CentOSでは、デフォルト設定のインストールで論理ボリュームを使用。
●PV物理ボリューム(PisicalVolume) : 物理ディスク
●PE物理エクステント(Physical Extent) : PVを分割したLVMが管理する最小単位
●VGボリュームグループ(VolumeGroup) : PVを分割したPEの集まり
●LV論理ボリューム(LogialVolume) : ファイルシステムをマウントするデバイス(旧 /dev/sda1 相当)
ディスク拡張の流れ...▼
												 ストレージを SATA 8GB としてデフォルト構成でインストールした状態の各情報。
仮想マシンを停止。
●コマンド「VBoxManage」へ環境変数「path」を追加。
●仮想マシンの対象仮想ハードディスクを確認。
●vdi形式の対象仮想ハードディスクを 16GB x 1024 = 16384 へ変換(vdi形式でない場合事前に変換が必要)。
pvresize <最終パーティションのPV名>
物理ボリューム「/dev/sda2」を最大サイズに変更
lvextend -l <割り当てたいPE数> <拡張したいLV>
ボリュームグループ「mapper」の空き容量全て(+100%FREE)を論理ボリューム「centos-root」に追加する
xfs_growfs /dev/<拡張したいLV>
															
											
										[wanko@host ~]$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 484M 0 484M 0% /dev tmpfs 496M 8.0K 496M 1% /dev/shm tmpfs 496M 6.7M 489M 2% /run tmpfs 496M 0 496M 0% /sys/fs/cgroup /dev/mapper/centos-root 6.2G 4.7G 1.6G 76% / /dev/sda1 1014M 136M 879M 14% /boot tmpfs 100M 0 100M 0% /run/user/1000物理ボリューム情報
[wanko@host ~]$ sudo pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <7.00g 0物理ボリューム詳細
[wanko@host ~]$ sudo pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name centos PV Size <7.00 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 1791 Free PE 0 Allocated PE 1791 PV UUID dt1IcN-e3B6-wACA-Q8df-yDuu-9tfN-2kCumiボリュームグループ情報
[wanko@host ~]$ sudo vgs VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- <7.00g 0ボリュームグループ詳細
[wanko@host ~]$ sudo vgdisplay --- Volume group --- VG Name centos System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 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 <7.00 GiB PE Size 4.00 MiB Total PE 1791 Alloc PE / Size 1791 / <7.00 GiB Free PE / Size 0 / 0 VG UUID m3HcVl-8n22-kEfa-AGHL-zrL0-lnkV-Y3PVND論理ボリューム情報
[wanko@host ~]$ sudo lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <6.20g swap centos -wi-ao---- 820.00m論理ボリューム詳細
[wanko@host ~]$ sudo lvdisplay --- Logical volume --- LV Path /dev/centos/swap LV Name swap VG Name centos LV UUID dFyiTa-lXFO-k7Vn-x8FX-GoEb-XMdu-0ljEBc LV Write Access read/write LV Creation host, time syllabus.localdomain, 2020-03-07 08:31:36 +0900 LV Status available # open 2 LV Size 820.00 MiB Current LE 205 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 PRmv25-tE1c-RcuZ-7vCY-x0i7-CjcI-JRoPd6 LV Write Access read/write LV Creation host, time syllabus.localdomain, 2020-03-07 08:31:36 +0900 LV Status available # open 1 LV Size <6.20 GiB Current LE 1586 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0利用できるHDDやUSBメモリなどのブロックデバイス一覧表示。
[wanko@host ~]$ lsblk -p NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT /dev/sda 8:0 0 8G 0 disk ┣/dev/sda1 8:1 0 1G 0 part /boot ┗/dev/sda2 8:2 0 7G 0 part ┣/dev/mapper/centos-root 253:0 0 6.2G 0 lvm / ┗/dev/mapper/centos-swap 253:1 0 820M 0 lvm [SWAP] /dev/sr0 11:0 1 1024M 0 romcentos7のファイルシステムを確認。
[wanko@host ~]$ cat /etc/fstab # # /etc/fstab # Created by anaconda on Sat Mar 7 08:31:37 2020 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/centos-root / xfs defaults 0 0 UUID=451b9a7b-1c3b-4bd6-9b0e-dc67a5999c62 /boot xfs defaults 0 0 /dev/mapper/centos-swap swap swap defaults 0 0以下、変化のあった情報のみ掲載。
仮想マシンを停止。
[wanko@host ~]$ sudo shutdown -h nowWindows の DOSプロンプトを起動。
●コマンド「VBoxManage」へ環境変数「path」を追加。
>set path=%path%;"C:\Program Files\Oracle\VirtualBox"●対象仮想マシンの名称を確認。
>VBoxManage list vms
"SERVER" {b83bbb48-****-4f89-89eb-7462e694e84e}
→ SERVER
●仮想マシンの対象仮想ハードディスクを確認。
>VBoxManage showvminfo "SERVER" | find "SATA" Storage Controller Name (1): SATA SATA (0, 0): C:\Users\taro\VirtualBox VMs\SERVER\SERVER-disk001.vdi (UUID: ff82d003-****-43fc-a94d-475a91bd9d90)→ C:\Users\taro\VirtualBox VMs\SERVER\SERVER-disk001.vdi
●vdi形式の対象仮想ハードディスクを 16GB x 1024 = 16384 へ変換(vdi形式でない場合事前に変換が必要)。
>VBoxManage modifyhd --resize 16384 "C:\Users\taro\VirtualBox VMs\SERVER\SERVER-disk001.vdi" 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%●対象仮想マシンを起動。
>VBoxManage startvm "SERVER" --type headlessここから再び仮想マシンにログイン。
[wanko@host ~]$ lsblk -p NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT /dev/sda 8:0 0 16G 0 disk ★8→16 ┣/dev/sda1 8:1 0 1G 0 part /boot ┗/dev/sda2 8:2 0 7G 0 part ┣/dev/mapper/centos-root 253:0 0 6.2G 0 lvm / ┗/dev/mapper/centos-swap 253:1 0 820M 0 lvm [SWAP] /dev/sr0 11:0 1 1024M 0 rom
[wanko@host ~]$ sudo fdisk -l Disk /dev/sda: 17.2 GB, 17179869184 bytes, 33554432 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x000bb1c4 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 16777215 7339008 8e Linux LVM ★LVM管理 Disk /dev/mapper/centos-root: 6652 MB, 6652166144 bytes, 12992512 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: 859 MB, 859832320 bytes, 1679360 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
[wanko@host ~]$ sudo fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
コマンド (m でヘルプ): d ←★削除
パーティション番号 (1,2, default 2): 2 ←★/dev/sda2
Partition 2 is deleted
コマンド (m でヘルプ): n ←★新規作成
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): p ←★基本領域
パーティション番号 (2-4, default 2): 2 ←★/dev/sda2
最初 sector (2099200-33554431, 初期値 2099200): ←★エンターで先頭から
初期値 2099200 を使います
Last sector, +sectors or +size{K,M,G} (2099200-33554431, 初期値 33554431): ←★エンターで最後まで
初期値 33554431 を使います
Partition 2 of type Linux and of size 15 GiB is set
コマンド (m でヘルプ): t ←★種別設定
パーティション番号 (1,2, default 2): 2 ←★/dev/sda2
Hex code (type L to list all codes): L ←★種別一覧
 0  空              24  NEC DOS         81  Minix / 古い Li bf  Solaris
 1  FAT12           27  Hidden NTFS Win 82  Linux スワップ  c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  OS/2 隠し C: ド c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux 拡張領域  c7  Syrinx
 5  拡張領域        41  PPC PReP Boot   86  NTFS ボリューム da  非 FS データ
 6  FAT16           42  SFS             87  NTFS ボリューム db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux プレーン  de  Dell ユーティリ
 8  AIX             4e  QNX4.x 2nd part 8e  Linux LVM       df  BootIt
 9  AIX ブート可能  4f  QNX4.x 3rd part 93  Amoeba          e1  DOS access
 a  OS/2 ブートマネ 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad ハ eb  BeOS fs
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT
 f  W95 拡張領域 (L 54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC
11  隠し FAT12      56  Golden Bow      a8  Darwin UFS      f1  SpeedStor
12  Compaq 診断     5c  Priam Edisk     a9  NetBSD          f4  SpeedStor
14  隠し FAT16 <32M 61  SpeedStor       ab  Darwin ブート   f2  DOS セカンダリ
16  隠し FAT16      63  GNU HURD または af  HFS / HFS+      fb  VMware VMFS
17  隠し HPFS/NTFS  64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE
18  AST SmartSleep  65  Novell Netware  b8  BSDI スワップ   fd  Linux raid 自動
1b  隠し W95 FAT32  70  DiskSecure Mult bb  隠し Boot Wizar fe  LANstep
1c  隠し W95 FAT32  75  PC/IX           be  Solaris ブート  ff  BBT
1e  隠し W95 FAT16  80  古い Minix
Hex code (type L to list all codes): 8e ←★Linux LVM
Changed type of partition 'Linux' to 'Linux LVM'
コマンド (m でヘルプ): p ←★変更後情報
Disk /dev/sda: 17.2 GB, 17179869184 bytes, 33554432 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x000bb1c4
デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    33554431    15727616   8e  Linux LVM	★
コマンド (m でヘルプ): w ←★確定
パーティションテーブルは変更されました!
ioctl() を呼び出してパーティションテーブルを再読込みします。
WARNING: Re-reading the partition table failed with error 16: デバイスもしくはリソースがビジー状態です.
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)
ディスクを同期しています。
対象仮想マシンを再起動。
[wanko@host ~]$ sudo reboot再び仮想マシンにログイン。
[wanko@host ~]$ lsblk -p NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT /dev/sda 8:0 0 16G 0 disk ┣/dev/sda1 8:1 0 1G 0 part /boot ┗/dev/sda2 8:2 0 15G 0 part★7→15 ┣/dev/mapper/centos-root 253:0 0 6.2G 0 lvm / ┗/dev/mapper/centos-swap 253:1 0 820M 0 lvm [SWAP] /dev/sr0 11:0 1 1024M 0 rom●PV物理ディスク(PisicalVolume)拡張 pvresize コマンド
pvresize <最終パーティションのPV名>
物理ボリューム「/dev/sda2」を最大サイズに変更
[wanko@host ~]$ sudo pvresize /dev/sda2 Physical volume "/dev/sda2" changed 1 physical volume(s) resized or updated / 0 physical volume(s) not resized
[wanko@host ~]$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 484M 0 484M 0% /dev tmpfs 496M 8.0K 496M 1% /dev/shm tmpfs 496M 6.7M 489M 2% /run tmpfs 496M 0 496M 0% /sys/fs/cgroup /dev/mapper/centos-root 6.2G 4.7G 1.6G 76% / /dev/sda1 1014M 136M 879M 14% /boot tmpfs 100M 0 100M 0% /run/user/1000
[wanko@host ~]$ sudo pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <15.00g 8.00g ★7→15
[wanko@host ~]$ sudo pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name centos PV Size <15.00 GiB / not usable 2.00 MiB ★7→15 Allocatable yes ★ PE Size 4.00 MiB Total PE 3839 ★ Free PE 2048 ★ Allocated PE 1791 PV UUID dt1IcN-e3B6-wACA-Q8df-yDuu-9tfN-2kCumi
[wanko@host ~]$ sudo vgs VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- <15.00g 8.00g ★7→15
[wanko@host ~]$ sudo vgdisplay --- Volume group --- VG Name centos System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 4 ★ 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 <15.00 GiB ★ PE Size 4.00 MiB Total PE 3839 ★ Alloc PE / Size 1791 / <7.00 GiB Free PE / Size 2048 / 8.00 GiB ★ VG UUID m3HcVl-8n22-kEfa-AGHL-zrL0-lnkV-Y3PVND●LV論理ボリューム(LogialVolume)拡張 lvextend コマンド
lvextend -l <割り当てたいPE数> <拡張したいLV>
ボリュームグループ「mapper」の空き容量全て(+100%FREE)を論理ボリューム「centos-root」に追加する
[wanko@host ~]$ sudo lvextend -l +100%FREE /dev/mapper/centos-root Size of logical volume centos/root changed from <6.20 GiB (1586 extents) to <14.20 GiB (3634 extents). Logical volume centos/root successfully resized.
[wanko@host ~]$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 484M 0 484M 0% /dev tmpfs 496M 8.0K 496M 1% /dev/shm tmpfs 496M 6.8M 489M 2% /run tmpfs 496M 0 496M 0% /sys/fs/cgroup /dev/mapper/centos-root 6.2G 4.7G 1.6G 76% / /dev/sda1 1014M 136M 879M 14% /boot tmpfs 100M 0 100M 0% /run/user/1000 tmpfs 100M 0 100M 0% /run/user/0
[wanko@host ~]$ sudo pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <15.00g 0 ★8→0 [wanko@host ~]$ sudo pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name centos PV Size <15.00 GiB / not usable 2.00 MiB Allocatable yes (but full) ★ PE Size 4.00 MiB Total PE 3839 Free PE 0 ★ Allocated PE 3839 ★ PV UUID dt1IcN-e3B6-wACA-Q8df-yDuu-9tfN-2kCumi
[wanko@host ~]$ sudo vgs VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- <15.00g 0 ★8→0
[wanko@host ~]$ sudo vgdisplay --- Volume group --- VG Name centos System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 5 ★4→5 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 <15.00 GiB PE Size 4.00 MiB Total PE 3839 Alloc PE / Size 3839 / <15.00 GiB ★ Free PE / Size 0 / 0 ★ VG UUID m3HcVl-8n22-kEfa-AGHL-zrL0-lnkV-Y3PVND
[wanko@host ~]$ sudo lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <14.20g ★ swap centos -wi-ao---- 820.00m
[wanko@host ~]$ sudo lvdisplay --- Logical volume --- LV Path /dev/centos/swap LV Name swap VG Name centos LV UUID dFyiTa-lXFO-k7Vn-x8FX-GoEb-XMdu-0ljEBc LV Write Access read/write LV Creation host, time syllabus.localdomain, 2020-03-07 08:31:36 +0900 LV Status available # open 2 LV Size 820.00 MiB Current LE 205 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 PRmv25-tE1c-RcuZ-7vCY-x0i7-CjcI-JRoPd6 LV Write Access read/write LV Creation host, time syllabus.localdomain, 2020-03-07 08:31:36 +0900 LV Status available # open 1 LV Size <14.20 GiB ★ Current LE 3634 ★ Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0
[wanko@host ~]$ lsblk -p NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT /dev/sda 8:0 0 16G 0 disk ┣/dev/sda1 8:1 0 1G 0 part /boot ┗/dev/sda2 8:2 0 15G 0 part ┣/dev/mapper/centos-root 253:0 0 14.2G 0 lvm / ★6.2>14.2 ┗/dev/mapper/centos-swap 253:1 0 820M 0 lvm [SWAP] /dev/sr0 11:0 1 1024M 0 rom●論理ボリューム上のファイルシステムをリサイズ
xfs_growfs /dev/<拡張したいLV>
[wanko@host ~]$ sudo xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=406016 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=1624064, 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=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 1624064 to 3721216
[wanko@host ~]$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 484M 0 484M 0% /dev tmpfs 496M 8.0K 496M 1% /dev/shm tmpfs 496M 6.8M 489M 2% /run tmpfs 496M 0 496M 0% /sys/fs/cgroup /dev/mapper/centos-root 15G 4.5G 9.7G 32% / ★6.2>15 /dev/sda1 1014M 136M 879M 14% /boot tmpfs 100M 0 100M 0% /run/user/1000 tmpfs 100M 0 100M 0% /run/user/0無事完了。