pC.NET

Welcome to oscc.kr



 [Linux] LVM (Logical Volume Management) 설정하기
2012-12-27 20:57:49
Hit : 8535, Vote : 252

작성자 : 피시키드
- Link #1 : Linux-LVM-Logical-Volume-Management-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0

LVM 은 물리적 디스크들을 가상의 디스크로 합쳐서 관리할 수 있게 해주는 관리 툴입니다. 쉽게 말해서 실제로 하드디스크 3개가 있는데 이 하드를 하나인것처럼 관리할 수 있게 해줍니다. 예전에는 큰 하드 하나를 나눠서 쓰곤 했었는 데 요즘은 그냥 통째로 하나 쓰는게 제일 편합니다. 

360 , 160, 80 기가의 하드디스크가 있다면(제 실제 상황이 그렇습니다) 이 세개를 묶어서 마치 한개의 600 기가 하드 디스크 한개  인것처럼 할용할 수 있게 해줍니다. 

    /dev/sda = 80
    /dev/sdb = 160
    /dev/sdc = 360 (여기에 시스템이 설치되어 있슴)

/dev/sdc 에 이미 설치되어 있어서 변경하기는 귀찮고 또 새로 깔기 또한 귀찮으니까 /dev/sda 와   /dev/sdb 를 합쳐줄려고 생각합니다. (시스템이 설치되어 있으면 변경하는 게 무척 귀찮을 꺼 같더라고요)

설치는 간단합니다. 

    $ sudo apt-get install lvm2


초 간단 용어정리

PV (Physical Volume) 물리적 볼륨 
PE (Physical Extent) 물리적 범위 (?) 정도로 보시면 됩니다. 

LVM 파티션들을 만들어 줍니다. 

  
  $ sudo fdisk /dev/sda

    Command (m for help):  t
    Selected partition 1
    Hex code (type L to list codes): 8e
    Changed system type of partition 1 to 8e (Linux LVM)

    Command (m for help): w
    The partition table has been altered!

    Calling ioctl() to re-read partition table.
    Syncing disks.

두번째 하드디스크도 LVM 으로 만들어 줍니다. 8e 가 LVM 파티션입니다. 


 
   $ sudo fdisk /dev/sdb

    Command (m for help):  t
    Selected partition 1
    Hex code (type L to list codes): 8e
<object id="craziatistorycom8397209" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="100%" height="100%"> <param name="_cx" value="5953" /> <param name="_cy" value="5185" /> <param name="FlashVars" value="" /> <param name="Movie" value="http://s1.daumcdn.net/cfs.tistory/v/0/blog/plugins/CallBack/callback.swf?destDocId=callbacknestcraziatistorycom8397209&id=839&callbackId=craziatistorycom8397209&host=http://crazia.tistory.com&float=left&" /> <param name="Src" value="http://s1.daumcdn.net/cfs.tistory/v/0/blog/plugins/CallBack/callback.swf?destDocId=callbacknestcraziatistorycom8397209&id=839&callbackId=craziatistorycom8397209&host=http://crazia.tistory.com&float=left&" /> <param name="WMode" value="Transparent" /> <param name="Play" value="0" /> <param name="Loop" value="-1" /> <param name="Quality" value="High" /> <param name="SAlign" value="LT" /> <param name="Menu" value="0" /> <param name="Base" value="" /> <param name="AllowScriptAccess" value="always" /> <param name="Scale" value="NoScale" /> <param name="DeviceFont" value="0" /> <param name="EmbedMovie" value="0" /> <param name="BGColor" value="" /> <param name="SWRemote" value="" /> <param name="MovieData" value="" /> <param name="SeamlessTabbing" value="1" /> <param name="Profile" value="0" /> <param name="ProfileAddress" value="" /> <param name="ProfilePort" value="0" /> <param name="AllowNetworking" value="all" /> <param name="AllowFullScreen" value="false" /> <param name="AllowFullScreenInteractive" value="" /> <param name="IsDependent" value="0" /></object>    Changed system type of partition 1 to 8e (Linux LVM)

    Command (m for help): w
    The partition table has been altered!

    Calling ioctl() to re-read partition table.
    Syncing disks.

