空きパーティションなしでlvm + xfsを拡張する方法

空きパーティションなしでlvm + xfsを拡張する方法

4つのプライマリパーティションを作成した1つのディスクを持つCentos 7仮想マシンに閉じ込められています。今より多くのスペースを追加する必要があります。

現在は次のとおりです。簡略化された内容は次のとおりです。

mount
/dev/mapper/centos-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root  175G   14G  162G   8% /

lsblk
sda               8:0    0  250G  0 disk
├─sda1            8:1    0  500M  0 part /boot
├─sda2            8:2    0 59.5G  0 part
│ └─centos-root 253:0    0  175G  0 lvm  /
├─sda3            8:3    0   60G  0 part
│ └─centos-root 253:0    0  175G  0 lvm  /
└─sda4            8:4    0   80G  0 part
  └─centos-root 253:0    0  175G  0 lvm  /

ディスクは/dev/sda50GBの空き容量があり、分割されていない状態に拡張されました。通常、次のいずれかを実行します。

  • 空き領域を使用して新しいパーティションを作成し、それをcentos-rootLVに追加します。残念ながら、sda1-4はすべてデフォルトのパーティションです。だから、これ以上実際に作成することはできません。

  • resize2fsファイルシステムを縮小してからLVを縮小するために使用されますlvreduce。ただし、このファイルシステムはxfsなので減らすことはできません。

また、新しい仮想ディスクを作成し、/dev/sdb次のコマンドを実行してパーティションの1つを消去しました。

pvcreate /dev/sdb
vgextend centos /dev/sdb
pvmove /dev/sda4 /dev/sdb
  /dev/sda4: Moved: 0.00%
  /dev/sda4: Moved: 3.06%
  [kernel panic] ????

しかし、これにより実際にVM全体がクラッシュし、今はきつくできなくなりました。少なくとも1つのパーティションをクリーンアップしたり、少なくとも拡張スペースを追加したりするにはどうすればよいですか?

ベストアンサー1

sda2唯一の物理ボリュームで始まったようです。後でsda3追加しましたsda4(ルートファイルシステムが14 GBしか使用していないため、なぜこれをしたのかわかりません)。ディスクにはsda4つのパーティションがありますが、正しく計算すると、まだ約50GBの空き容量があります。

LVMはストレージ管理を自動化し、より柔軟にするために存在します。ただし、スペースを手動で管理sdaし、LVMを引き続き使用できます。これはあまり意味がありません。sda2最初から残りの領域全体をプロビジョニングしてからパーティションを追加する代わりに、LVMを使用してその領域を管理する必要があります。

あなたのシステムが現在/dev/sdbどのような状態なのか、なぜそのような状態なのかわかりません。pvmoveそれでも動作すると仮定すると、単に拡張しますsda4。正しいバージョンではparted簡単なコマンドですresizepart。バラよりparted の Red Hat ブログエントリ

parted残念ながら、Centos 7のいくつかのバージョンではresizepart。または使用partedfdiskGpartedライブDVD

上記のLive DVDを使用した場合は、LVMとファイルシステムも含まれているので、すでに完了しています。それ以外の場合は、pvresize /dev/sda4LVMに新しいサイズを知らせる必要があります。

理想的には、3つのPVをsda1つにマージする必要がありますが、そのためにはデータをコピーする必要がありますpvmove。たとえば、理解できない理由により、この操作は失敗します。

おすすめ記事