Ubuntu:ルートLVM(2?)パーティションのサイズを変更する


10

私は、VirtualBox 2.2.4で実行されているUbuntu仮想マシンを持っていて、それが小さすぎる8GBの仮想ディスク上に作成しました。

だから、私はディスクのサイズを大きくしようとしています。これまでのところ、私はこれを行いました:

  1. 新しい大きな仮想ディスクを作成しました
  2. マシンに2番目のディスクを追加しました
  3. CloneZillaを使用して最初のディスクを2番目のディスクに複製
  4. 最初のディスクを取り外した
  5. 2番目(大きなディスク)から起動

しかし、今でも新しい100 GBの仮想ディスクに8 GBのパーティションが残っています。

ここから100GBのパーティションを作成する最も簡単な方法は何ですか?:)私はGPartがパーティションのサイズを変更できることを収集しますが、私のようにLVM2パーティションをサポートしていないようです。

どうも

  • アレックス

回答:


5

一般的に、LVMボリュームのサイズを変更する方法は次のとおりです。

/mountpointがオンだとしましょう/dev/VolGroup00/mountpoint。これを確認するには、チェックアウトする/etc/fstabか、を実行しmount -lます。

設定によっては、実際の物理ボリュームのサイズを変更する必要がある場合もあります。pvdisplay十分に大きいかどうかを確認するために使用し、必要に応じてpvresizelvresize以下のように)使用します。

umount /mountpoint
lvresize -L +<HOW MUCH BIGGER> /dev/VolGroup00/mountpoint
e2fsck -f /dev/VolGroup00/mountpoint
resize2fs /dev/VolGroup00/mountpoint <TOTAL SIZE>
mount /mountpoint

これは、マウント解除、基になるLVMのサイズ変更、実際のext3パーティションのサイズ変更に相当します。

注意すべき点がいくつかあります。

  1. 明らかに遊ぶ/ことはデータパーティションとは異なります。Doing It Liveではなく、Sysrescuecdなどのブートディスクが必要になる場合があります。以下のKristofのコメントも参照してください/。実際には、マウントを解除せずにこれを実行できる場合があります。
  2. lvresizeにはいくつかの異なる構文オプションがあり、論理ボリュームを減らすと、オーバーレイしているパーティションに悪影響を与える可能性があります。詳細については、ローカルのmanページを参照してください。

ありがとう、それは有望に見えますが、LVMツールを搭載した私が使用する可能性があるLiveCDを提案できますか?
user12259 2009