그리고, 파티션을 나누지 않고 하드디스크 전체를 PV로 만들려고 할 때에, 파티션 정보가 기록되어  있다면 PV로 만들어지지 않을 것이다. 파티션을 fdisk등으로 전부 지워도 마찬가지인데 해결 방법은  dd등의 명령으로 파티션 정보를 깨끗히 지워주면 된다. 예를 들면 다음과 같다.

    $ sudo dd if=/dev/zero of=/dev/sda bs=512 count=1
    
    1+0 레코드 들어옴
    1+0 레코드 나감
    512 바이트 (512 B) 복사됨, 0.00197004 초, 260 kB/초

/dev/sdb 도 같은 방식으로 처리해 줍니다. 

    $ sudo dd if=/dev/zero of=/dev/sdb bs=512 count=1

    1+0 레코드 들어옴
    1+0 레코드 나감
    512 바이트 (512 B) 복사됨, 0.0187204 초, 27.3 kB/초

이제 PV 들을 생성해 줍니다. 

    $ sudo pvcreate /dev/sda
    Physical volume "/dev/sda" successfully created

두번째 하드 디스크에도 PV 를 생성해 줍니다. 

  
  $ sudo pvcreate /dev/sdb
    Physical volume "/dev/sdb" successfully created

이제 VG (Volume Group 입니다. LV 아닙니다) 를 만들어 줍니다. 

    $ sudo vgcreate data_vg /dev/sda /dev/sdb
    Volume group "data_vg" successfully created

 이제 제대로 만들어 졌는지 확인해 보기로 합니다. 

    $ sudo vgscan
    Reading all physical volumes.  This may take a while...
    Found volume group "data_vg" using metadata type lvm2
 

만들어 졌군요. 이제 활성화 시켜보겠습니다. 

 
   $ sudo vgchange -a y
    0 logical volume(s) in volume group "data_vg" now active

확인해 봅니다. 

  
  $ sudo vgdisplay 

    --- Volume group ---
    VG Name               data_vg
    System ID             
    Format                lvm2
    Metadata Areas        2
    Metadata Sequence No  1
    VG Access             read/write
    VG Status             resizable
    MAX LV                0
    Cur LV                0
    Open LV               0
    Max PV                0
    Cur PV                2
    Act PV                2
    VG Size               223.57 GiB
    PE Size               4.00 MiB
    Total PE              57235
    Alloc PE / Size       0 / 0   
    Free  PE / Size       57235 / 223.57 GiB
    VG UUID               X7YuJy-lqY7-gwKQ-2DzZ-iaKe-adpY-eNVykk
 

vgdisplay 가 더 자세한 정보를 보여주는 군요. 180 기가랑 60 기가를 합쳐서 위에 나오는 수치가  됐군요. 설마 아직도 180 기가가 진짜 180 기가인지 아시는분 안계시겠지요? ㅎㅎ 

이제야 모든 준비가 끝났습니다. LV (Logical Volume)를 생성할 시간입니다. VG 의 크기인 223 을  기억하시고 

    -L 옵션은 크기 입니다. 저는 VG 크기의 223G 를 줄것입니다. 
    -n 은 LV 의 이름입니다. 저는 data 라고 줄것입니다. 

   
$ sudo lvcreate -L 223G -n data data_vg
     Logical volume "data" created
 

/dev/data_vg/data 라는 심볼릭 링크가 생긴것을 확인하실 수 있습니다. 자 이제 만들어진 LV 를 포맷하는 일만 남았습니다. ext4 를 쓰고 있으니까 ext4 로 포맷을 해주어야 겠지요?

    $ sudo mkfs.ext4 /dev/data_vg/data
    mke2fs 1.41.14 (22-Dec-2010)
    Filesystem label=
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    Stride=0 blocks, Stripe width=0 blocks
    14614528 inodes, 58458112 blocks
    2922905 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=4294967296
    1784 block groups
    32768 blocks per group, 32768 fragments per group
    8192 inodes per group
    Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424, 20480000, 23887872

    Writing inode tables: done                            
    Creating journal (32768 blocks): done
    Writing superblocks and filesystem accounting information: done

    This filesystem will be automatically checked every 31 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.


