web-dev-qa-db-ja.com

LVMパーティションのサイズを変更するにはどうすればよいですか? (つまり、物理ボリューム)

新しく解放されたスペースに新しいパーティションを作成するために、2番目の(LVM)パーティションを縮小します。 Live CDを使用してこれを行っています。使用中はこのパーティションのサイズ変更や移動ができないことがわかっているからです。 Live CDでGPartedを開いたときに、パーティションのサイズを変更できないことに気付きました。パーティションを右クリックすると、オプション「サイズ変更/移動」が無効になります。

アンマウントしようとしましたが、「遅延」アンマウントしました(umount -l /dev/sda2)が、うまくいきませんでした。

GPartedのスクリーンショット:

GParted screenshot

88
Idan Yadgar

Googleには、同様の問題が発生した多くの結果があるようです。例:

これを試みる前にすべての重要なデータをバックアップしてください。パーティションのサイズを変更すると、すべてのデータが失われる可能性があることを常に想定してください。

データ損失のないLVMの縮小

このフォーラムスレッドは次の手順を提案します。この例では、パーティションを10Gから9Gに縮小します。

まず、アンマウントします。

Sudo umount /dev/vg_blah/lv_blah

ファイルシステムを確認してください。

Sudo e2fsck -f /dev/vg_blah/lv_blah

ファイルシステムと論理ボリュームのサイズを変更します。これを1ステップで行うと、データ損失の原因となるミスを回避できます。 (注:lvreduceパラメーター-Lは、Gを2 ^ 30バイト、gを10 ^ 9バイトと解釈します。)

Sudo lvreduce --resizefs -L 9G /dev/vg_blah/lv_blah

(オプション)必要に応じて、ボリュームグループから物理ドライブを削除します(使用していないドライブがある場合)。

Sudo vgreduce vg_blah /dev/sdxy

すべてのクレジットはbrianmcgeeに送られます。

注:ディスクの最後に別のlvがある場合、vgreducecannot resize to xxxxx extents as later ones are allocatedで失敗します-スワップlvがあり、それを削除しました。 buntu LVMの論理ボリュームと物理ボリュームを縮小する方法 を参照してください。

48
pzkpfw

GUIツールsystem-config-lvmを使用すると、論理ボリュームを非常に簡単に縮小/拡張できます。 system-config-lvmは事前にインストールされていないため、ライブCDから起動したらインストールする必要があります。

Sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
Sudo apt-get update
Sudo apt-get install system-config-lvm

インストールしたら、プログラムを実行し、左パネルで変更する論理ボリュームを選択して、「プロパティの編集」をクリックします。

Main Logical Volume Management program GUI

必要に応じてパラメーターを変更してください!

Edit Logical Volume window

system-config-lvmの良い点の1つは、新しいパーティションサイズが既存のすべてのデータの合計よりも小さい場合、先に進むことができないことです(これを試してみたところ、自分で確認しました)。

参照:

  1. How-To Geek tutorial (これが画像の起源です)。
  2. Red Hatの完全ガイド プログラム用。
45
Cao Minh Tu

:Live CDを使用して、次のコマンドのほとんどすべてを実行する必要があります。場合によっては、既に/にマウントされているパーティションをアンマウントしたいことがあります(この場合、アンマウントできません)。

これらは、LVMまたはLVM2パーティションのサイズを変更するために必要なすべての手順です。

Sudo lvresize --verbose --resizefs -L -150G /dev/mapper/ubuntu

Sudo pvresize --setphysicalvolumesize {some-space} /dev/sda5

2番目のコマンドが次のようなものを生成する場合:

/dev/sda5: cannot resize to xxxxx extents as later ones are allocated.

次に、LVMの最後に未割り当てスペースを再配置する必要があります。これは、rootおよびswap_1パーティションの後を意味します。そのため、最初に、以下のコマンドを使用して物理ボリュームの情報を確認する必要があります。

Sudo pvs -v --segments /dev/sda5

次のような出力が表示されます。

/dev/sda5 ubuntu lvm2 a-- 698.04g 150g   0 xxx root 0 linear /dev/sda:0-rrr
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g xxx sss 0 free                          
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g zzz ttt swap 0 linear /dev/sda5:yyy-www

yyy-wwwに注意してください。次のコマンドを使用して、外部フラグメンテーションを削除します。

Sudo pvmove --alloc anywhere /dev/sda5:yyy-www

