Linux Disk LVM 작업 절차
1. LVM 작업 전 Disk Type 변경
+++ 디스크 확인 +++
# fdisk -l
Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000f86d
Device Boot Start End Blocks Id System
Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000e8208
Device Boot Start End Blocks Id System
/dev/sda1 * 1 262 2097152 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 262 13316 104857600 83 Linux
/dev/sda3 13316 14360 8388608 82 Linux swap / Solaris
+++ 디스크 나머지 공간 할당 및 Type 변경 +++
# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Selected partition 4
First cylinder (14360-243201, default 14360): [Enter]
Using default value 14360
Last cylinder, +cylinders or +size{K,M,G} (14360-243201, default 243201): [Enter]
Using default value 243201
Command (m for help): p
Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000e8208
Device Boot Start End Blocks Id System
/dev/sda1 * 1 262 2097152 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 262 13316 104857600 83 Linux
/dev/sda3 13316 14360 8388608 82 Linux swap / Solaris
/dev/sda4 14360 243201 1838167648+ 83 Linux
-> Linux System Type으로 생성된 파티션은 LVM 파티션으로 변경
Command (m for help): t
Partition number (1-4): 4 // 파티션 Number 지정
Hex code (type L to list codes): 8e // 8e가 LVM이며, L로 리스트 확인 가능
Changed system type of partition 4 to 8e (Linux LVM)
Command (m for help): p
Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000e8208
Device Boot Start End Blocks Id System
/dev/sda1 * 1 262 2097152 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 262 13316 104857600 83 Linux
/dev/sda3 13316 14360 8388608 82 Linux swap / Solaris
/dev/sda4 14360 243201 1838167648+ 8e Linux LVM
Command (m for help): w // 저장
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
-> OS가 설치된 Disk의 경우 파티션 변경정보를 메모리에 바로 적재가 불가능하여, 재 부팅 필요
OS 미 설치 Disk의 경우 partprobe 명령을 통해 메모리에 변경 정보 적재 가능
+++ /dev/sdb 작업 +++
# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-243201, default 1): [Enter]
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-243201, default 243201): [Enter]
Using default value 243201
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.
# partprobe
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.
-> OS가 설치된 /dev/sda 영역에 대한 업데이트가 불가능 하다는 메시지
# cat /proc/partitions
major minor #blocks name
8 0 1953514584 sda
8 1 2097152 sda1
8 2 104857600 sda2
8 3 8388608 sda3
8 4 1838167648 sda4
8 16 1953514584 sdb
8 17 1953512001 sdb1
|
2. LVM 생성 절차
+++ 물리 볼륨 생성 +++
# pvcreate /dev/sda4 /dev/sdb1
Physical volume "/dev/sda4" successfully created
Physical volume "/dev/sdb1" successfully created
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda4 lvm2 a-- 1.71t 1.71t
/dev/sdb1 lvm2 a-- 1.82t 1.82t
-> fdisk를 통해 LVM System Type으로 변경 / pvs를 통한 생성 확인
ex) pvcreate [파티션 이름] [파티션 이름] … [파티션 이름]
+++ 볼륨 그룹 생성 +++
# vgcreate VG01 /dev/sda4 /dev/sdb1
Volume group "VG01" successfully created
# vgs
VG #PV #LV #SN Attr VSize VFree
VG01 2 0 0 wz--n- 3.53t 3.53t
-> 생성한 물리 볼륨 n개의 파티션을 VG01이라는 하나의 볼륨 그룹으로 묶어 n개의 파티션에 대한 디스크 용량이 합산된 볼륨 그룹 생성 / vgs를 통해 볼륨 그룹 생성 확인
ex) vgcreate [볼륨그룹명] [파티션 이름] [파티션 이름] … [파티션이름]
+++ 논리 볼륨 생성 +++
# lvcreate -L 50G -n APP VG01
Logical volume "APP" created
# lvcreate -L 30G -n oracle VG01
Logical volume "oracle" created
# lvcreate -L 20G -n oradata VG01
# lvcreate -L 1T -n oradata VG01
Logical volume "oradata" created
# lvcreate -l 100%FREE -n data VG01
Logical volume "data" created
# lvs
LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert
APP VG01 -wi-a----- 50.00g
data VG01 -wi-a----- 3.43t
oracle VG01 -wi-a----- 30.00g
oradata VG01 -wi-a----- 20.00g
-> 마운트 영역 별 공간 할당 및 LV Name 지정
ex) lvcreate -L [용량] -n [LV 명] [볼륨그룹 명] // 용량 지정 방법
ex) lvcreate -l [n%FREE] -n [LV 명] [볼륨그룹 명] // 볼륨 그룹 내 비율로 공간 지정 방법
|
3. 파일 시스템 포맷 및 튜닝
+++ 파일 시스템 포맷 +++
# mkfs.ext4 /dev/VG01/APP
# mkfs.ext4 /dev/VG01/oracle
# mkfs.ext4 /dev/VG01/oradata
# mkfs.ext4 /dev/VG01/data
-> RHEL 6.x에서는 ext4가 기본 파일시스템이므로, ext4로 포맷
+++ 파일 시스템 튜닝 +++
# tune2fs -c -1 -i 0 /dev/VG01/APP
# tune2fs -c -1 -i 0 /dev/VG01/oracle
# tune2fs -c -1 -i 0 /dev/VG01/oradata
# tune2fs -c -1 -i 0 /dev/VG01/data
tune2fs 1.41.12 (17-May-2010)
Setting maximal mount count to -1
Setting interval between checks to 0 seconds
-> -c -1 : 최대 마운트 횟수(-1로 설정 시 시스템 점검 시 마운트 횟수 제한 없음)
-> -i 0 : 파일 시스템 점검 간격(0으로 설정 미 점검)
|
4. 마운트 작업
+++ 마운트 지점 디렉토리 생성 +++
# mkdir /{APP,oracle,oradata,data}
+++ /etc/fstab 수정 +++
# vi /etc/fstab
### LVM Partition ###
/dev/VG01/APP /APP ext4 defaults 0 0
/dev/VG01/oracle /oracle ext4 defaults 0 0
/dev/VG01/oradata /oradata ext4 defaults 0 0
/dev/VG01/data /data ext4 defaults 0 0
-> 마운트 명에 대한 파일시스템 대한 내용 추가
ex) [파일시스템] [마운트지점] [ext파일시스템] [인자값] [파일시스템 체크 옵션]
# mount -a
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 99G 6.3G 88G 7% /
tmpfs 7.8G 72K 7.8G 1% /dev/shm
/dev/sda1 2.0G 97M 1.8G 6% /boot
/dev/mapper/VG01-APP 50G 180M 47G 1% /APP
/dev/mapper/VG01-oracle 30G 172M 28G 1% /oracle
/dev/mapper/VG01-oradata 20G 172M 19G 1% /oradata
/dev/mapper/VG01-data 3.4T 198M 3.3T 1% /data
|
'Linux > CentOS & RHEL' 카테고리의 다른 글
[OS] CentOS / Redhat 설치 서버 Memory 장착 확인(사이즈/슬롯) (0) | 2020.07.18 |
---|---|
[LVM] CentOS Disk LVM - xfs (0) | 2020.07.12 |
[압축] zstd를 통한 tar 파일 압축 (0) | 2020.07.09 |
[yum] yum 인스톨 시 패키지만 다운로드 할 경우 (0) | 2020.07.09 |
[OS] SSH root 계정 접속 제한 및 스위칭 유저 설정 (0) | 2020.07.07 |