이제 설정 끝입니다. 이제 편하게 마운트 해주시면 되겠습니다.

    $ mkdir data
    $ sudo mount /dev/data_vg/data ./data

매번 수동으로 하기 귀찮으니 fstab 에 등록 시켜줍니다. 아래 내용을 추가합니다. 

    $ sudo emacs /etc/fstab

    /dev/data_vg/data         /home/crazia/data    ext4    default    0   0

이제 적당한 곳에 심볼릭 링크를 걸어서 일반 디렉토리처럼 써 주시며 됩니다.  <script src="http://crazia.tistory.com/plugin/CallBack_bootstrapper?&src=http://s1.daumcdn.net/cfs.tistory/v/0/blog/plugins/CallBack/callback&id=839&callbackId=craziatistorycom8397209&destDocId=callbacknestcraziatistorycom8397209&host=http://crazia.tistory.com&float=left&random=358" type="text/javascript"></script>

  피시키드
아하하하하-_-;;;
 2590
 14

잠깐!
글은 인터넷에서 자신을 나타내는 유일한 모습입니다.
한줄의 댓글이나 답글로도 피시키드님은 무척 기뻐할 것입니다.
댓글쓰기     작성자   패스워드


66
비밀글입니다  잠깐 공유용  
 temp
124 0 2017/10/12
65
비밀글입니다  테스트 #2 
 피시키드
1 0 2017/09/20
64
비밀글입니다  에디터 교체 테스트   1
 피시넷
3 0 2017/09/19
63
  .페이퍼  
 피시넷
738 149 2016/12/16
62
비밀글입니다  요절복통기계 
 피시키드
4 0 2016/03/04
61
  DIY 볼트메타 
 피시키드
1126 174 2015/10/25
60
  레이저각인 해주는 곳 (키보드) 
 피시키드
1435 166 2015/09/09
59
     1
 피시키드
2438 210 2014/01/15
58
  m1에 debian 설치 
 피시키드
3090 236 2013/08/28
57
  지하철 역사안내도 
 피시넷
2663 225 2013/08/19
56
  하드용량 제한 
 피시키드
3685 291 2013/06/20
55
  드로롤로로로   1
 피시키드
2564 198 2013/06/15
54
  AjaxPlorer3.2 설치형 웹하드와 사이트 계정 연동 
 피시키드
11213 208 2013/05/28
53
  공대생의 흔한 키보드 
 피시넷
2996 198 2013/05/09
52
  CMOS Memory MAP 
 피시키드
15885 205 2013/04/23
51
  IQ슈퍼 산수 
 피시키드
3284 191 2013/04/16
50
  포고플러그에 데비안 설치 
 피시키드
3460 201 2013/04/09
49
  개드립 URL 
 피시키드
3004 216 2013/03/27
48
  debian 에서 mysql 설치 
 피시키드
3113 207 2013/03/27
47
  fckeditor 사용방법 
 피시키드
2805 200 2013/03/27
46
  마이크로닉스 SL-10 케이스 로고 
 피시키드
3637 194 2013/03/27
45
  오성아크릴 영업시간 
 피시키드
3334 200 2013/01/09
44
  크롬에서 테스트중입니다.   2
 피시넷
2474 220 2013/01/08
  [Linux] LVM (Logical Volume Management) 설정하기 
 피시키드
8535 252 2012/12/27
42
  우분투 네트워크 초기화 
 피시키드
5294 250 2011/09/10
41
  st의 증거샷. (확실함!) 
 피시키드
2919 205 2011/08/31
40
  IPA 
 피시키드
2939 194 2011/08/19
39
  덤빌님의 발언 증거샷. 
 피시키드
2824 192 2011/08/18
38
  허접하고 간단한 USB을 이용한 XP설치 
 피시키드
4294 296 2011/03/12
37
  메일서버 설정 
 피시키드
3495 277 2011/01/24

1 [2][3]



Copyright (C) 1997-2018 All Rights Reserved.
Seasons 2