さて、それがどうなるか見てみましょう:

Sudo pvs -v --segments /dev/sda5

次のような出力が表示されます(変更点に注意してください):

/dev/sda5 ubuntu lvm2 a-- 698.04g 150g   0 xxx root 0 linear /dev/sda:0-rrr
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g xxx ttt swap 0 linear /dev/sda5:xxx-sss
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g yyy www 0 free

その後、GPartedを使用してLVMを最大使用領域にサイズ変更し、残りは未割り当て領域になります。楽しい...

24
UJJAL

別のGUIツールをお勧めします- KVPM 。 GPartedとsystem-config-lvmの機能を組み合わせています。さらに、system-config-lvm 許可しない のライブ(マウント済み)パーティションでの一部の操作を許可します。ただし、縮小するにはボリュームをマウント解除する必要があります。

enter image description hereenter image description here

Ubuntu 12.04以降のユニバースリポジトリにあるため、Sudo apt-get install kvpm

注:ルート権限で開始しますSudo kvpm

15
Kos

Gpartedの最新バージョン(0.14)のみがLVM物理ボリュームのサイズ変更をサポートします。 Ubuntu 12.10または13.04に同梱されているバージョンではサポートされていません。

LVM物理ボリュームのサイズを変更する方法は次のとおりです。

  1. LVM物理ボリュームに関連付けられたボリュームグループに十分な未割り当て領域がない場合、論理ボリュームを縮小していくつかを作成する必要があります。 bigbadonk420's answer をご覧ください。 GUIが必要な場合は、GNOMEディスク(Ubuntuに含まれる)をいくつかのステップに使用することもできます。

  2. GPartedのWebサイトの最新の.isoイメージ を書き込み、CDに書き込むか、USBスティックに書き込みます。 CDまたはUSBスティックから起動します。または、ソースからGPartedの最新バージョンをコンパイルすることもできます。

  3. GPartedを使用して、LVM物理ボリュームのサイズを変更します。 GPartedでは、LVM物理ボリュームを未割り当て領域で許容されるサイズよりも小さくすることはできません。

12
Flimm

偶然この答えを見つけましたが、これは少なくとも私にとってはうまくいきました。私の場合、ルートの後に予約済みの未割り当てディスクスペースがすでにあったので、スペースを増やす方法は省略し、ブートせずにルートでそれを使用した方法を説明します。

注:gpartedを使用する代わりに、system-config-lvmを使用することをお勧めします。次回は代わりにそれを使用します...私のgpartedバージョンは0.18でした。

  1. 最初にgpartedを使用して、可能な限りルートパーティションを拡張しました。驚いたことに、物理的なサイズのみを拡張し、論理的な部分には何もしませんでした。したがって、df -kコマンドは、ディスクがまだいっぱいであると言いました。
  2. lvresize -l +100%FREE /dev/ubuntu-vg/rootは、論理パーティションを可能な限り拡張します。さまざまな方法でGBまたはブロックを確認および計算する必要はありません。
  3. resize2fs /dev/ubuntu-vg/rootは、3番目のステップです。ファイルシステムを論理パーティションのサイズに拡張します。

最後のステップは2番目のステップにマージできます。

lvresize -l +100%FREE --resizefs /dev/ubuntu-vg/root

9
Timo Riikonen

@ bigbadonk42answer に加えて、次の代わりに:

resize2fs -p /dev/vg_blah/lv_blah 9G
lvreduce -L -1G /dev/vg_blah/lv_blah

行う:

lvreduce -r -L 9G /dev/vg_blah/lv_blah

ファイルシステムを同時に削減する安全な-rに注意してください。

1
eyeinsky

現在最も投票されているものに関する警告 answer :ToNOTLVMオプション(14.04 Trusty Tahr) 、1)ページ全体を読む、2)スワップを削除する3)おそらく次のように「論理ボリュームのサイズを縮小する」コマンドを変更します。

lvreduce -L -1g /dev/vg_blah/lv_blah

system-config-lvmを強くお勧めします。

0
user293759

GPartedを使用してこれを行うには、dev/sda2(縮小したい)を右クリックします。 「無効化」を選択します。これで、lvmパーティションのサイズを変更できるようになります。

更新:@Cao Min Tuソリューションの方がはるかに優れています。サイズ変更後、GPartedの問題はほとんどありませんでした

0
Junaid