Linuxを使用する過程で、システムのニーズが変化し、ディスクのパーティションサイズを調整する必要が生じることがあります。例えば、特定のパーティションが満杯になり始めた場合や、新しいアプリケーションのインストールスペースを確保する必要がある場合です。Linuxには、これらの調整を行うためのツールが用意されていますが、作業を開始する前に、パーティションの概念を理解し、適切な準備をすることが重要です。この記事では、Linuxでのパーティションサイズ変更の基本的な手順と、リサイズプロセス中に考慮すべき重要なポイントについて説明します。
重要:拡張と縮小では順序が逆です。ext系の縮小は、アンマウントしたファイルシステムを先に縮小し、その後でパーティションを縮めます。先にパーティションを縮めるとデータを切り落とす危険があります。LVM・暗号化・RAID・XFSなどには以下のext系の順序をそのまま適用せず、構成別の手順を確認してください。
パーティションとは何か?
パーティションとは、ハードドライブを複数の独立したセクションに分割するプロセスのことを指します。これにより、オペレーティングシステムは、単一の物理ドライブ上で複数の「仮想」ドライブとして機能することができます。各パーティションは、異なるファイルシステムでフォーマットされ、独立したストレージユニットとして扱われます。Linuxでは、/, /home, /varなど、特定のパーティションにシステムやユーザーデータを分けて格納することが一般的です。この分割は、管理の柔軟性を高め、セキュリティとパフォーマンスの最適化を図ることができます。パーティションのリサイズ、つまりサイズの変更は、システムの変化に合わせてストレージの割り当てを最適化するために行われますが、このプロセスは慎重に行う必要があります。
パーティションサイズを変更する前の準備
パーティションのサイズを変更する前に、いくつかの準備手順を踏むことが重要です。準備しても失敗の可能性は残るため、別媒体のバックアップが実際に復元できることを確認してから進めます。
データのバックアップ
パーティションのサイズ変更はリスクが伴います。誤った操作や不測のトラブルが発生する可能性があるため、重要なデータをバックアップすることが最優先事項です。外部ストレージデバイスやクラウドストレージサービスを利用して、対象パーティションの完全なバックアップを取得してください。
使用中のパーティションのアンマウント
リサイズを行うパーティションがマウントされている場合、そのパーティション上での書き込み操作がリサイズプロセスに干渉する可能性があります。したがって、安全なリサイズ操作のためには、対象のパーティションをアンマウントすることが推奨されます。コマンドラインからumount /dev/sdXnコマンドを使用して、パーティションをアンマウントしてください。
システムの健全性チェック
パーティションのサイズ変更前には、ファイルシステムのエラーがないかを確認することも重要です。対象ファイルシステム専用のチェック方法を確認します。ext系でe2fsckを行う場合はアンマウントが前提で、マウント中のファイルシステムへ修復を実行しないでください。これにより、リサイズプロセス中の不具合を最小限に抑えることができます。
十分な空き容量の確保
パーティションを拡大する場合、拡大先に隣接する未割り当て領域が存在するかを確認する必要があります。一方で、パーティションを縮小する場合は、使用中のデータ量が縮小後の容量を超えていないかを確認してください。必要に応じて、データを移動または削除して、作業に十分な空き容量を確保します。
これらの準備手順を完了させることで、パーティションのリサイズを安全に行うための基盤を整えることができます。
コマンドライン:パーティションとファイルシステムを分ける
まず次の読み取りで、デバイス名・ファイルシステム・マウント先を確認します。/dev/sdXnのような例を実ディスクへ推測で置き換えないでください。
lsblk -f
findmnt
df -hT
拡張:領域を先に、ファイルシステムを後に
単純なパーティション上のext系では、バックアップと隣接する未割り当て領域を確認し、開始位置を維持したままパーティションの終端を広げ、その新しい容量をOSが認識したことを確認してからファイルシステムを拡張します。resize2fsはパーティションテーブル自体を変更しません。
縮小:ext系ファイルシステムを先に
対象をアンマウントし、整合性を確認してから、resize2fsでファイルシステムを先に縮小します。その後、縮小済みファイルシステムより小さくならないようパーティション終端を変更します。使用済み容量だけで最小サイズは決まりません。ルート領域などをアンマウントできない場合は、復旧用の起動環境を準備して作業します。
resize2fsでサイズを省略すると、パーティションの容量を使用します。サイズ省略のコマンドを「縮小する手順」として実行しないでください。単位・境界・実際の最小容量が不明な場合は書込みを止めます。
fdisk・partedで変更する範囲
partedのresizepartはパーティションの終端を変更する機能で、ファイルシステムの縮小を代行しません。fdiskで削除・再作成する方法は、元と同じ開始セクターの維持などが必要で、一般向けの一律手順として「d→n→w」を実行するのは危険です。対象の構成を確認できない状態では使わないでください。
LVMや暗号化では外側・内側の複数層のサイズを整合させる必要があります。XFSなどはext系とはツールや縮小可否が異なります。データを退避して再作成が必要な場合もあり、resize2fsを別の形式へ実行しないでください。
グラフィカルツールを使用したパーティションのリサイズ
Linuxでパーティションのサイズを変更する際、コマンドラインツールの代わりにグラフィカルツールを使用することもできます。これは特にGUIを好むユーザーやコマンドラインに不慣れなユーザーにとって便利です。以下に、人気のあるグラフィカルパーティションエディタ「GParted」を使用したパーティションリサイズの手順を紹介します。
GPartedを使用したパーティションのリサイズ
GPartedは、Linuxで最も一般的に使用されるパーティションエディタの一つで、多くのLinuxディストリビューションにデフォルトで含まれているか、簡単にインストールできます。以下の手順でパーティションのサイズを変更できます。
- GPartedのインストール: GPartedが既にインストールされていない場合、パッケージマネージャーを使用してインストールしてください。たとえば、UbuntuやDebianベースのディストリビューションでは、
sudo apt-get install gpartedコマンドを使用します。 - GPartedの起動: アプリケーションメニューからGPartedを検索し、起動します。管理者権限(sudo)が必要な場合があります。
- パーティションの選択: GPartedのインターフェースで、サイズを変更したいパーティションを選択します。ディスクの上部に表示されるグラフィカルな表現から選択できます。
- リサイズまたは移動: パーティションを右クリックし、「リサイズ/移動」を選択します。新しいサイズや位置を指定するダイアログボックスが表示されます。
- サイズの変更: 対応ファイルシステムと可能な操作を確認し、変更後のサイズと保留操作一覧を確認します。サイズ変更と開始位置の移動は別のリスクを伴うため、左端を不用意に動かさないでください。
- 変更の適用: 変更を行った後、GPartedウィンドウのツールバーにある「適用」ボタンをクリックして、行った変更を実行します。
- 完了: GPartedがパーティションのサイズ変更を完了すると、変更がディスクに適用されます。必要に応じて、ファイルシステムのチェックを行い、システムを再起動して変更を有効にします。
GPartedを使用すると、パーティションのサイズ変更が直感的に行え、プロセス中に発生する可能性のあるエラーを視覚的に確認できます。しかし、操作を行う前には必ずデータのバックアップを取り、慎重に作業を進めるようにしてください。
パーティションリサイズ時の注意点
パーティションのサイズを変更する際には、慎重な計画と実行が必要です。データの損失やシステムの不安定化を防ぐために、以下の注意点を考慮してください。
データのバックアップ
最も重要な注意点は、リサイズ操作を開始する前に、対象パーティションのデータを完全にバックアップすることです。これにより、操作中に問題が発生した場合でも、重要なデータを保護することができます。
使用中のパーティションのリサイズ
システムが稼働中のパーティション、特にルートパーティションやホームパーティションなどのリサイズを行う場合は、特に注意が必要です。可能であれば、Live CDやUSBからシステムを起動してからリサイズを行うことをお勧めします。
電源供給の確保
パーティションリサイズのプロセス中にシステムの電源が切れると、データ損失やファイルシステムの破損につながる可能性があります。特にノートパソコンを使用する場合は、ACアダプターを接続し、電源供給が確実に行われていることを確認してください。
パーティションとファイルシステムの種類を確認
使用しているパーティションのタイプ(MBRまたはGPT)とファイルシステムの種類(ext4、xfs、ntfsなど)によって、リサイズの方法や可能性が異なります。適切なツールと手順を選択するためには、これらの情報を事前に確認しておくことが重要です。
空きスペースの確保
パーティションを拡張する場合、拡張するパーティションの隣に未割り当ての空きスペースが必要です。空きスペースが不足している場合は、他のパーティションを縮小して空きスペースを作り出す必要があります。
リサイズ後の確認
パーティションのリサイズが完了した後は、システムが正常に起動するか、データにアクセスできるかを確認してください。また、ファイルシステムの整合性チェックを行うことも推奨されます。
これらの注意点を頭に入れておくことで、パーティションのリサイズを安全に行い、潜在的なリスクを最小限に抑えることができます。
パーティションサイズ変更後の確認方法
パーティションのサイズ変更を行った後、変更が正しく適用されたことを確認することは非常に重要です。以下のステップを実行することで、パーティションとファイルシステムの状態を確認し、意図した容量と状態になっているかを確認します。
パーティションテーブルの確認
パーティションテーブルを確認することで、パーティションのサイズと配置が意図した通りになっているかを確認できます。コマンドラインからlsblk、fdisk -l、またはparted -lコマンドを使用して、パーティションテーブルの情報を表示し、変更が正しく適用されたことを確認します。
ファイルシステムの整合性チェック
パーティションのサイズ変更後は、ファイルシステムが正常に機能していることを確認するために、整合性チェックを行うことが推奨されます。例えば、ext4ファイルシステムの場合はe2fsckコマンドを使用します。コマンドは次のようになります:
sudo e2fsck -f /dev/sdXnここで、/dev/sdXnは確認済みの対象ext系ファイルシステムです。必ずアンマウントした状態で実行し、他形式へ使わないでください。
ディスク使用率の確認
パーティションサイズの変更が反映されているか、実際のディスク使用率を確認することも重要です。df -hコマンドを使用して、システムのディスク使用率を表示し、パーティションの新しいサイズが正しく反映されていることを確認します。
システムの安定性とパフォーマンステスト
最終的に、システムが安定して動作し、パフォーマンスに問題がないかを確認するために、数日間の運用を通じてテストを行うことが望ましいです。特に、重要なシステムやプロダクション環境でパーティションサイズを変更した場合は、このステップが重要になります。
これらの確認作業を行うことで、パーティションサイズの変更が成功し、システムの状態を確認できますが、潜在的な不具合がないことまで保証するものではありません。問題が発見された場合は、適切な対処を行うことが必要です。
トラブルシューティング: よくある問題と解決策
パーティションのサイズ変更中や変更後には、さまざまな問題が発生する可能性があります。以下は、よくある問題とその解決策です。
パーティションがマウントされていない
サイズ変更を試みた後、パーティションが正常にマウントされない場合があります。原因は破損とは限らず、デバイス名・UUID・サイズ認識なども確認が必要です。追加書込みを止め、変更記録とバックアップを確認します。対象や障害原因が不明な状態で修復コマンドを繰り返さないでください。
不足している空きスペース
パーティションを拡張しようとすると、隣接するパーティションによって空きスペースが不足していることが原因で失敗することがあります。ファイルを削除するだけでは、パーティション外の未割り当て領域は増えません。隣接領域の再配置・別ディスクへの移行など、バックアップと構成に合う方法を検討します。
システムのパフォーマンス低下
パーティションのサイズ変更後、システムのパフォーマンスが低下する場合があります。I/Oエラー、空き容量、バックグラウンド処理などを確認し、原因を断定せず調べます。障害が疑われるディスクへ最適化などの追加書込みを行わないでください。
データ損失
最悪のケースでは、パーティションのサイズ変更中にデータ損失が発生する可能性があります。バックアップからのデータ復元が必要になります。このリスクを最小限に抑えるためには、操作前に完全なバックアップを取ることが非常に重要です。
まとめ
Linuxでパーティションのサイズを変更することは、システム管理の一環として非常に役立ちますが、注意深く行う必要があります。データのバックアップ、適切なツールの使用、パーティションとファイルシステムの事前チェック、そして変更後の確認は、このプロセスを安全に行うための鍵です。トラブルシューティングのガイドを参考に、問題が発生した場合に備えてください。正しい知識と準備をもって行えば、パーティションのリサイズはシステムの効率性を高める強力なツールとなります。


コメント