LVM으로 디스크 추가


26

나는 확실히이 전에 어딘가에서 여기에 대한 답이있어 (난 좀 가이드를 발견 여기에 ,하지만 불완전한 비트 드문 드문 될 듯)하지만 누군가가 나 또는 올바른 방향으로 적어도 포인트 나에게 도움을 수 있는지 궁금 해서요 내가 뭘했는지 알아봐

기본적으로 20GB 디스크에 Ubuntu 14.04 ( "안내-전체 디스크 사용 및 LVM 설정"사용)를 설치했습니다. 그런 다음 물리적으로 깨끗한 80GB 디스크를 머신에 추가했는데 'sdb'로 감지되었습니다.

기본적으로 내 질문은 새 디스크 (80GB)에서 내 컴퓨터로 할당 된 공간을 추가 / 결합하여 두 개의 드라이브 (20GB 및 80GB)를 표시하는 대신 단순히 하나의 드라이브 (100GB)를 표시하고 싶습니다. . RAID 또는 기타 특수 애드온에 대해 걱정하지 않습니다.

나는 리눅스를 처음 접했지만 이것을 달성하기 위해 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 시스템에 성공적으로 추가하고 하나의 단일 드라이브로 여러 개의 하드 드라이브가 표시되도록 기본적으로 디스크를 설정할 수있었습니다. 이를 위해 LVM을 사용했습니다.

어느 시점에서이 작업을 수행하려는 다른 사람을 돕기 위해 여기에 내가 한 일을 게시하겠습니다.


이 단계에서는 시스템에 이미 우분투를 설치 ( "안내-전체 디스크 사용 및 LVM 설정"을 통해)하지 않고 추가 디스크를 물리적으로 추가 한 것을 제외하고는 기본적으로 처음부터 시작한다고 가정합니다. 이 단계는 컴퓨터에 기존 데이터가있는 경우 작동 할 수 있지만이 작업이 안전한지 확실하지 않습니다.

이 명령은 다음 정보를 가정하며 설정에 따라 다릅니다.

  • 새 디스크는 'sdb'입니다
    • 이것은 실행하여 찾을 수 있습니다 ls /dev/sd*
  • 볼륨 그룹 이름이 'ubuntu-vg'
    • 이것은 실행하여 찾을 수 있습니다 vgdisplay
  • 논리 볼륨 경로가 '/ dev / ubuntu-vg / root'
    • 이것은 실행하여 찾을 수 있습니다 lvdisplay
  • 새 디스크는 20GB입니다
    • 디스크가 얼마나 큰지 알기를 바랍니다.

  1. 논리 볼륨 관리자를 설치하십시오 (이를 수행 할 필요가 있거나 필요하지 않을 수 있음).

    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새 디스크 공간이 올바르게 할당 된 것으로 표시되고 실행중인 웹앱은 새 디스크 공간을 가져옵니다.


2
lvextend -l +100%FREE대신에 사용 가능한 공간을 모두 사용 하도록 확장 할 수 있습니다.lvextend -L+20G
nathancahill

새로 설치된 드라이브 cat /proc/partitions; /sbin/rescan-scsi-bus; cat /proc/partitions의 이름을 찾는 데 사용할 수 있습니다 sdb.
O. Jones

1
이것은 작동해야합니다. 그러나 전체 디스크를 논리 볼륨으로 사용하지 않도록주의합니다. 대신 디스크를 분할하고 해당 디스크의 하나 이상의 파티션 내에 LVM을 생성하는 것이 좋습니다. 이 절차는 향후 비 LVM 공간을 원하거나 필요로하는 경우 유연성을 제공합니다. 모든 디스크가 파티션 된 것으로 가정하는 도구를 실행하는 경우에도 더 효과적 일 수 있습니다. 나는 그러한 도구의 중요한 예를 알지 못하지만, 미래에 원하거나 실행해야 할 임의의 유틸리티에서 어떤 가정이 생길 수 있는지 전혀 알지 못합니다.
로드 스미스

Rod Smith의 의견에 따르면 기계적으로는 / dev / sdb에서 fdisk를 먼저 실행하고 모든 공간을 새 파티션에 할당하고 파티션을 "Linux LVM"(유형 8e)으로 설정 한 다음 모든 / dev를 교체해야합니다. / dev / sdb1
mtalexan

훌륭한 가이드. 사용 가능한 디스크 검사는 더 아름답게 수행됩니다 lsblk. RHEL7에서 테스트합니다.
erikbwork

1

3X500GB SATA 드라이브가있는 14.04 64 비트 데스크탑에 큰 LVM 디스크를 설정하려고했습니다. 설치 중 장치 오류로 인해 실패했습니다. 256G 이상의 드라이브가 범위의 한계라는 링크를 찾았지만 여기에 적용되는지 모르겠습니다.

또한 RAID (RAID 1 / boot 300MB, RAID 0 swap 2GB 및 / RAID 5 이외의 다른 모든 것) 설정을 시도했습니다.

