環境 名前 | 財産 |
---|
CPU | 5650 円 | メモリ | 4G | ディスク | 20G+4TB |
|
|
| |
| 

この時点で、サーバーにはすでに次のものがあると想定します。
- Parted がインストールされています (yum install parted)
- パーティション容量に達したため、会社では容量を増やすためにサーバーに 4T ハードドライブを追加しました。
- /boot パーティションを除き、残りは LVM モードの拡張論理パーティションです。
ソフトウェアのインストールと情報の表示
まず、ソフトウェアがインストールされているかどうかを確認します。
[root@Candy ~]# rpm -qa | grep lvm
lvm2-libs-2.02.118-2.el6.x86_64
lvm2-2.02.118-2.el6.x86_64
[root@キャンディ ~]# lv
lvchange lvextend lvmdiskscan lvmsar lvresize
lvconvert lvm lvmdump lvreduce lvs
lvcreate lvmchange lvmetad lvremove lvscan
lvdisplay lvmconf lvmsadc lvrename
[root@Candy ~]# rpm -qa | grep parted
パートド-2.1-29.el6.x86_64
ソフトウェアの準備ができたら、VM ハードウェアを確認します。
[ルート@キャンディ ~]# df -h
ファイルシステムサイズ 使用済み 使用可能使用率 マウント先
/dev/mapper/vg_candy-ルート
7.3G 231M 6.7G 4% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
/dev/sda1 477M 30M 422M 7% /ブート
/dev/mapper/vg_candy-ホーム
3.9G 8.0M 3.7G 1% /家庭
/dev/mapper/vg_candy-usr
3.9G 382M 3.3G 11% /usr
/dev/mapper/vg_candy-var
3.9G 63M 3.6G 2% /可変
[root@Candy ~]# fdisk -l
ディスク /dev/sda: 21.5 GB、21474836480 バイト
255 ヘッド、63 セクター/トラック、2610 シリンダー
単位 = 16065 シリンダー * 512 = 8225280 バイト
セクターサイズ(論理/物理):512バイト/512バイト
I/O サイズ (最小/最適): 512 バイト / 512 バイト
ディスク識別子: 0x0006e71c
デバイス ブート 開始 終了 ブロック ID システム
/dev/sda1 * 1 64 512000 83 Linux
パーティション 1 はシリンダ境界で終了しません。
/dev/sda2 64 2611 20458496 8e Linux LVM
ディスク /dev/sdb: 4398.0 GB、4398046511104 バイト
255 ヘッド、63 セクター/トラック、534698 シリンダー
単位 = 16065 シリンダー * 512 = 8225280 バイト
セクターサイズ(論理/物理):512バイト/512バイト
I/O サイズ (最小/最適): 512 バイト / 512 バイト
ディスク識別子: 0x00000000
ディスク /dev/mapper/vg_candy-root: 8061 MB、8061452288 バイト
255 ヘッド、63 セクター/トラック、980 シリンダー
単位 = 16065 シリンダー * 512 = 8225280 バイト
セクターサイズ(論理/物理):512バイト/512バイト
I/O サイズ (最小/最適): 512 バイト / 512 バイト
ディスク識別子: 0x00000000
ディスク /dev/mapper/vg_candy-usr: 4294 MB、4294967296 バイト
255 ヘッド、63 セクター/トラック、522 シリンダー
単位 = 16065 シリンダー * 512 = 8225280 バイト
セクターサイズ(論理/物理):512バイト/512バイト
I/O サイズ (最小/最適): 512 バイト / 512 バイト
ディスク識別子: 0x00000000
ディスク /dev/mapper/vg_candy-var: 4294 MB、4294967296 バイト
255 ヘッド、63 セクター/トラック、522 シリンダー
単位 = 16065 シリンダー * 512 = 8225280 バイト
セクターサイズ(論理/物理):512バイト/512バイト
I/O サイズ (最小/最適): 512 バイト / 512 バイト
ディスク識別子: 0x00000000
ディスク /dev/mapper/vg_candy-home: 4294 MB、4294967296 バイト
255 ヘッド、63 セクター/トラック、522 シリンダー
単位 = 16065 シリンダー * 512 = 8225280 バイト
セクターサイズ(論理/物理):512バイト/512バイト
I/O サイズ (最小/最適): 512 バイト / 512 バイト
ディスク識別子: 0x00000000
[root@Candy ~]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sdb
この時点で、CentOS は sdb というディスクが存在することをすでに認識していますが、マウントもパーティション分割もされていないことがわかります。
拡張前にPartedを使用してパーティション分割する
ここで、/boot 以外のすべてのパーティションがいっぱいであると仮定します。まずパーティションを作成して、4TB のハードディスク (/dev/sdb) を使用する必要があります。
[root@Candy ~]# parted /dev/sdb
GNU パート 2.1
/dev/sdbの使用
GNU Parted へようこそ! コマンドの一覧を表示するには、「help」と入力してください。
(別れた) mklabel
新しいディスクラベルタイプですか?グプト
(別れた) mkpart
パーティション名? []?
ファイル システムの種類? [ext2]? ext4
出発点? 0T
終点? 4T
(別れた)p
モデル: VMware、VMware Virtual S (scsi)
ディスク /dev/sdb: 4398GB
セクターサイズ(論理/物理):512B/512B
パーティションテーブル: gpt
番号 開始 終了 サイズ ファイルシステム 名称 マーク 1 1049kB 4398GB 4398GB
(parted) 1 lvm をオンに設定
(別れた)p
モデル: VMware、VMware Virtual S (scsi)
ディスク /dev/sdb: 4398GB
セクターサイズ(論理/物理):512B/512B
パーティションテーブル: gpt
番号 開始 終了 サイズ ファイルシステム 名前 フラグ 1 1049kB 4398GB 4398GB lvm
(別れた)q
[root@Candy ~]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sdb /dev/sdb1
それでは操作について説明しましょう。
- mklabel はディスクを gpt パーティションに変換します。MBR パーティションは TB レベルのハードディスクをサポートできないためです (詳細についてはご自身でご確認ください。parted は当然 TB レベル以下の操作もサポートしています)。
- mkpart は変換された gpt ディスクをパーティション分割し、ファイル システムの種類、開始点、終了点を必要とします。
- 作成したパーティションを印刷するには、「p」と入力します。
- set 1 lvm on は、番号1とタグ付きのパーティションをLVMに設定し、vmボリュームグループに追加できるようにします。
次に、LVM グループの名前を確認します。
[root@キャンディ ~]# vgs
VG #PV #LV #SN 属性 Vサイズ Vフリー
vg_candy 1 4 0 wz--n- 19.51g 0
[root@Candy ~]# vgdisplay
--- ボリュームグループ ---
VG名 vg_candy
システムID
lvm2をフォーマットする
メタデータ領域 1
メタデータシーケンス番号 5
VGアクセス読み取り/書き込み
VGステータスサイズ変更可能
最大レベル0
カー LV 4
オープンLV4
最大PV 0
現在のPV 1
第1幕
VG サイズ 19.51 GiB
PE サイズ 4.00 MiB
総PE 4994
割り当て PE / サイズ 4994 / 19.51 GiB
フリーPE / サイズ 0 / 0
VG UUID Gcm5Ml-fc88-Xk5q-xuPC-Kj7Y-alfK-i770Gc
[root@Candy ~]# lvscan
アクティブ '/dev/vg_candy/usr' [4.00 GiB] 継承
アクティブ '/dev/vg_candy/var' [4.00 GiB] 継承
アクティブ '/dev/vg_candy/home' [4.00 GiB] 継承
アクティブ '/dev/vg_candy/root' [7.51 GiB] 継承
[root@キャンディ ~]#
lvm ボリューム グループが「vg_candy」と呼ばれていることがわかっているので、vgextend を使用して lvm「vg_candy」ボリューム グループにメンバーを追加します。
[root@Candy ~]# vgextend vag_candy /dev/sdb1
物理ボリューム「/dev/sdb1」が正常に作成されました
ボリューム グループ「vg_candy」が正常に拡張されました
次に、vgs コマンドを使用して pvs の数を確認します。
[root@キャンディ ~]# vgs
VG #PV #LV #SN 属性 Vサイズ Vフリー
vg_candy 2 4 0 wz--n- 4.02t 4.00t
追加前の vgs を比較すると、PV 数が 1 から 2 に変わったことがわかりますか?
ここで、vgdisplay を使用して現在のパーティション容量を確認してみましょう。
[root@Candy ~]# vgdisplay
--- ボリュームグループ ---
VG名 vg_candy
システムID
lvm2をフォーマットする
メタデータ領域 2
メタデータシーケンス番号 6
VGアクセス読み取り/書き込み
VGステータスサイズ変更可能
最大レベル0
カー LV 4
オープンLV4
最大PV 0
カー PV 2
第2幕
VG サイズ 4.02 TiB
PE サイズ 4.00 MiB
合計PE 1053569
割り当て PE / サイズ 4994 / 19.51 GiB
フリー PE / サイズ 1048575 / 4.00 TiB
VG UUID Gcm5Ml-fc88-Xk5q-xuPC-Kj7Y-alfK-i770Gc
追加されていない vgdiplay コマンドを再度比較すると、FreePE の値が 0 / 0 から 1048575 / 4.00 TiB に変化していることがわかります。これは、Candy が 4TB lvm パーティションを vg_candy 論理ボリューム グループに正常に追加したことを意味します。
すべての論理パーティションを拡張する前に、df -h を使用して、存在するパーティションを確認できます。
[ルート@キャンディ ~]# df -h
ファイルシステムサイズ 使用済み 使用可能使用率 マウント先
/dev/mapper/vg_candy-root 7.3G 231M 6.7G 4% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
/dev/sda1 477M 30M 422M 7% /ブート
/dev/mapper/vg_candy-home 3.9G 8.0M 3.7G 1% /ホーム
/dev/mapper/vg_candy-usr 3.9G 382M 3.3G 11% /usr
/dev/mapper/vg_candy-var 3.9G 63M 3.6G 2% /var
面倒な作業は終わりましたので、あとはパーティションの容量を拡張するだけです。
ディスク容量を拡張する
仮定: これらのパーティションに 500G の容量を追加する必要があります: /
、 /home
、 /usr
、 /var
[root@Candy ~]# lvextend -L +500G /dev/mapper/vg_candy-root
論理ボリューム vg_candy/root のサイズが 7.51 GiB (1922 エクステント) から 507.51 GiB (129922 エクステント) に変更されました。
論理ボリューム ルートのサイズが正常に変更されました
[root@Candy ~]# lvextend -L +500G /dev/mapper/vg_candy-home
論理ボリューム vg_candy/home のサイズが 4.00 GiB (1024 エクステント) から 504.00 GiB (129024 エクステント) に変更されました。
論理ボリュームホームのサイズが正常に変更されました
[root@Candy ~]# lvextend -L +500G /dev/mapper/vg_candy-usr
論理ボリューム vg_candy/usr のサイズが 4.00 GiB (1024 エクステント) から 504.00 GiB (129024 エクステント) に変更されました。
論理ボリュームusrのサイズが正常に変更されました
[root@Candy ~]# lvextend -L +500G /dev/mapper/vg_candy-var
論理ボリューム vg_candy/var のサイズが 4.00 GiB (1024 エクステント) から 504.00 GiB (129024 エクステント) に変更されました。
論理ボリューム var のサイズが正常に変更されました
この手順は元に戻せないので注意してください。 パーティション名を間違えても大丈夫です! 他のパーティションに追加する場合は、容量を縮小するためにプロセスを N 回繰り返す必要があり、非常に面倒です。 上記の FileSystem を注意深く確認することをお勧めします。覚えておいてください...
拡張は成功しました! 上記のコマンドをもう一度使用して、LVM 情報を表示してみましょう。
[root@キャンディ ~]# vgs
VG #PV #LV #SN 属性 Vサイズ Vフリー
vg_candy 2 4 0 wz--n- 4.02t 2.05t
[root@Candy ~]# lvscan
アクティブ '/dev/vg_candy/usr' [504.00 GiB] 継承
アクティブ '/dev/vg_candy/var' [504.00 GiB] 継承
アクティブ '/dev/vg_candy/home' [504.00 GiB] 継承
アクティブ '/dev/vg_candy/root' [507.51 GiB] 継承
[root@Candy ~]# vgdisplay
--- ボリュームグループ ---
VG名 vg_candy
システムID
lvm2をフォーマットする
メタデータ領域 2
メタデータシーケンス番号 10
VGアクセス読み取り/書き込み
VGステータスサイズ変更可能
最大レベル0
カー LV 4
オープンLV4
最大PV 0
カー PV 2
第2幕
VG サイズ 4.02 TiB
PE サイズ 4.00 MiB
合計PE 1053569
割り当て PE / サイズ 516994 / 1.97 TiB
フリー PE / サイズ 536575 / 2.05 TiB
VG UUID Gcm5Ml-fc88-Xk5q-xuPC-Kj7Y-alfK-i770Gc
[ルート@キャンディ ~]# df -h
ファイルシステムサイズ 使用済み 使用可能使用率 マウント先
/dev/mapper/vg_candy-root 7.3G 231M 6.7G 4% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
/dev/sda1 477M 30M 422M 7% /ブート
/dev/mapper/vg_candy-home 3.9G 8.0M 3.7G 1% /ホーム
/dev/mapper/vg_candy-usr 3.9G 382M 3.3G 11% /usr
/dev/mapper/vg_candy-var 3.9G 63M 3.6G 2% /var
これを見ると驚かれるかもしれません! df -h はなぜ変更されないのですか?
ディスク情報を更新して書き込み
df -h も有効になるように、resize2fs を使用してパーティションのサイズを変更する必要があります。
resize2fs に必要な時間は、提供する容量に比例します。つまり、提供する容量が大きければ大きいほど、resize2fs にかかる時間も長くなります。
[root@Candy ~]# resize2fs /dev//mapper/vg_candy-root
resize2fs 1.41.12 (2010 年 5 月 17 日)
/dev//mapper/vg_candy-root のファイルシステムは / にマウントされています。オンラインでのサイズ変更が必要です。古い desc_blocks = 1、新しい desc_blocks = 32
/dev//mapper/vg_candy-root を 133040128 (4k) ブロックにオンラインでサイズ変更します。
/dev//mapper/vg_candy-root 上のファイルシステムの長さは現在 133040128 ブロックです。
[root@Candy ~]# resize2fs /dev//mapper/vg_candy-usr
resize2fs 1.41.12 (2010 年 5 月 17 日)
/dev//mapper/vg_candy-usr のファイルシステムは /usr にマウントされています。オンラインでのサイズ変更が必要です。古い desc_blocks = 1、新しい desc_blocks = 32
/dev//mapper/vg_candy-usr を 132120576 (4k) ブロックにオンラインでサイズ変更します。
/dev//mapper/vg_candy-usr 上のファイルシステムの長さは現在 132120576 ブロックです。
[root@Candy ~]# resize2fs /dev//mapper/vg_candy-var
resize2fs 1.41.12 (2010 年 5 月 17 日)
/dev//mapper/vg_candy-var のファイルシステムは /var にマウントされています。オンラインでのサイズ変更が必要です。古い desc_blocks = 1、新しい desc_blocks = 32
/dev//mapper/vg_candy-var を 132120576 (4k) ブロックにオンラインでサイズ変更します。
/dev//mapper/vg_candy-var 上のファイルシステムの長さは現在 132120576 ブロックです。
[root@Candy ~]# resize2fs /dev//mapper/vg_candy-home
resize2fs 1.41.12 (2010 年 5 月 17 日)
/dev//mapper/vg_candy-home のファイルシステムは /home にマウントされています。オンラインでのサイズ変更が必要です。古い desc_blocks = 1、新しい desc_blocks = 32
/dev//mapper/vg_candy-home を 132120576 (4k) ブロックにオンラインでサイズ変更します。
/dev//mapper/vg_candy-home 上のファイルシステムの長さは現在 132120576 ブロックです。
[ルート@キャンディ ~]# df -h
ファイルシステムサイズ 使用済み 使用可能使用率 マウント先
/dev/mapper/vg_candy-root 500G 245M 474G 1% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
/dev/sda1 477M 30M 422M 7% /ブート
/dev/mapper/vg_candy-home 496G 16M 471G 1% /ホーム
/dev/mapper/vg_candy-usr 496G 390M 471G 1% /usr
/dev/mapper/vg_candy-var 496G 71M 471G 1% /var
結論
ちなみに、再起動後にシステムが自動的にマウントされる写真を紹介します!


Linux システムは非常にスマートです。実際、再起動してもしなくても使用できます。ここでは、再起動後の効果をお見せしたいと思います。
以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。
以下もご興味があるかもしれません:- Linux の Centos7 における LVM ディスク拡張の問題
- Linux ディスク管理 LVM の使用
- Linux ディスクデバイスと LVM 管理コマンドの詳細な例
- LinuxでLVMディスクを拡張する詳細な手順