VM拡張
先代マシン(Let's note CF-SX2)のころから使っていたVMWare上のCentOS7なんだけど、とにかくディスク容量が足りない!
最初に構築したときにケチって20GBで構築してたのが悪いんだけど(だって、CF-SX2のディスク容量って128GBしかなかったし・・・)、ここ最近、ちょっとベンチマークっぽいものをしようとすると、すぐにディスク容量の限界に達してしまい、ほんとに小規模なスケールでの測定しかできなくて、もにょってたわけですよ。
それに、これからMySQLを突っ込んだり、MongoDBの新バージョンを突っ込んだり、Groongaを入れたり等々考えていて、いちいち残ディスク容量を気にするのが憂鬱になってきた。
ということでディスク容量の拡大をすることに。
環境は
- Windows 8.1
- VMWare 6.0.5
- CentOS 7
今、動作しているCentOS 7をシャットダウンして、VMイメージ(20GB)のバックアップをとっておく。
USBメモリへのコピーなので少々時間がかかるが・・・その間にラーメンデータベースのレビューへのコメント対応をしておくw
VMWare Player上での作業
まず、VMWareの仮想マシン編集画面を開いて、ディスクの拡張を選択。
まあ、思い切って拡張はしたけど、これ、バックアップとるのも大変だよな・・・。
バックアップ用のストレージを買っておかねば。
CentOS7 上での作業
ということでCentOS 7を起動。
ディスクは追加したけど、まだパーティションとか設定してないから、この時点では元のディスク容量のまま。
[root@localhost ~]# df -h ファイルシス サイズ 使用 残り 使用% マウント位置 /dev/mapper/centos-root 18G 14G 3.6G 80% / devtmpfs 2.4G 0 2.4G 0% /dev tmpfs 2.4G 610M 1.8G 26% /dev/shm tmpfs 2.4G 9.0M 2.4G 1% /run tmpfs 2.4G 0 2.4G 0% /sys/fs/cgroup /dev/sda1 497M 119M 379M 24% /boot [root@localhost ~]#
fdiskで参照すると、こうなっている。
[root@localhost ~]# fdisk -l Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x00066561 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 41943039 20458496 8e Linux LVM 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 バイト Disk /dev/mapper/centos-root: 18.8 GB, 18798870528 bytes, 36716544 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト [root@localhost ~]#
/dev/sdaが50GB超になってますな。
で、fdiskで/dev/sdaを編集。
[root@localhost ~]# 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 でヘルプ): p Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x00066561 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 41943039 20458496 8e Linux LVM コマンド (m でヘルプ):
新しい領域を作成する。面倒なので全部デフォルトで。
コマンド (m でヘルプ): n Partition type: p primary (2 primary, 0 extended, 2 free) e extended Select (default p): p パーティション番号 (3,4, default 3): 最初 sector (41943040-104857599, 初期値 41943040): 初期値 41943040 を使います Last sector, +sectors or +size{K,M,G} (41943040-104857599, 初期値 104857599): 初期値 104857599 を使います Partition 3 of type Linux and of size 30 GiB is set コマンド (m でヘルプ): |<< 一応、確認してみる。 >|| コマンド (m でヘルプ): p Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x00066561 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 41943039 20458496 8e Linux LVM /dev/sda3 41943040 104857599 31457280 83 Linux コマンド (m でヘルプ):
30GBの領域を/dev/sda3に割り当てましたよ。
ファイルシステムをLinux VMに変更する。
コマンド (m でヘルプ): t パーティション番号 (1-3, default 3): 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 Changed type of partition 'Linux' to 'Linux LVM' コマンド (m でヘルプ): p Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x00066561 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 41943039 20458496 8e Linux LVM /dev/sda3 41943040 104857599 31457280 8e Linux LVM コマンド (m でヘルプ):
で、変更を反映する。
コマンド (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) ディスクを同期しています。 [root@localhost ~]#
警告でちゃった。再ブートすると反映されるらしい。
ということで再ブートして確認・・・
まだ、dfで見ても認識はされてませんがな。
[root@localhost ~]# df ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置 /dev/mapper/centos-root 18348032 14616364 3731668 80% / devtmpfs 2445076 0 2445076 0% /dev tmpfs 2454364 624168 1830196 26% /dev/shm tmpfs 2454364 9184 2445180 1% /run tmpfs 2454364 0 2454364 0% /sys/fs/cgroup /dev/sda1 508588 121304 387284 24% /boot [root@localhost ~]#
VGにさっき追加した/dev/sda3を追加する。
[root@localhost ~]# vgdisplay -C VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- 19.51g 0 [root@localhost ~]# vgextend centos /dev/sda3 Physical volume "/dev/sda3" successfully created Volume group "centos" successfully extended [root@localhost ~]# vgdisplay -C VG #PV #LV #SN Attr VSize VFree centos 2 2 0 wz--n- 49.50g 30.00g [root@localhost ~]#
[root@localhost ~]# df ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置 /dev/mapper/centos-root 18348032 14615992 3732040 80% / devtmpfs 2445076 0 2445076 0% /dev tmpfs 2454364 624156 1830208 26% /dev/shm tmpfs 2454364 9148 2445216 1% /run tmpfs 2454364 0 2454364 0% /sys/fs/cgroup /dev/sda1 508588 121304 387284 24% /boot [root@localhost ~]# lvextend -l +100%FREE /dev/centos/root Extending logical volume root to 47.50 GiB Logical volume root successfully resized [root@localhost ~]#
CentOS7からはデフォルトファイルシステムがxfsなので、resize2fsだと失敗しちゃうので、xfs_growfsというコマンドを使うらしい。
[root@localhost ~]# xfs_growfs /dev/mapper/centos-root meta-data=/dev/mapper/centos-root isize=256 agcount=4, agsize=1147392 blks = sectsz=512 attr=2, projid32bit=1 = crc=0 data = bsize=4096 blocks=4589568, 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 4589568 to 12452864 [root@localhost ~]# df -h ファイルシス サイズ 使用 残り 使用% マウント位置 /dev/mapper/centos-root 48G 14G 34G 30% / devtmpfs 2.4G 0 2.4G 0% /dev tmpfs 2.4G 610M 1.8G 26% /dev/shm tmpfs 2.4G 9.0M 2.4G 1% /run tmpfs 2.4G 0 2.4G 0% /sys/fs/cgroup /dev/sda1 497M 119M 379M 24% /boot [root@localhost ~]#
/ パーティション以下が34GBに拡張できました。
これで、当分はディスク容量不足に悩むこともないかな。