LVMパーティションからディスクを削除する方法は?

LVMパーティションからディスクを削除する方法は?

誰でも助けることができますか?プライマリパーティションには2つのディスクがあります。 1つは460Gb、もう1つは1TBです。 1TBを削除したい - 別のマシンで使用したい。

とにかく、ボリュームグループは多くのスペースを使用せず、そのディスクを使用するドッカーといくつかのコンテナしかありませんが、とにかく私のドッカーコンテナボリュームは別の物理ディスクにあります。

ディスク([物理的])だけを削除すると問題が発生しますか?

これは情報です。


pvdisplay


  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               ubuntu-vg
  PV Size               <464.26 GiB / not usable 2.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              118850
  Free PE               0
  Allocated PE          118850
  PV UUID               DA7Q8E-zJEz-2FzO-N64t-HtU3-2Z8P-UQydU4

  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               ubuntu-vg
  PV Size               931.51 GiB / not usable 4.69 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              238466
  Free PE               0
  Allocated PE          238466
  PV UUID               Sp6b1v-nOj2-XXdb-GZYf-1Vej-cfdr-qLB3GU

LVMは私を少し混乱させます:-)

ただ単なる例ではありませんか?

「VGから自分自身を削除し、残りのグループメンバーを使用するすべてを評価してください」?

1TBが後で追加されたことは注目に値するので、削除する方が簡単だと思いますか?

どんな助けでも本当に感謝します。

編集する

そして追加情報

df -h
Filesystem                         Size  Used Avail Use% Mounted on
udev                                16G     0   16G   0% /dev
tmpfs                              3.2G  1.4M  3.2G   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv  1.4T  5.1G  1.3T   1% /

また、1%のみ使用してください。

また、lvsを出力します。

lvs
  LV        VG        Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  ubuntu-lv ubuntu-vg -wi-ao---- 1.36t

編集する

pvdisplay -m
  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               ubuntu-vg
  PV Size               <464.26 GiB / not usable 2.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              118850
  Free PE               0
  Allocated PE          118850
  PV UUID               DA7Q8E-zJEz-2FzO-N64t-HtU3-2Z8P-UQydU4

  --- Physical Segments ---
  Physical extent 0 to 118849:
    Logical volume  /dev/ubuntu-vg/ubuntu-lv
    Logical extents 0 to 118849

  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               ubuntu-vg
  PV Size               931.51 GiB / not usable 4.69 MiB
  Allocatable           NO
  PE Size               4.00 MiB
  Total PE              238466
  Free PE               0
  Allocated PE          238466
  PV UUID               Sp6b1v-nOj2-XXdb-GZYf-1Vej-cfdr-qLB3GU

  --- Physical Segments ---
  Physical extent 0 to 238465:
    Logical volume  /dev/ubuntu-vg/ubuntu-lv
    Logical extents 118850 to 357315

編集する

出力

lsblk -f
NAME   FSTYPE     LABEL UUID                                   MOUNTPOINT
loop0  squashfs                                                /snap/core/9066
loop2  squashfs                                                /snap/core/9289
sda
├─sda1 vfat             E6CC-2695                              /boot/efi
├─sda2 ext4             0909ad53-d6a7-48c7-b998-ac36c8f629b7   /boot
└─sda3 LVM2_membe       DA7Q8E-zJEz-2FzO-N64t-HtU3-2Z8P-UQydU4
  └─ubuntu--vg-ubuntu--lv
       ext4             b64f2bf4-cd6c-4c21-9009-76faa2627a6b   /
sdb
└─sdb1 LVM2_membe       Sp6b1v-nOj2-XXdb-GZYf-1Vej-cfdr-qLB3GU
  └─ubuntu--vg-ubuntu--lv
       ext4             b64f2bf4-cd6c-4c21-9009-76faa2627a6b   /
sdc    xfs              1a9d0e4e-5cec-49f3-9634-37021f65da38   /gluster/bricks/2

上記のsdcは別のドライブであり、関係ありません。

答え1

ディスクを取り外す必要があるファイルシステムは、ファイルシステムでファイルシステムタイプがある場合は、ext4まず一部のライブLinuxブートメディアからシステムを起動する必要があります。 Ubuntu Liveはこの問題に対する良い解決策になることができます。

