LVMを使用したディスクの追加


26

これは以前どこかで答えられていたと思います(ここでガイドを見つけましたが、少しむらがあり不完全であるように見えました)が、誰かが私を助けてくれるか、少なくとも私を正しい方向に向けることができるかどうか疑問に思っていました私がやろうとしていることを達成します。

基本的に、20GBのディスクにUbuntu 14.04をインストールしました(「ガイド-ディスク全体を使用してLVMをセットアップ」)。次に、クリーンな80GBディスクをマシンに物理的に追加し、「sdb」として検出しました。

基本的に私の質問は、2つのドライブ(20GBと80GB)を表示するのではなく、1つのドライブ(100GB)を表示するように、新しいディスク(80GB)から割り当てられた容量をマシンに追加/結合できるようにすることです。RAIDやその他の特別なアドオンについては心配していません。

私はLinuxには多少慣れていませんが、これを実現するにはLVMを使用する必要があることを理解しています。

私を助けたり、役立つガイド/チュートリアルにリンクしたりできる人がいれば、とても感謝しています!これも必要かどうかはわかりませんが、「fdisk -l」と「/ etc / fstab」の出力は次のとおりです。

fdisk出力(短縮):

Disk /dev/sda: 21.5 GB, 21474836480 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1    *       2048      499711      248832   83  Linux
/dev/sda2          501758    41940991    20719617    5  Extended
/dev/sda5          501760    41940991    20719616   8e  Linux LVM

Disk /dev/sdb: 85.9 GB, 85899345920 bytes
Disk /dev/sdb doesn't contain a valid partition table

Disk /dev/mapper/ubuntu--vg-root: 20.4 GB, 20392706048 bytes
Disk /dev/mapper/ubuntu--vg-root doesn't contain a valid partition table

Disk /dev/mapper/ubuntu--vg-swap_1: 801 MB, 801112064 bytes
Disk /dev/mapper/ubuntu--vg-swap_1 doesn't contain a valid partition table

/ etc / fstab(短縮):

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
/dev/mapper/ubuntu--vg-root /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
UUID=26710773-7a64-4f34-a34e-0057cb1739d7 /boot           ext2    defaults        0       2
/dev/mapper/ubuntu--vg-swap_1 none            swap    sw              0       0

回答:


53

ネット上のランダムガイドとチュートリアルの組み合わせを確認した後、Ubuntu Server 14.04マシンにディスクを正常に追加し、複数のハードドライブが1つのドライブとして表示されるように基本的にセットアップすることができました。これを行うために、LVMを使用しました。

ある時点でこれを行いたいと思う人を助けるために、私はここで私がやったことを投稿します。


これらの手順は、マシンにすでにUbuntuをインストールし(「ガイド-ディスク全体を使用してLVMをセットアップする」)、追加のディスクを物理的に追加する以外は、基本的にゼロから始めることを前提としています。これらの手順は、マシン上に既存のデータがある場合は機能する可能性がありますが、これを実行しても安全かどうかはわかりません。

これらのコマンドは、次の情報を想定しており、設定によって異なります。

  • 新しいディスクは「sdb」です
    • これは次を実行することで見つけることができます ls /dev/sd*
  • ボリュームグループ名が「ubuntu-vg」であること
    • これは次を実行することで見つけることができます vgdisplay
  • 論理ボリュームのパスが「/ dev / ubuntu-vg / root」であること
    • これは次を実行することで見つけることができます lvdisplay
  • 新しいディスクは20GBです
    • ディスクの大きさがわかっていれば幸いです。

  1. Logical Volume Managerをインストールします(これを行う必要がある場合とそうでない場合があります)。

    sudo apt-get install system-config-lvm
    
  2. 新しいディスクを物理ボリュームに変換します(この場合、新しいディスクは「sdb」です)。

    sudo pvcreate /dev/sdb
    
  3. 'vgextend'を使用して、物理ボリュームをボリュームグループに追加します。

    sudo vgextend ubuntu-vg /dev/sdb
    
  4. 物理ボリュームを論理ボリュームに割り当てます(新しいディスクサイズでボリュームサイズを拡張します)。

    sudo lvextend -l +100%FREE /dev/ubuntu-vg/root
    
  5. 追加のスペースを使用するように、論理ボリューム上のファイルシステムのサイズを変更します。

    sudo resize2fs /dev/ubuntu-vg/root
    

それはそれを行う必要があります。5つの簡単なステップ!また、再起動する必要はありません。実行するだけdf -hで、新しいディスク容量が正しく割り当てられていることが表示され、実行中のWebアプリが新しいディスク容量を取得します。


