CentOS 7サーバー(CentOS Linux release 7.3.1611 (Core))
私がサーバーを更新したとき、エラーが発生しました。追加のスペースが必要です。しかし、ディスクスペースを確認したところ、サーバーに20 GBのディスクがあり、4.5 GBのパーティションしか作成されておらず、16 GBのパーティションは未割り当ての空きスペースです。 16GBの空き領域からパーティションを拡張するにはどうすればよいですか?
lsblk:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 4.5G 0 part
├─centos-root 253:0 0 4G 0 lvm /
└─centos-swap 253:1 0 512M 0 lvm [SWAP]
sr0 11:0 1 1024M 0 rom
sda2
がディスクの最後で終了するようにパーティションテーブルを変更しますpvresize
を使用してLVM pvのサイズを変更しますfdisk /dev/sda
を実行します。 p
を発行して現在のパーティションテーブルを印刷し、その出力を安全な場所にコピーします。次に、d
に続けて2
を発行して、2番目のパーティションを削除します。 n
を発行して、新しい2番目のパーティションを作成します。開始が前に印刷したパーティションテーブルの開始と同じであることを確認してください。末尾がディスクの末尾にあることを確認してください(通常はデフォルト)。
t
に続けて2
に続けて8e
を発行して、新しい2番目のパーティションのパーティションタイプを8e(Linux LVM)に切り替えます。
p
を発行して新しいパーティションレイアウトを確認し、新しい2番目のパーティションの開始点が古い2番目のパーティションの位置とまったく同じであることを確認します。
すべてが正しい場合は、w
を発行してパーティションテーブルをディスクに書き込みます。 (ディスクが使用中のため)パーティションテーブルを再読み取りできなかったというpartprobeからのエラーメッセージが表示されます。
この手順は必要なので、パーティションテーブルを再度読み取ります。
システムの再起動後、pvresize /dev/sda2
を呼び出します。これで、物理LVMボリュームが残りのドライブにまたがるようになり、論理ボリュームを作成またはそのスペースに拡張できます。
これは、CentOS 7で再起動せずに実行できます。ディスクが/ dev/vdaであり、標準のRHEL/CentOSパーティショニングであると仮定します。
# fdisk /dev/vda
p
と入力して、初期パーティションテーブルを印刷します。
d
(削除)の後に2
を入力して、既存のパーティション定義を削除します(パーティション1は通常/ bootで、パーティション2は通常ルートパーティションです)。
n
(新規)に続けてp
(プライマリ)に続けて2
を入力し、パーティション番号2を再作成し、enter
を入力して開始ブロックを受け入れ、enter
を再度クリックして、デフォルトでディスクの最後にあるエンドブロックを受け入れます。
t
(タイプ)、2
、8e
の順に入力して、新しいパーティションタイプを「Linux LVM」に変更します。
p
と入力して新しいパーティションテーブルを印刷し、開始ブロックが上記の最初のパーティションテーブルにあったものと一致することを確認します。
w
と入力して、パーティションテーブルをディスクに書き込みます。 Device or resource busy
に関するエラーが表示されますが、無視してかまいません。
パーティションテーブルを変更した後、次のコマンドを実行してカーネルのメモリ内パーティションテーブルを更新します。
# partx -u /dev/vda
PVのサイズを変更して、余分なスペースを認識します
# pvresize /dev/vda2
このコマンドで、centos
はPV、root
はLV、/dev/vda2
は拡張されたパーティションです。 pvs
コマンドとlvs
コマンドを使用して、物理ボリューム名と論理ボリューム名がわからない場合に確認します。このコマンドの-r
オプションは、ファイルシステムのサイズを適切に変更するため、resize2fs
またはxfs_growfs
を個別に呼び出す必要はありません。
# lvextend -r centos/root /dev/vda2
私のような論理ボリュームの拡張に問題がある人は、 この投稿 を読むと役立つかもしれません。要約すると、lvextend
を使用して論理ボリュームを拡張できます:lvextend -l +<PE> <LV_PATH>
残りのPE(<PE>
)vgdisplay
によって、論理ボリュームのパスを取得します(LV_PATH
)_lvdisplay
による。
次に、ディストリビューションに応じて、xfs_growfs <LV_PATH>
(Centos 7)またはresize2fs <LV_PATH>
で最終的にサイズを変更します。
これを確認してください-すべてを1行で、質問なし:
parted —pretend-input-tty /dev/vda resizepart 2 100%;
partx -u /dev/vda; pvresize /dev/vda2;
lvextend -r centos/var /dev/vda2