外部メディアから起動した後、sudo vgchange -ay ubuntu-vgLVにアクセスできるように実行してボリュームグループを有効にします。ただし、ファイルシステムをマウントしないでください。縮小するには、ext2/3/4 ファイルシステムをアンマウントする必要があります。その後、ファイルシステムを10Gに縮小します(または必要なサイズ - 後でまたはオンラインでも簡単に再拡張できます)。

sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv 10G

メッセージの出力に注意してくださいresize2fs。ファイルシステムをそれほど縮小できないというメッセージが表示された場合は、サイズを大きくしてもう一度やり直してください。

これは、外部メディアから起動するときに完了する必要がある唯一の手順です。その後、システムを正常に起動できます。

この時点で、ファイルシステムは10G(または指定されたサイズ)に縮小する必要があります。次のステップはLVのサイズを減らすことです。決定的に、LVの新しいサイズはファイルシステムの新しいサイズとまったく同じかそれ以上でなければなりません!LVを縮小するときにファイルシステムの尾部を切り取りたいとは思わない。ここでは、少し大きいサイズを指定するのが最も安全です。

sudo lvreduce -L 15G /dev/mapper/ubuntu--vg-ubuntu--lv

現在pvdisplayまたはを使用して、LVMが完全に無料と見なされていることをpvs確認してください。/dev/sdb1と値はpvdisplay同じでなければなりません。出力では、値はそれぞれ同じでなければなりません。そうでない場合は、以下を使用する必要があります。Total PEFree PEsdb1pvsPFreePSizepvmove

sudo pvmove /dev/sdb1

その後、sdb1LVMによると、PVは確かに完全に無料で、VGで縮小することができます。

sudo vgreduce vg-ubuntu /dev/sdb1

必要に応じて、ex-PVからLVM署名を削除できます。

sudo pvremove /dev/sdb1

ただし、上書きしたい場合は、この手順を省略してください。

これらの手順を完了してもLVがこれよりわずかに大きくなる可能性がありますが、縮小ファイルシステムのサイズはまだ10G(またはユーザー指定の値)です。この問題を解決するには:

sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv

ファイルシステムを拡張するときにサイズを指定する必要はありません。ツールは、ファイルシステムを含む最も内側のデバイスの正確なサイズに合わせてファイルシステムを自動的に拡張します。この場合、ファイルシステムのサイズはLVのサイズに応じて調整されます。

後でLV +ファイルシステムを拡張するには、次の2つのコマンドを使用するだけです。

sudo lvextend -L <new size> /dev/mapper/ubuntu--vg-ubuntu--lv
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv

ファイルシステムが使用中でマウントされている場合でも、これを行うことができます。ファイルシステムを縮小することは拡張するよりも難しいため、LVMレベルで一定量の未割り当て領域を予約するのが便利です。すぐに使用して新しいLVを作成したり、必要に応じて既存のLVを拡張したりできます。同じVG中間。

答え2

質問にコメントを追加してください。

を実行しましたvgreduce ubuntu-vg /dev/sdb1が、メッセージが表示されたら/dev/sdb is still in useデータがあり、問題なく削除できないことを意味します。

それ以外の場合は、ボリュームグループから正常に削除され、実行してpvremove /dev/sdb1LVMラベルを削除し、マシンからディスクを削除し、他の場所で使用できます。

を使用できますが、取得pvmove /dev/sdb1すると、No extents available for allocationディスクに移動できる空き容量がないことを意味します。

を実行すると、pvdisplay -m物理拡張領域を含む物理ボリュームのマッピングデータを表示できます。たとえばFREE、次のように実行してPhysical Extents実行できますpvmove -v /dev/sdb1:<[physical_extent_with_data> /dev/sda3/:<physical_extent_free> --alloc anywhere。あなたの場合、出力結果がpvdisplayいっぱいになり、No extents available for allocationメッセージが表示されるため機能しないようです。

何をする前にデータをバックアップしたかを確認してください。ディスクを削除したい場合は、lvreduce後で使用できない場合は、複数のボリュームグループを作成してシステムのインストール時に1つだけ再構築することをお勧めします。

関連情報