2
lvextend -l +100%FREE代わりにすべての空き領域を使用するように拡張することができますlvextend -L+20G
nathancahill

を使用cat /proc/partitions; /sbin/rescan-scsi-bus; cat /proc/partitionsしてsdb、新しくインストールされたドライブの名前などを検索できます。
O.ジョーンズ

1
これは動作するはずです。ただし、ディスク全体を論理ボリュームとして使用することには注意してください。代わりに、ディスクをパーティション分割し、そのディスク上の1つ以上のパーティション内にLVMを作成することをお勧めします。この手順は、将来、LVM以外のスペースが必要または必要な場合に、柔軟性を提供します。また、すべてのディスクがパーティション分割されていることを前提とするツールを実行すると、より適切に機能する場合があります。このようなツールの重要な例は知りませんが、将来実行する必要がある、または実行する必要があるランダムユーティリティでどのような仮定が生じるかはわかりません。
ロッド・スミス

Rod Smithのコメントから、それは、/ dev / sdbでfdiskを最初に実行し、すべてのスペースを新しいパーティションに割り当て、パーティションを「Linux LVM」(タイプ8e)として設定し、すべての/ devを置き換える必要があることを意味します/ dev / sdb1を使用した指示の/ sdbエントリ
mtalexan

素晴らしいガイド。lsblkただし、使用可能なディスクの確認はより美しく行われます。ただし、RHEL7でテストします。
erikbwork

1

14.04 64ビットデスクトップで3X500GB SATAドライブを使用して大きなLVMディスクをセットアップしようとしました。インストール中にデバイスエラーで失敗しました。256Gを超えるドライブがエクステントの制限であることを示すリンクを見つけましたが、ここに該当するかどうかはわかりません。

また、RAID(RAID 1 / boot 300MB、RAID 0スワップ2GB、および/ RAID 5その他すべて)のセットアップも試みました。その他の障害。

$ sudo apt-get install -y mdadm

ライブCDの「インストールせずにUbuntuを試す」オプションから、MDADMをインストールできます。まだ運がありません。GPartedの検出は少し変更されているようで、LVMの一部のボリュームまたはRAID / dev / mdXの一部のボリュームは、すべてファイルシステムが既に指定されていない限り、ピックアップされません。

$ sudo mkfs.etx4 / dev / md2

また、RAID構成には現在、さらに多くの課題があります。MDADMはインストールの/ target / usr / sbinパッケージリストに追加されていないようで、そこにインストールするので、再起動時にインストールが開始されるのは大変な苦労であり、単に時間も忍耐もありません、ほんの数時間後の作業で、GRUBの問題のためにこれらの新しいWindows 8パフォーマンスハッキングされたマザーボード(UEFI)でまだ起動しなかったことがわかりました。

