==================================================================================================

[ 시스템 설정을 위한 내용 ]

설치된 CentOS Server  : CentOS 6.5

설치된 Main Disk : S-ATA3 300GB

설치된 Storage : HP P2000 G3 FC

설치된 Storage 정보 : 12TB (Raid 5 구성, Usable=10TB)

==================================================================================================

 

리눅스를 사용하면서 디스크를 큰 용량을 사용하게 되는 경우가 있습니다. 스토리지를 이용하거나 NAS 를 사용하는 경우에

발생할 수 있을 것 같은데요... 기본적인 Disk 파티션으로는 MSDOS 형태를 띄기때문에 아래와 같이 2개의 문제점이 발생합니다.

 

a. 하나의 파티션에서 인식되는 용량한계 : 2Tb

b. 하나의 디스크 총 용량 인식한계 : 4Tb

 

위 같은 문제를 해결하기 위해 적용하는 것이 GPT 파티션을 적용하는 것입니다.

아래의 내용을 따라 Linux 에서 GPT 파티션을 사용해봅니다.

 

[ GPT Partition 사용가능 여부 체크 ]
]# cat /boot/config-2.6.32-431.el6.x86_64 | grep EFI

CONFIG_EFI=y
CONFIG_FB_EFI=y
CONFIG_EFI_VARS=y
CONFIG_EFI_PARTITION=y

위 내용들이 모두 "y" 값을 가지고 있어야 시스템에서 GPT 파티션을 지원하는 것입니다.


 

[ GPT Partition 생성 ]
파티션을 구성하는 가장 대표적인 명령어는 "fdisk" 라는 것은 리눅서!!! 라면 누구나 알고 계시겠지요?

다만, fdisk 를 이용하면 msdos 파티션을 인식하기 때문에 GNU 에서는 "parted" 라는 도구를 권하고 있습니다.

우선 parted 명령의 내용부터 알고 이어서 진행하겠습니다.

 - parted -

1. 정의 : 디스크의 파티셔닝 및 파티션 크기를 조절

 

2. 형식

# parted [Option] [Device]

 

- Option -

* h : help - 도움말 출력

* l : list - 리스트 형태로 정보를 출력

* s : 프롬프트를 출력시키지 않고 실행

* m : ":" 내용을 각 정보마다 출력시켜주어 파싱이 될 수 있음

 

위 처럼 parted 명령어를 이용하여 GPT 파티션을 적용해보자.

현재 제 시스템의 디스크 정보는 300Gb(/dev/sdb), 10Tb(/dev/sda) 이므로 이 정보를 가지고 진행합니다.

 

]# parted                       

============================================================= parted Tool Prompt =======

 

 

(parted) help                       //어떤 내용을 써야하는지 알기 위해 도움말 출력

============================================================= parted Tool help =======

※ 꼭 알아두어야 하는 부분은 표시해드린 부분입니다.

 


(parted) print                  //디스크의 정보 확인(오류 발생 방지)
============================================================= parted Tool Print Info ===

 

Number        : 생성된 파티션의 번호 (/dev/sda?? 형태로 적용됨)

Start, End    : 파티션의 시작과 종료 지점 (용량 형태로 출력)

Size             : 파티션의 크기

File system  : mkfs 또는 mkpartfs 명령어를 이용했을 경우 출력되는 파일시스템 타입

     (fat16, fat32, ext2, linux-swap, reiserfs 등이 올 수 있음.)

Flags           : 파티션의 상태정보를 출력

     (boot, root, swap, hidden, raid, lvm, lba, palo 등이 올 수 있음.)

 


(parted) mklabel gpt        //디스크의 파티션 정보를 GPT로 변경
============================================================= parted Tool mklabel Info ===

Warning: The existing disk label on /dev/sda will be destroyed and all data on this disk will be lost.
Do you want to continue?

Yes/No? yes


Warning: WARNING: the kernel failed to re-read the partition table on /dev/sda (Device or resource busy).
As a result, it may not reflect all of your changes until after reboot.

 

