BLOGTIMES
2022/05/06

growpart を使って CentOS のパーティションを拡張する

  centos7 
このエントリーをはてなブックマークに追加

このサーバがお世話になっているさくらの VPS のパーティションを拡張してみました。
しばらく前にディスク増量キャンペーン*1があって、ディスク自体は容量が増えていたのですがパーティションとファイルシステムを拡張していなかったので有効な領域として利用できていなかったんですよね。

今回は growpart で

パーティションの拡張といえば GNU parted*2*3を使う方法や、fdisk*4 を使う方法などがありますが、今回は growpart を使ってみました。
あえて使ったことがないツールを使ったのは、fdiskサイズを手動で指定する必要があるのでミスが怖いのであまりやりたくないというのと、parted にはオンラインのディスクは変更できないと怒られてしまったためです。

インストールと実際の拡張作業

CentOS/RHEL 系だと epel が設定されていれば以下のコマンドで導入できます。

yum -y install cloud-utils-growpart

後は以下のような感じで簡単に拡張できました。
(このマシンは btrfs なので、あまり使わないコマンドを使っています。通常は resize2fs で終わりです。)

# df -h / Filesystem Size Used Avail Use% Mounted on /dev/vda3 96G 33G 60G 36% / # growpart /dev/vda 3 CHANGED: partition=3 start=9185280 old: size=200529920 end=209715200 new: size=410245087 end=419430367 # btrfs filesystem resize max / Resize '/' of 'max' # df -h / Filesystem Size Used Avail Use% Mounted on /dev/vda3 196G 33G 160G 17% /

中身は大きなシェルスクリプト?

growpart の中身の実装が気になってしらべてみたところ、なんと大きなシェルスクリプトでした。
現在は Ubuntu の開発元である Canonical Ltd. がメンテナンスしているようです。

内部的には fdisk を対話型でなくても操作可能にした sfdisk*5 が使われていて、サイズの計算をスクリプトがやって、パーティションテーブルの操作は sfdisk が行うという仕組みみたいですね。


トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/13218
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form

コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。

OpenID を使ってログインすることができます。

Identity URL: Yahoo! JAPAN IDでログイン