LVMをUbiquityからインストールすると、/(ルートパーティションにさらにディスクを追加する必要があるまで、インストール全体が破壊される可能性が非常に高くなります。LVMサイズ変更操作は失敗し続け、再び1に戻ります。 。

14.04サーバーインストーラーのPartmanを試してみると、時間を節約できます。

14.04サーバーインストーラーを起動すると、アーキテクチャが適切に識別され、MDADMがインストールされ、grubが3つのディスクすべてにインストールされ、すべてが正常に機能します。

3台のディスク(500GB SATA)

それぞれ3つのパーティション。fdiskでLinux Raidタイプに設定されたすべてのパーティション。

RAID 1 / boot、300MBパーティション、RAID 0スワップ、2GBパーティション、およびRAID 5 /、500GB(残っているものは何でも)

$ sudo fdisk -l
Device Boot Start End Blocks Id System
/ dev / sda1 2048 616447 307200 83 Linux
/ dev / sda2 616448 4810751 2097152 83 Linux
/ dev / sda3 4810752 976773167 485981208 fd Linux raid autodetect

デバイスブートスタートエンドブロックIDシステム
/ dev / sdc1 * 2048 616447 307200 83 Linux
/ dev / sdc2 616448 4810751 2097152 83 Linux
/ dev / sdc3 4810752 976773167 485981208 fd Linux raid autodetect

デバイスブートスタートエンドブロックIDシステム
/ dev / sdb1 2048 616447 307200 83 Linux
/ dev / sdb2 616448 4810751 2097152 83 Linux
/ dev / sdb3 4810752 976773167 485981208 fd Linux raid autodetect
...

$ sudo ls / dev / md *
/ dev / md0 / dev / md1 / dev / md2

/ dev / md:
0 1 2

$ sudo mdadm -D / dev / md0
/ dev / md0:
Version:1.2
Creation Time:Wed Aug 6 13:03:01 2014
Raid Level:raid1
Array Size:306880(299.74 MiB 314.25 MB)
Used Dev Size:306880(299.74 MiB 314.25 MB)
Raid Devices:3
Total Devices:3
Persistence:Superblock is persistent

Update Time : Mon Aug 11 19:51:44 2014  
      State : clean   

アクティブなデバイス:3つの
動作中のデバイス:3つの
故障したデバイス:0
スペアデバイス:0

      Name : ubuntu:0
      UUID : 03a4f230:82f50f13:13d52929:73139517
    Events : 19

番号メジャーマイナーRaidDevice State 0 8 1 0 active sync / dev / sda1 1 8 17 1 active sync / dev / sdb1 2 8 33 2 active sync / dev / sdc1

$ sudo mdadm -D / dev / md1 / dev / md1:Version:1.2 Creation Time:Wed Aug 6 13:03:31 2014 Raid Level:raid0 Array Size:6289920(6.00 GiB 6.44 GB)Raid Devices:3 Total Devices: 3永続性:スーパーブロックは永続的です

更新時間:2014年8月6日水13:03:31 2014状態:アクティブなデバイスのクリーニング:3つの稼働中のデバイス:3故障したデバイス:0スペアデバイス:0

Chunk Size : 512K

     Name : ubuntu:1
      UUID : 9843bdd3:7de01b63:73593716:aa2cb882
    Events : 0

番号メジャーマイナーRaidDevice State 0 8 2 0 active sync / dev / sda2 1 8 18 1 active sync / dev / sdb2 2 8 34 2 active sync / dev / sdc2

$ sudo mdadm -D / dev / md2 / dev / md2:Version:1.2 Creation Time:Wed Aug 6 13:03:50 2014 Raid Level:raid5 Array Size:971699200(926.68 GiB 995.02 GB)Used Dev Size:485849600(463.34 GiB 497.51 GB)RAIDデバイス:3合計デバイス:3永続性:スーパーブロックは永続的

更新時間:月8月11日19:54:49 2014状態:アクティブアクティブデバイス:3動作中のデバイス:3失敗したデバイス:0スペアデバイス:0

    Layout : left-symmetric
Chunk Size : 512K

      Name : ubuntu:2
      UUID : 6ead2827:3ef088c5:a4f9d550:8cd86a1a
    Events : 14815

番号メジャーマイナーRaidDevice State 0 8 3 0 active sync / dev / sda3 1 8 19 1 active sync / dev / sdb3 3 8 35 2 active sync / dev / sdc3

$ sudo cat / etc / fstab
'#/ etc / fstab:static file system information。'
'#'
'#' blkid 'を使用して、
デバイスの汎用一意識別子を出力します。これは、デバイスを指定するより堅牢な方法としてUUID =で使用できます
。fstab(5)を参照してください。 '
'#'
'#'
'#/インストール中に/ dev / md126にあった'
UUID = 2af45208-3763-4cd2-b199-e925e316bab9 / ext4 errors = remount-ro 0 1
'#/ bootはインストール中に/ dev / md125にあった'
UUID = 954e752b-30e2-4725-821a-e143ceaa6ae5 / boot ext4 defaults 0 2
'
UUID = fb81179a-6d2d-450d-8d19-3cb3bde4d28a none swap sw 0 0

今サラブレッドのように実行しています。

32ビットのハードウェアを使用している場合、これはうまくいきませんが、この時点では、ソフトRAIDは単一のディスクLVMよりも小さいもの、JBODはこれより古いものよりも悪い選択だと思います。

ありがとう。


パートマンは時間を節約します。14.04サーバーインストーラーを起動すると、アーキテクチャが適切に識別され、MDADMがインストールされ、すべてが正常に機能します。役に立つ場合のセットアップの概要は次のとおりです。
スパイダーダイン14

1

この手法は、128GB SSDプライマリおよび2TB HDD拡張で機能しました。
物理ボリュームをボリュームグループに追加するときに「ubuntu-vg」を使用して問題が発生した場合は、コマンドを発行してください

sudo vgdisplay 

通常、ボリュームグループの名前の形式はNAME_OF_COMPUTER-vgであるため、システムに名前が付けられSKYNETている場合、ボリュームグループにはおそらく名前が付けられます

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