(parted) print   //변경된 GPT 파티션 정보 확인
============================================================= parted Tool Print Info ===

 

 

(parted) mkpart primary 0Gb 2048Gb  //파티션 작업을 위해 2개 파티션 생성
(parted) mkpart primary 2048Gb 4096Gb
 * Syntax : mkpart [diskType] [StartPoint] [EndPoint]

 

 

(parted) print   //파티션 정보를 확인
============================================================= parted Tool Print Info ===

 

 


(parted) quit   // parted Tool 종료
########################################################################################


]# fdisk -l /dev/sda
============================================================= fdisk Tool List Info =====

 

 

 

################################### File system 생성 ###################################

※parted 부분에서 print 를 이용하여 출력된 Number는 디바이스 명칭 및 파티션 번호로 사용됨.
   즉, 아래의 표 형태로 출력된다고 보시면 됩니다.

 

parted Tool

Partition 

Number 1

/dev/sda1

Number 2

/dev/sda2 

 

 

 

################################### 추가사항 ###################################

[ GPT Partition으로 LVM 구성 ]

리눅스를 사용하면서 데이터 백업이나 관리를 용이하게 하기위해 Volume 이라는 것을 구성하는 방법이

존재합니다. 볼륨구성에 대한 부분은 따로 게시글을 이용하여 설명 드리도록 하겠습니다.

추가내용의 경우는 GPT Partition 으로 생성한 부분을 LVM 으로 구성하기 위한 방법입니다.

어렵지 않으니 아래의 글을 참조하시기 바랍니다.

우선적으로 GPT Partition 은 생성 및 설정되어 있는 상태로 진행해야 하는 것을 기억해주세요.

 

 

(parted) print   //파티션 정보를 확인
============================================================= parted Tool Print Info ===

 

 

 

(parted) set 1 lvm on  // lvm 을 사용하려면 옵션을 on 상태로 Flags 정보를 변경해야함.
 * Syntax : #set [Number] lvm [status]


(parted) print
============================================================= parted Tool Print Info ===

  ※ "Flages" 항목에서 'lvm' 으로 내용이 추가됨을 확인할 수 있습니다.

 

(parted) quit   // parted Tool 종료

 

모든 내용이 적용되었으면, 파티션으로 인식하는 부분과 LVM 구성에 필요한 단계를 모두 완료되었으므로

해당내요을 이용하여 LVM 을 구성하시면 됩니다.

AND




Koon_근성

AND

[ 변수의 종류 ]
1. 지역변수

 

- 현재 자신의 쉘에서만 사용가능한 변수(#alias 유사)
     (변수 선언시 "소문자"로 선언)

2. 환경변수

- 현재 자신의 쉘 + 파생된 쉘 모두 사용가능한 변수(.bashrc / alias 유사)

- 시스템 전체 어떤 프롬프트에서도 사용할 수 있는 장점이 존재
     (변수 선언시 "대문자"로 선언)

 

 

[ 변수 활용하기 ]
1. 변수 선언
    - 지역변수로 선언 : #변수명=변수값

                          (ex : #a=ls)

    - 환경변수로 선언 : #export 변수명=변수값

                          (ex : #export B=ifconfig)


2. 변수 출력
    - $변수명 형태로 사용

 ex) #echo $a   : a 변수의 내용을 화면으로 출력
       #$B          : B 변수의 내용을 프롬프트로 출력(실행)

 

3. 변수 해제

- #unset 변수명

 

4. 종합 활용예제
  a. 지역변수 선언해보기
  - #a=ls
  - #echo $a
  - #$a (ls 명령어가 실행됨)


  b. 환경변수 선언해보기
  - #export AA='ls -al'
  - #echo $AA
  - #$AA
  - #env | grep AA


  c. PATH 값에 내용추가하기
  - #env | grep PATH   : PATH 내용 확인
  - #export PATH=$PATH:/etc/rc.d/init.d   : 정상 추가
  - #export PATH=/etc/rc.d/init.d             : 빠욤

 

AND