BTRFS パーティションのサイズを変更したり縮小したりするにはどうすればよいですか?

BTRFS パーティションのサイズを変更したり縮小したりするにはどうすればよいですか?

/homeパーティションを持っているのでBTRFS、それを縮小する必要があります。

残念ながら、Gpartedこの FS にはサイズ変更オプションがありません。

データを失うことなく、他の方法でサイズを変更することはできますか?

答え1

によるとこのページの中にbtrfs ウィキ:

ファイルシステムを 4 GiB 縮小するには、btrfs filesystem resize -4g /mntまたはbtrfsctl -r -4g /mntFS サイズを設定します。ファイルシステムを特定のサイズに設定するには、サイズの先頭の + または - を省略します。

Ubuntu のコマンドbtrfsbtrfsctlコマンドは、ソフトウェア センターでインストールできる というパッケージによって提供されますbtrfs-utils。これらのコマンドはターミナル (Ctrl+Alt+T) で実行します。 を4g実際に縮小したいパーティションのサイズに、 を/mntパーティションのマウント ポイントに置き換えます。たとえば、/media/Alpha にマウントされた btrfs パーティションを 500 MiB 縮小するには、次のコマンドを実行します。

btrfs filesystem resize -500m /media/Alpha

または:

btrfsctl -r -500m /media/Alpha

btrfs ファイルシステムのサイズ変更のガイドラインが他のファイルシステムと同じであると仮定すると、実行中のシステムと同じ物理ディスクにあるパーティションのサイズ変更は避ける必要があります。したがって、必要な場合は、ライブ システムから起動して、Ubuntu システムがインストールされているドライブ上のパーティションのサイズを変更します。(これは、GParted で行うサイズ変更にも適用されます。)

一部のユーティリティまたはアプリケーションでサイズ変更操作の実行結果が表示されない場合は、再起動することをお勧めします。

btrfsおよびを参照してくださいbtrfsctl マニュアルページこれらのコマンドの使用の詳細については、btrfs ウィキすぐに復旧します。

私は個人的に btrfs ファイルシステムにあまり詳しくありませんが、これらの resize コマンドがデバイス名ではなくファイルシステムのマウント ポイントを使用するのは奇妙に思えます。これを説明できる方がいらっしゃいましたら、コメントを投稿するか、この回答を編集して改善してください。

答え2

によるGParted 機能ページ、btrfs の縮小がサポートされています。オプションが利用できない場合は、btrfs-tools パッケージをインストールすると問題が解決する場合があります。それでも問題が解決しない場合は、Ubuntu に古いバージョンの GParted が含まれている可能性があります。その場合は、GParted Live CD を使用できます。

http://gparted.sourceforge.net/livecd.php

(これはまた、Ubuntuの推奨とにかくそれを使用する

答え3

これは質問への直接的な回答ではなく、Google検索からここにたどり着いた人向けのものです。オンラインで縮小できるかどうか疑問に思っています/- はい、できます

もっと多くのスワップが必要でしたが、btrfs ではファイルからスワップを実行できないため、/ を縮小してパーティションを再作成する必要がありました (慎重に)。64G のスワップを追加で必要だったことを念頭に置いて、私が行ったことは次のとおりです。

sudo btrfs filesystem resize -96g /
sudo fdisk /dev/nvme0n1

パーティションが 2 つあり、1 つは / 用、もう 1 つは swap 用です。両方を削除してから再作成しました (再起動前に!)。パーティション 1 の古いサイズは 867.5G で、新しいサイズは 803.5 で、swap パーティション用に 64G が追加されました。btrfs 署名を上書きするかどうか尋ねられたら、NO と答えてください。私と同じように swap を行う場合は、作成時または作成後に "t" コマンドを使用して、swap パーティションの "type" を "82" に変更する必要があります。

再起動後、実行しました

sudo btrfs filesystem resize max /

df -hそして次のように報告します。

/dev/nvme0n1p1  804G  498G  305G  63% /

最初にファイルシステムを 96G 縮小した理由は、ツールによって G と M の計算方法が若干異なるためです。新しいパーティションがファイルシステムよりわずかに小さいため、ファイルシステムが上書きされないようにするためです。

sudo mkswap /dev/nvme0n1p2再起動後、スワップパーティションを変更した場合は、mkswapを実行して「swapon」を実行するか、再度再起動する必要があります。

これはおそらく回答の一番上に記載されるべきですが、言うまでもなく、上記のコマンドのセットは自己責任で実行してください。また、何か問題が発生してファイルシステム全体が失われる場合に備えて、重要なファイルはすべてバックアップしておく必要があります。これが誰かの役に立つことを願っています。

答え4

このコマンドを使用して、btrfs次のサポートをインストールしますGParted

sudo apt install btrfs-progs

その後、パーティションを簡単に縮小したり、サイズを変更したりできますGParted。この方法では、すべての作業をGUIで行うことができます。コマンドラインは必要ありません。

関連情報