240 GB SSDには、最初に2つのパーティションがありました。1つはLinux Mintの論理ボリュームを含み、もう1つはWindowsと共有するNTFSパーティションを含みました。 。
NTFSパーティションを削除し、解放されたディスク領域を使用するように論理ボリュームグループを拡張したいと思います。
どうすればボリュームグループ、/ home を含む論理ボリュームを拡張します。 / homeのファイルシステム(ext4)?これをオンラインで行うことは可能ですか?
PS:はい、データをバックアップする必要があることはわかっています:)
/dev/sdb/ (240GB) linuxvg (160GB) should use 100% of the disk space swap root home (ext4, 128GB) should be extended to use the remaining space
sudo vgdisplay
:
--- Volume group --- VG Name linuxvg System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 0 Cur LV 3 Open LV 3 Max PV 0 Cur PV 1 Act PV 1 VG Size 160,00 GiB PE Size 4,00 MiB Total PE 40959 Alloc PE / Size 40959 / 160,00 GiB Free PE / Size 0 / 0 VG UUID ... --- Logical volume --- LV Path /dev/linuxvg/swap LV Name swap VG Name linuxvg LV UUID ... LV Write Access read/write LV Creation host, time mint, 2013-08-06 22:48:32 +0200 LV Status available # open 2 LV Size 8,00 GiB Current LE 2048 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:0 --- Logical volume --- LV Path /dev/linuxvg/root LV Name root VG Name linuxvg LV UUID ... LV Write Access read/write LV Creation host, time mint, 2013-08-06 22:48:43 +0200 LV Status available # open 1 LV Size 24,00 GiB Current LE 6144 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:1 --- Logical volume --- LV Path /dev/linuxvg/home LV Name home VG Name linuxvg LV UUID ... LV Write Access read/write LV Creation host, time mint, 2013-08-06 22:48:57 +0200 LV Status available # open 1 LV Size 128,00 GiB Current LE 32767 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:2 --- Physical volumes --- PV Name /dev/sdb1 PV UUID ... PV Status allocatable Total PE / Free PE 40959 / 0
sudo fdisk -l
の出力:
Disk /dev/sdb: 240.1 GB, 240057409536 bytes 255 heads, 63 sectors/track, 29185 cylinders, total 468862128 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 Device Boot Start End Blocks Id System /dev/sdb1 1 468862127 234431063+ ee GPT Disk /dev/mapper/linuxvg-swap: 8589 MB, 8589934592 bytes 255 heads, 63 sectors/track, 1044 cylinders, total 16777216 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 Disk /dev/mapper/linuxvg-root: 25.8 GB, 25769803776 bytes 255 heads, 63 sectors/track, 3133 cylinders, total 50331648 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 Disk /dev/mapper/linuxvg-home: 137.4 GB, 137434759168 bytes 255 heads, 63 sectors/track, 16708 cylinders, total 268427264 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000
コメント
回答
これはかなり簡単に行うことができます。ちょっと驚いたことに、ここにはまだ答えがありませんでした。
サイズを変更したいファイルシステムで実行しながら、このプロセス全体を実行できます(はい、安全で完全にサポートされています)。レスキューCDや代替オペレーティングシステムは必要ありません。
- パーティションのサイズを変更します(これも、システムが実行されている状態で実行できます)。 GParted は使いやすく、サイズ変更をサポートしています。
fdisk
などの低レベルのツールを使用することもできます。 。ただし、パーティションを削除して再作成する必要があります。そうするときは、新しいパーティションがまったく同じ場所から開始するようにしてください。 - 再起動します。実行中のシステムでパーティションテーブルが変更されたため、再起動するまで有効になりません。
-
pvresize /dev/sdXY
を実行して、LVMに新しいスペースを取得させます。 - 論理ボリュームのサイズを変更します。
lvextend
を使用します。全部を使いたい場合は、lvextend -r -l +100%FREE /dev/VGNAME/LVNAME
。-r
もファイルシステムのサイズを変更します。
ただし、ボリュームグループ全体を使用しないことを常にお勧めします。将来何が必要になるかはわかりません。後でいつでも拡張でき、縮小することはできません。
コメント
- あなたの回答を受け入れたいのですが、GPartedが’ tできるため、’提案どおりに機能しませんでした実行中のシステムでルートパーティションのサイズを変更します(少なくとも私の場合)。
- @HalosGhost編集内容を元に戻しました。
partprobe -s
は、あなたが思っていることをしません。カーネルは、使用中のパーティションのサイズ変更を取得しません。partprobe -s
は、サイズ変更中にパーティションが使用されていた場合にのみ機能します(したがって、fdiskがカーネルに失敗を通知した場合)が、機能しなくなりました。 - @ Patrick、私はそのアイデアを追加しませんでした。 “コマンドをバッククォートに入れることで編集を改善しました”(コードの戦いは賃金を逃れます!)
- ああ、すみません、間違った履歴イベントから名前を読んでください。次に適用される@Qetesh 🙂
- “を使用して再起動しないことは’可能です。ステップ2のpartx-u “は、パーティションを更新するようにカーネルに指示します’:アクティブなパーティションでも機能します。前後の/ sys /…/ sdXY / sizeを確認して確認します。
回答
なし答えはLVMの力を正当化します。
(これは上記の質問に対する@frostchutzのコメントに基づいています。)
事実を理解しましょう:
- OPには2つのパーティションがあります。sdb1とsdb2はLVMの物理ボリュームです。
- sdb1は現在ntfsであるため、そのスペースを
home
linuxvg
ボリュームグループ内のdiv>論理ボリューム。
“実用的な方法を使用したLVMステップ”:
- sdb1に物理ボリュームを作成します:
pvcreate /dev/sdb1
- sを追加しますdb1から
linuxvg
:vgextend linuxvg /dev/sdb1
- 論理ボリュームを拡張
home
すべての空き領域:lvextend -r -l +100%FREE /dev/linuxvg/home
LVMにより、高レベルの間接化が可能になります。論理ボリュームはボリュームグループ内にあり、複数のディスクを使用している可能性があります。
home- > linuxvg- >(sdb1、sdb2、sdc1)
http://tldp.org/HOWTO/LVM-HOWTO/createvgs.html
コメント
- うまくいきました、ありがとう。最後の2つのコマンドlvextend + resizefsの代わりに
lvresize -l +100%FREE ...
を使用しました - @AlessandroDentellaを共有していただきありがとうございます!
- 追加する場合
-r
をlvextendコマンドに追加すると、ファイルシステムも自動的に拡張されます。つまり、lvextend -r -l +100%FREE /dev/linuxvg/home
であり、resize2fs
- 更新を回避できます。ありがとう! @lucaferrario
回答
このブログ投稿。ソリューションを短い形式で記述します:
- ライブCDから起動
-
gdisk
を使用します(GPTを使用する場合) )それ以外の場合は、古き良きfdisk
- パーティション設定に注意してください。私の場合は
gdisk -l /dev/sdb
- パーティションを削除します
- 前のパーティションとまったく同じ配置で新しいパーティションを作成します(私の例ではブロック2048から開始します)
- 新しいパーティションテーブルを作成します
-
partprobe -s
を実行して、再起動せずにパーティションテーブルを更新します -
pvresize /dev/sdb1
またはpvがどこにあっても(pvs
を使用して、わからないかどうかを判断します) - ここで、
lvextend -l +100%FREE /dev/file/of/your/lv
、私の場合はsudo lvextend -l +100%FREE /dev/linuxvg/home
- ファイルシステムのサイズを変更します
sudo resize2fs /dev/linuxvg/home
- 最初に整合性を確認する
sudo e2fsck -f /dev/linuxvg/home
- お楽しみください:)
コメントts
- 実際には、これらの手順の約半分を切り取って、1回の再起動で実行できます。
- GPartedは、パーティションのサイズ変更を拒否しました。ロックされています(このキーシンボル)。
回答
すでにいくつかのすばらしい回答があります。
xfsを使用している場合は、resize2fsではなくコマンド
xfs_growfs /mountpoint
を使用します。これは、マウントポイントがルートパーティションを拡張し、後で再起動する必要がない場合など、アクティブです。
vgextend
を使用するだけです。代わりに既存のPVパーティションを拡張する場合は、ディスクの使用中にLinuxがパーティションテーブルの再読み取りを拒否するため、おそらく再起動する必要があります。このオンラインでの作業は厄介です。 -現在のパーティションテーブルを表示してください。