728x90
반응형

문 서 명 : Redhat Linux RAW Device 관리

문 서 버 전 : Ver_1.0

문 서 구 분 :  Manual  □ Summary

작 성 일 : 2016 04 19

작 성 자 : 우리들의 삶

테 스 트 환 경 : Redhat Entprise Linux 6.7

출 처 : 본인


LVM을 통해 디스크를 LV(Logical Volume)형태로 생성한 경우 아래와 같이 RAW Device로 변환하여,
볼륨을 사용할 수 있다.

본 문서에는 두 가지 방법을 소개하는데, RAW Device가 소수일 때와 다수일 때 작업하는 방법에 대해 소개한다.

목록 
  1. RAW Device가 단수일 때
  2. RAW Device가 복수일 때
  3. RAW Device <-> LV mapping 정보 확인



  1. RAW Device가 단수일 때

[root@hsy-test ~]# raw /dev/raw/raw1 /dev/vg_raw/dev1G1  <-- raw 명령어를 통해 LV를 RAW Device로 변환한다.
/dev/raw/raw1:  bound to major 253, minor 2
tip : 
RAW Device는 반드시 /dev/raw/rawN 형식으로 작성되어야 한다.
# raw /dev/raw/rawN /dev/VG_Name/LV_Name  <- 이러한 구문으로 명령을 작성해야 한다.


[root@hsy-test ~]# raw -qa  <- 설정된 raw device 정보를 확인
/dev/raw/raw1:  bound to major 253, minor 2


[root@hsy-test ~]# cat /etc/udev/rules.d/60-raw.rules
# Enter raw device bindings here.
#
# An example would be:
#   ACTION=="add", KERNEL=="sda", RUN+="/bin/raw /dev/raw/raw1 %N"
# to bind /dev/raw/raw1 to /dev/sda, or
#   ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/bin/raw /dev/raw/raw2 %M %m"
# to bind /dev/raw/raw2 to the device with major 8, minor 1.

ACTION=="add", ENV{MAJOR}=="253", ENV{MINOR}=="2", RUN+="/bin/raw /dev/raw/raw1 %M %m"  <-- 구문 추가
# LV의 MAJOR 번호와 MINOR 번호를 raw1로 정의함으로 써 재부팅 후에도 같은 LV가 같은 RAW Device로 생성된다.

ACTION=="add",KERNEL=="raw*" OWNER="5009872",GROUP="5009872",MODE="660"  <-- 구문 추가
# 생성된 RAW Device의 Owner, Group, permission 을 정의 한다.
[root@hsy-test ~]#


[root@hsy-test ~]# start_udev  <- udev 서비스를 시작
Starting udev: [  OK  ]
[root@hsy-test ~]#

[root@hsy-test ~]# raw -qa | cut -d ":" -f 1 | xargs -i{} ls -l {}  <-- # raw -qa 명령은 RAW Device를 확인하는 명령이다.
crw-rw---- 1 5009872 5009872 162, 1 Apr 18 11:21 /dev/raw/raw1
[root@hsy-test ~]#


  1. RAW Device 가 복수 일 때

마찬가지로 볼륨을 LV까지 만든 다음 아래와 같이 /etc/udev/rules.d/60-raw-rules 파일을 수정 한다.

[root@hsy-test ~]# cat /etc/udev/rules.d/60-raw.rules
# Enter raw device bindings here.
#
# An example would be:
#   ACTION=="add", KERNEL=="sda", RUN+="/bin/raw /dev/raw/raw1 %N"
# to bind /dev/raw/raw1 to /dev/sda, or
#   ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/bin/raw /dev/raw/raw2 %M %m"
# to bind /dev/raw/raw2 to the device with major 8, minor 1.

ACTION!="add|change". GOTO="raw_end"   <- 아래 구문들의 'ACTION' "raw_end" 을 정의한다.
# Create raw character device mapping:
ENV{DM_VG_NAME}=="vg_test1", ENV{DM_LV_NAME}=="lv_test1", RUN+="/bin/raw /dev/raw/raw2 %N"
ENV{DM_VG_NAME}=="vg_test2", ENV{DM_LV_NAME}=="lv_test2", RUN+="/bin/raw /dev/raw/raw3 %N"
# VG_NAME, LV_NAME을 /dev/raw/rawN 으로 정의한다.

KERNEL=="raw*" OWNER="5009872",GROUP="5009872",MODE="660"
# 모든 RAW Device의 Owner, Group, permission 을 변경한다.

LABEL="raw_end"  <- 'ACTION' "raw_end" 을 마친다.


[root@hsy-test ~]# start_udev  <- udev 서비스를 시작
Starting udev: [  OK  ]
[root@hsy-test ~]#




  1. RAW Device <-> LV mapping 정보 확인

# raw -qa  <- RAW Device의 major number, minor number 확인
/dev/raw/raw1: bound to major 253, minor 8
/dev/raw/raw2: bound to major 253, minor 9

# lvs -o +lv_kernel_major,lv_kernel_minor   <- LV의 mager number, minor number 확인
LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert KMaj KMin
lv_test1 vg_test -wi-a----- 2.00g 253 8
lv_test2 vg_test -wi-a----- 2.00g 253 9




728x90
반응형

+ Recent posts