オンラインのさまざまなガイドに従って、LUKS暗号化ハードドライブパーティション(具体的にはルート/データ)を減らしました。 GParted が割り当てられていない新しい領域を認識するポイントに達しましたが、元のパーティション内に「固定」されています。以下のスクリーンショットでは、割り当てられていない領域は1MB(何もありません)にすぎませんが、その半分が強調表示されているデータパーティション内で割り当てられていないことがわかります。
データパーティションに何が起こっているのかを尋ねる場合は、私が望む未割り当て領域があると言います。
それで、サイズ変更をキューに追加し、最小サイズ(〜250 GB)に縮小したところ、私が望んでいた美しいプレビューが表示されました。考える(約198 GBの未割り当て領域を別々のパーティションとして提供します):
ただし、サイズ変更を実行すると、次のように失敗します。
減ったと思いますか?しかし、ああ、「割り当てられていないスペース」をパーティションとして提供していません!上記の素晴らしいプレビューは、この記事の最初のスクリーンショットに戻ります。
また、KDEパーティショニングツールを試してみましたが、基本的に同じ方法で動作します。また、サイズ変更中のパーティションがマウントされないように、別のアクティブディスクでサイズ変更を実行してみましたが、同じ現象が再発生しました。もう一つの興味深い点は、ディスクユーティリティのアイデアです。
ディスク管理の経験がまったくないので、当然データをバックアップしてマシンを消去してパーティションを縮小することも最初から考えたが、かなり近い感じなのだろうか?簡単なステップが欠落しているか完了していませんか?
答え1
問題は、パーティション内のファイルシステムのサイズ変更時にパーティション自体のサイズが変更されないことです。完璧にフィットする靴に足を入れるのと同じだと思います。フット(ファイルシステム)を小さくしましたが、シュー(パーティション)のサイズは同じで、シューには使用されないスペースがあります。小さな靴を買う必要があります。
パーティションは、GPT(GUIDパーティションテーブル)に格納されている概念にすぎません。パーティションの開始位置と終了位置を保存します。パーティションの新しいエンドパーティションを計算してGPTを更新する必要があります。
式はNEW_PARTITION_SECTOR_END=PARTITION_SECTOR_START+(LUKS_SIZE_SECTORS+LUKS_OFFSET_SECTORS) - 1。これが私が始めたものです。https://wiki.archlinux.org/index.php/Resizing_LVM-on-LUKS#Resize_the_partition
あなたの場合は、「sudo parted /dev/nvme0n1」を実行してから「resizepart」コマンドを使用する必要があります。 print コマンドを使用すると、parted 自体から PARTITION_SECTOR_START 値を取得できます。 LUKS_OFFSET_SECTORS と LUKS_SIZE_SECTORS は、「cryptsetup status cryptdata」から取得できます。それらをすべて追加すると、新しい最終値が得られます。
重要:partedを使用するときは、まず「unit」コマンドを入力し、単位を「s」(セクターを表す)に変更したことを確認してください。