Sysrescuecdは素晴らしい(sysresccd.org
Zoredache

5
ext2 / 3/4はファイルシステムのライブ成長をサポートします。パーティションをアンマウントまたはe2fsckする必要はありません。resize2fsは、それが存在するパーティション(または論理ボリューム)のサイズを把握するのにも十分に賢いです。サイズを指定しない場合は、利用可能なすべてのスペースを埋めるためにサイズが大きくなります。
クリストフプロボスト

「sudo resize2fs / dev / sda1」を試しましたが、「resize2fs:/ dev / sda1をペンしようとしているときにデバイスまたはリソースがビジーです。有効なファイルシステムスーパーブロックが見つかりませんでした」
user12259

1
lvresizeは物理ボリュームサイズを変更しないので、最初に変更する必要はありませんか?
user12259 2009

2

これを行う方法は1つだけあり、無数の方法を試しました。

まず、ubuntuゲストVMをvirtualboxで右クリックして「クローン」にクローンします。クローンが完了したら、(ホストOSで)を使用してクローンされたvdiを拡張します。

VBoxManage modifyhd "name_of_cloned_vdi" --resize "size_of_new_root_partition_in_MB"

次に、この投稿の手順に従って手紙を書いてください(彼はVMwareをプラットフォームと呼んでいますが、無視してください)。

http://blog.campodoro.org/?p=36

これにより、追加したスペースとまったく同じサイズの別のlvmが作成され、既存のスペースの最後に追加されます。

すべてが正しいことを確認したら、元のVMを削除してクローンをプロモートできます!

fdiskをいじったり、間違ったパーティションを削除したり、ねじ込んだりする心配はありません。

この解決策が見つかるまで、私は約4つのクローンOSを壊していたに違いありません。


2

私はちょうどこれをしなかったし、あなたが持っていた同じ質問を持っていましたが、代わりに新しいLVMを作成し、ボリューム・グループに追加することで、私のOCD側は私の現在のLVMのサイズを変更したかったので、単純化の名の下に単一のパーティションを維持します。注:サイズを変更するパーティションのすぐ後に空き容量がない場合、これが可能であるとは思わない!

これを行うには、パーティションテーブルを削除および作成できるツールが必要です。GPTを使用しているため、これはgdiskが必要であることを意味しました。また、パーティションをマウント解除した状態でこれを行う必要があるため、Ubuntu LiveCDを起動して、そこから実行することもできます。

次の太字の手順は、デバイス/ dev / sda上のLVM / dev / mms / rootの例です。ここで、パーティション/ dev / sda3拡張して、新たに見つかった空きスペースを占有しました。

これらは潜在的に非常に破壊的であるため、入力が正しいことを確認してください!

  1. gdisk / dev / sda(必ず正しいデバイスを入力してください!)これにより、gdiskに移動し、次の手順を順番に実行できます。
    1. p- 現在のパーティション情報を出力します(参照用)
    2. d- パーティションテーブルを削除します
    3. 3- 削除するパーティションテーブルを表すデバイス番号(重要!)
    4. n- パーティションテーブルを作成するため
    5. 3-作成するパーティションテーブルを表すデバイス番号(手順3で削除したものと同じものを使用することをお勧めします)
    6. p- 現在のパーティション情報を出力します(ここでも参照用に、最初のパーティション情報と比較してください!)
    7. w- 変更をディスクに保存します(よろしいですか?!)
  2. pvresize / dev / sda3 -OSが新しいパーティションサイズを認識するように、これを実行する前に再起動する必要がある場合があります
  3. pvdisplay-現在の情報を出力します(現在、完全なスペースを使用していることを示すはずです!)
  4. lvresize -l + 100%FREE / dev / mms / root -LVMのサイズを変更して、新しく見つかったスペースの100%を占有します
  5. e2fsck -f / dev / mms / root-整合性チェックを実行します
  6. resize2fs -p / dev / mms / root-ファイルシステムのサイズを変更して、LVM全体を占有します

上記を実行し、サイズ変更されたOSで再起動した後、すべてが期待どおりに動作し、追加の空き領域をすべて自由に使えるようになりました。

私がこれをすべて理解するために使用した追加の参照:

http://www.jethrocarr.com/2012/08/10/gdisk-oh-glorious-gdisk/ http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html


1

ここで関連する回答を参照してください。

(抜粋)

物理ボリュームのサイズ変更:

pvresize --verbose --test /dev/md0

論理ボリュームのサイズ変更:

lvresize --verbose -L <SIZE> --test /dev/VG1/LV1

そして最後に、ext3 FSのサイズ変更:

resize2fs /dev/VG1/LV1

lvresizeを実行すると、「ルートの一時停止に失敗しました」というエラーが表示される
user12259 2009

私が試してみました: "sudo lvresize --verbose -L 40G / dev / ubuntu / root"
user12259

「sudo modprobe dm-mod」で修正しました。lvresizeを正常に実行できます
user12259

fdisk -lは54GBの空き容量があることを示していますが、実行後pvresize /dev/sda2; lvresize -L 50G /dev/mapper/VolGroup-lv_root、「空き容量が不足しています:588エクステントが必要ですが、空き容量は0です」というエラーが表示されます。pvdisplay物理ボリュームのサイズが変更されなかったことを示しています。
Cerin、2012

あなたは本当に新しい質問をする必要があります。古い質問のコメントは、助けを得る最良の方法ではありません。
Zoredache 2012

1

ここで実際にCloneZillaのようなクローンツールを使用する必要はありません。新しい仮想ディスク(オプション)にパーティションを作成し、pvcreateコマンドを使用してその仮想ディスク(または仮想ディスク自体)をLVMに初期化できます。次に、を使用vgextendして論理ボリュームをサポートするボリュームグループに追加し、次にを使用vgreduceしてボリュームグループから元の仮想ディスクを削除します。これにより移行が実行され、論理ボリュームの使用中にライブで実行できます。これがストレージ仮想化の優れた点です。完了したら、上記のように論理ボリュームを拡張する必要があります。これは、ext3よりも新しいファイルシステムを使用してライブで行うこともできます。


1

I.仮想HDDのサイズが固定されている場合、それを大きくすることはできません。この場合、最初にクローンを作成する必要があります。

(1)VB GUIを介してHDDのクローンを作成します。 File -> Virtual Media Manager... -> [tab] Hard Drives -> select your HDD -> [button] Next -> [button] Next -> select "Dynamically allocated" on the step "Storage on physical hard drive"-> ...

またはコマンドラインで:

# VBoxManage clonehd "/path/to/the/HDD.vdi" "/path/to/the/HDD_NEW.vdi"

(2)新しいHDDを既知のHDDのリストに追加します。

(3)VBマシンの設定で、コントローラーの下のVDIリストから古いHDDを削除し、代わりに新しいHDDを追加します。

II。HDDのサイズを変更する

(1)新しいHDDのサイズを変更します。

# VBoxManage modifyhd 463c7bd4-9b9c-4cf8-bee4-e14e10c0d462 --resize 25600

VBoxManage list hddsコマンドでキーを取得します。

III。新しく割り当てられたスペースを追加します。

(1)GParted ISOを新しいメディアとして追加Machine Settings -> Storage -> [rightclick] Controller IDE -> Add CD / DVD Device -> ...し、Live CD/DVDチェックボックスを選択します。

(2)VMを起動し、割り当てられていない空き領域を作業パーティションに追加します。

(3)VMを停止します。

(4)GParted ISOを切り離します。

楽しい!:)



弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.