Linux resize2fs コマンド
resize2fsLinux システムで ext2/ext3/ext4 ファイルシステムのサイズを調整するための実用ツールです。データを失うことなくファイルシステムを拡大または縮小でき、通常はLVM(論理ボリューム管理) やディスクパーティションツールと組み合わせて使用します。
コマンド構文
resize2fs [选项] 设备 [新大小]
パラメータの説明
| パラメータ | 説明 |
|---|---|
| デバイス | 調整するファイルシステムがあるデバイスを指定します (例:/dev/sda1) |
| 新しいサイズ | オプションのパラメータで、ファイルシステムの新しいサイズを指定します (単位は K/M/G を使用できます) |
一般的なオプション
| オプション | 説明 |
|---|---|
-d |
デバッグ情報を表示 |
-f |
操作を強制実行 |
-p |
進捗バーを表示 |
-M |
ファイルシステムを可能な限り最小サイズに縮小する |
-P |
ファイルシステムの最小可能サイズを表示するが、調整は実行しない |
使用シナリオ
シナリオ 1: ファイルシステムの拡大
基盤となるストレージデバイス (パーティション/LVM) を拡大した後、ファイルシステムを調整して新しい領域を使用する必要があります:
例
# 1. まず基盤となるデバイスを拡大します (パーティションまたはLVM)
# 2. 次にファイルシステムを調整します
resize2fs /dev/vg01/lv01
# 2. 次にファイルシステムを調整します
resize2fs /dev/vg01/lv01
シナリオ 2: ファイルシステムの縮小
例
# 1. まずファイルシステムを縮小します (注意: ファイルシステムをアンマウントする必要があります)
umount /mnt/data
e2fsck -f /dev/vg01/lv01
resize2fs /dev/vg01/lv01 10G
# 2. 次に基盤となるデバイスを縮小します
umount /mnt/data
e2fsck -f /dev/vg01/lv01
resize2fs /dev/vg01/lv01 10G
# 2. 次に基盤となるデバイスを縮小します
詳細な例
例 1: ext4 ファイルシステムの拡大
例
# 現在のファイルシステムサイズを確認
df -h /mnt/data
# LVM論理ボリュームを拡大 (スペースが準備済みと仮定)
lvextend -L +5G /dev/vg01/lv01
# ファイルシステムサイズを調整
resize2fs /dev/vg01/lv01
# 新しいサイズを検証
df -h /mnt/data
df -h /mnt/data
# LVM論理ボリュームを拡大 (スペースが準備済みと仮定)
lvextend -L +5G /dev/vg01/lv01
# ファイルシステムサイズを調整
resize2fs /dev/vg01/lv01
# 新しいサイズを検証
df -h /mnt/data
例 2: ext4 ファイルシステムの縮小
例
# ファイルシステムをアンマウント
umount /mnt/data
# ファイルシステムチェックを強制
e2fsck -f /dev/vg01/lv01
# ファイルシステムを15GBに縮小
resize2fs /dev/vg01/lv01 15G
# LVM論理ボリュームを縮小 (注意: ファイルシステムより少し大きくする)
lvreduce -L 15.5G /dev/vg01/lv01
# 再マウント
mount /dev/vg01/lv01 /mnt/data
umount /mnt/data
# ファイルシステムチェックを強制
e2fsck -f /dev/vg01/lv01
# ファイルシステムを15GBに縮小
resize2fs /dev/vg01/lv01 15G
# LVM論理ボリュームを縮小 (注意: ファイルシステムより少し大きくする)
lvreduce -L 15.5G /dev/vg01/lv01
# 再マウント
mount /dev/vg01/lv01 /mnt/data
注意事項
- データのバックアップ:ファイルシステムのサイズを変更する前に、重要なデータを必ずバックアップしてください
- ファイルシステムチェック:縮小操作の前に必ず実行してください
e2fsck -f - 順序の問題:
- 拡大時: 先にデバイスを拡大し、その後ファイルシステムを拡大します
- 縮小時: 先にファイルシステムを縮小し、その後デバイスを縮小します
- オンライン調整:場合によってはファイルシステムをアンマウントしなくてもよいですが、アンマウントしてから操作する方が安全です
- 最小サイズ:使用する
-Pオプションを指定すると、ファイルシステムを縮小できる最小サイズを確認できます
よくある質問と回答
Q1: なぜ resize2fs は非 ext ファイルシステムを調整できないのですか?
A: resize2fsは、ext2/ext3/ext4 ファイルシステム専用に設計されたツールです。XFS、Btrfs などの他のファイルシステムには、それぞれ専用の調整ツールがあります。
Q2: サイズ変更操作でデータは失われますか?
A: 正しく操作すれば通常はデータは失われませんが、ディスク操作には常にリスクが伴うため、先にバックアップを取ることを強くお勧めします。
Q3: ファイルシステムを縮小できる最小サイズを確認するにはどうすればよいですか?
A: 次のコマンドを使用します:resize2fs -P /dev/your_device
フローチャート:resize2fs のワークフロー
例
graph TD
A[開始] --> B{操作タイプ}
B -->|拡大| C[基盤となるストレージデバイスを拡大]
C --> D[resize2fsを実行してファイルシステムを拡大]
B -->|縮小| E[ファイルシステムをアンマウント]
E --> F[e2fsckを実行してチェック]
F --> G[resize2fsを実行してファイルシステムを縮小]
G --> H[基盤となるストレージデバイスを縮小]
D & H --> I[新しいサイズを検証]
I --> J[終了]
A[開始] --> B{操作タイプ}
B -->|拡大| C[基盤となるストレージデバイスを拡大]
C --> D[resize2fsを実行してファイルシステムを拡大]
B -->|縮小| E[ファイルシステムをアンマウント]
E --> F[e2fsckを実行してチェック]
F --> G[resize2fsを実行してファイルシステムを縮小]
G --> H[基盤となるストレージデバイスを縮小]
D & H --> I[新しいサイズを検証]
I --> J[終了]
まとめ
resize2fsext ファイルシステムのサイズを管理する強力なツールです。適切に使用すれば、ストレージスペースを柔軟に調整できます。操作順序と注意事項を覚えておけば、ファイルシステムのサイズ調整タスクを安全かつ効率的に完了できます。
その他の拡張
Linux コマンド大全