web-dev-qa-db-ja.com

LVMを使用して2つのディスク上に1つの論理ボリュームを作成するにはどうすればよいですか?

こんにちは。稼働中のUbuntu 12.04サーバーがあり、これがメディアサーバーとして機能します。データを格納するためにサイズ3TBの2つのディスクを追加しました。これらを1つの6TB論理ボリュームとして結合し、/mediaの下にマウントできます。

これまでのところ、fdiskを使用して各ディスクに1つのパーティションを作成し、ext3にフォーマットしました。しかし、今、私は継続する方法にこだわっています。 Mdadmを使用してJbodアレイを作成しますか?または、LVMを使用してこれら2つのディスクの論理ボリュームを作成しますか?必要なドキュメントが見つからないようです。ほとんどの場合、既存のボリュームを拡張するか、必要のない新しいシステムをインストールします。

私のOSは/dev/sdc1(USBサムドライブ)にあり、新しく作成された2つのパーティションは/dev/sda1/dev/sdb1にあります。

いくつかの方向性を教えていただければ幸いです。

12
Hydrosine

この詳細な回答 をご覧ください。

その概要は次のとおりです。

  1. 最初のハードドライブに物理ボリュームを作成し、2番目のハードドライブに別の物理ボリュームを作成します。
  2. 新しいボリュームグループを作成し、両方の物理ボリュームを割り当てます。
  3. そのボリュームグループに新しい論理ボリュームを作成します。
  4. その論理ボリュームに新しいext3ファイルシステムを作成します。

this answer からコピーした図は、これを視覚化します(ただし、1つではなく3つのファイルシステムで)。

LVM schema

ご覧のとおり、ext3ファイルシステムの作成は最初ではなく最後のステップです。 LVMにない既存のext3パーティションがある場合、それをLVMに移行することはできません。パーティションをバックアップし、パーティションを削除し、LVMをセットアップしてから、ファイルをコピーする必要があります。

16
Flimm

RAID10の4ディスクアレイで使用するために別の2つの3TBディスクがなければ、それをしないでください。

データをバックアップする手段を使用せずに、2つを1つの大きなパーティションとして単純に組み合わせることは、良い考えではありません。データは両方のディスクにインターリーブされ、いずれかのディスクのいずれかの部分が不良になると、最大で半分のデータではなく、6TBのデータがすべて失われる可能性があります(データ量が多ければ)。

非常に大きなアレイパーティションではなく、両方を別々のパーティションとして使用する方がはるかに安全です。

3
dobey

LVMを使用する簡単な方法は次のとおりです。

  1. 「pvcreate」コマンドで物理ボリュームを作成します。

    • pvcreate /dev/sdc
    • pvcreate /dev/sdd
    • pvcreate /dev/sde
    • ...
  2. ubuntu Software Centerで利用可能なGUIツールであるsystem-config-lvmを使用します

新しいLVMパーティションはrootが所有している場合がありますが、次の方法で簡単にユーザーに戻すことができます。

Sudo chown -R username:username /path/to/your/lvm
2
max

Debianでlvm2を使用

  1. Sudo apt-get install lvm2を使用してlvm2をインストールし、/etc/init.d/lvm2 startを使用して起動します

  2. Lsblkを使用してすべてのボリュームをリストする

  3. 物理ボリュームを作成する

    /sbin/pvcreate <volume from prev list>
    
  4. 次に、ボリュームを一覧表示するには/sbin/lvmdiskscanを使用します

  5. ボリュームグループ/sbin/vgcreate <name> /dev/vdbを作成します
  6. Vg /sbin/mkfs.ext4 /dev/mapper/Vol_groupをフォーマットします

  7. このvgを何らかのファイルシステムにマッピングする場合は、fstabを変更します

    /dev/mapper/vg /var/lib/folder ext4 rw,user 
    
  8. mount -aを使用してボリュームをマウントします

0
syk_coder