$ sudo apt-get 설치 -y mdadm

Live CD "Install Ubuntu Without Install"옵션에서 MDADM을 계속 설치할 수 있습니다. 아직 운이 없다. GParted 탐지는 약간 재 태그 된 것으로 보이며 파일 시스템이 이미 제공되지 않은 경우 LVM의 일부 볼륨 또는 RAID / dev / mdX의 일부 볼륨을 선택하지 않습니다.

$ sudo mkfs.etx4 / dev / md2

또한 RAID 구성은 현재 훨씬 더 많은 과제를 안고 있습니다. MDADM이 더 이상 설치의 / target / usr / sbin 패키지 목록에 추가되지 않은 것 같습니다. 설치시 다시 부팅 할 때 설치가 시작되는 것은 큰 시련 일 것입니다. 시간이나 인내심이 없습니다. GRUB 문제로 인해 새로운 Windows 8 성능 해킹 마더 보드 (UEFI)에서 몇 시간 더 작업 한 후에도 시작되지 않았다는 것을 알았습니다.

/ (루트 파티션에 디스크를 더 추가해야 할 때까지 유비 쿼티에서 LVM을 설치하면 전체 설치가 중단 될 가능성이 매우 높아집니다. 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
장치 부팅 시작 종료 블록 ID 시스템
/ dev / sda1 2048 616447 307200 83 Linux
/ dev / sda2 616448 4810751 2097152 83 Linux
/ dev / sda3 4810752 976773167 485981208 fd Linux raid 자동 감지

장치 부팅 시작 종료 블록 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 자동 감지
...

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

/ dev / md :
01 2

$ sudo mdadm -D / dev / md0
/ dev / md0 :
버전 : 1.2 제작
시간 : 수 8 월 6 일 13:03:01 2014
공격대 레벨 : raid1
배열 크기 : 306880 (299.74 MiB 314.25 MB)
사용되는 Dev 크기 : 306880 (299.74 MiB 314.25 MB)
RAID 장치 : 3
총 장치 : 3
지속성 : 수퍼 블록이 영구적입니다

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

번호 Major Minor Raid 장치 상태 0 8 1 0 활성 동기화 / dev / sda1 1 17 1 1 활성 동기화 / dev / sdb1 2 33 3 2 활성 동기화 / dev / sdc1

$ sudo mdadm -D / dev / md1 / dev / md1 : 버전 : 1.2 제작 시간 : 수 8 월 6 일 13:03:31 2014 레이드 레벨 : raid0 어레이 크기 : 6289920 (6.00 GiB 6.44 GB) 레이드 디바이스 : 3 총 디바이스 : 3 지속성 : 수퍼 블록은 영구적입니다

업데이트 시간 : 수 8 월 6 일 13:03:31 상태 : 클린 활성 장치 : 3 작동 장치 : 3 고장난 장치 : 0 예비 장치 : 0

Chunk Size : 512K

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

번호 Major Minor Raid 장치 상태 0 8 2 0 활성 동기화 / dev / sda2 1 8 18 1 활성 동기화 / dev / sdb2 2 34 34 2 활성 동기화 / dev / sdc2

$ sudo mdadm -D / dev / md2 / dev / md2 : 버전 : 1.2 제작 시간 : 수 8 월 6 일 13:03:50 2014 공격대 레벨 : raid5 배열 크기 : 971699200 (926.68 GiB 995.02 GB) 사용되는 Dev 크기 : 485849600 (463.34 GiB 497.51 GB) RAID 장치 : 3 총 장치 : 3 지속성 : 수퍼 블록이 영구적입니다

업데이트 시간 : 월요일 8 월 11 일 19:54:49 상태 : 활성 활성 장치 : 3 작동 장치 : 3 실패한 장치 : 0 예비 장치 : 0

    Layout : left-symmetric
Chunk Size : 512K

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

번호 Major Minor Raid 장치 상태 0 8 3 0 활성 동기화 / dev / sda3 1 8 19 1 활성 동기화 / dev / sdb3 3 35 35 2 활성 동기화 / dev / sdc3

$ sudo cat / etc / fstab
'# / etc / fstab : 정적 파일 시스템 정보.'
'#'
'#'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 기본값은 0 2
'
UUID = fb81179a-6d2d-450d-8d19-3cb3bde4d28a 스왑 없음 sw 0 0

이제 순종처럼 달리기.

32 비트 하드웨어를 사용하는 경우 이것이 작동하지 않지만,이 시점에서 소프트 RAID는 작은 디스크의 경우 단일 디스크 LVM보다, 더 오래된 것의 경우 JBOD보다 나쁜 선택 일 수 있습니다. .

감사.


Partman은 하루를 저장합니다. 14.04 서버 설치 프로그램으로 부팅하여 아키텍처를 잘 식별하고 MDADM을 설치했으며 모든 것이 잘 작동합니다. 다음은 유용한 경우에 대한 설정 요약입니다.
spyderdyne

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.