VMware LVM 하드 디스크2개를 추가해 원하는 폴더에 마운트 해보자.
리눅스 운영체제에 VMware 가상 머신을 이용해 추가한 하드 디스크 장치 두 개를 합쳐 하나로 인식해 원하는 폴더에서 사용 할 수 있는 내용에 대해 간단히 정리해 보려고 합니다.
먼저 VMware 프로그램을 이용해 하드디스크를 추가하시려면 Edit virtual machine settings 메뉴를 선택하시면 됩니다.
Add 버튼을 누르시고 Hard Disk 선택 후 Next 선택. 이후 과정은 이미지를 참고하시면 좋을 것 같습니다. 하드 디스크를 2개 추가하는 방식이기에 같은 방식으로 하드 디스크 하나를 추가로 더 추가하시면 됩니다. 연습으로 진행하는 것이기에 5GB 하드 디스크 2개를 추가 하였습니다.
위와 같이 하드디스크 장치를 두 개 추가한 뒤 root 로그인하신 후에 fdisk -l 명령어를 통해 추가한 장치를 확인하실 수 있습니다.
fdisk -l
sdb, sdc 장치가 추가되었으며 각각 5GB로 잡혀 있습니다.
추가한 하드 디스크 장치 두 개를 사용하기 위해서는 파티션을 생성 후 타입을 lvm 형식으로 지정해야 합니다.
fdisk /dev/sdb, n, 엔터, 엔터, 엔터, 엔터, 엔터, t, 8e, w 커멘드를 차례대로 입력 하시고 같은 방법으로 fdisk /dev/sdc, n, 엔터, 엔터, 엔터, 엔터, 엔터, t, 8e, w 지정하시면 됩니다.
[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xb260f7cc.
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):
Using default response p
Partition number (1-4, default 1):
First sector (2048-20971519, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):
Using default value 20971519
Partition 1 of type Linux and of size 10 GiB is set
Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'
Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xb260f7cc
Device Boot Start End Blocks Id System
/dev/sdd1 2048 20971519 10484736 8e Linux LVM
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
pvdisplay 명령어를 통해 추가한 하드 디스크 장치 두 개가 정상적으로 파티션 설정이 되었는지 확인하시면 됩니다.
pvdisplay
그리고 두 개의 장치를 하나로 인식 하기 위해 Volume Group을 생성하시면 됩니다. 저는 bc라는 이름을 사용해 볼륨 그룹을 생성하였습니다.
vgcreate bc /dev/sdb1 /dev/sdc1
그룹을 생성한 뒤 vgdisplay 명령어를 통해 그룹이 생성되었는지 확인합니다. VG name이 bc로 되어 있고 VG-Size가 5GB 하드 디스크 두 개가 하나로 합쳐 9.99GB로 표시되는 것을 확인할 수 있습니다.
추가한 Volume Group 이름으로 Logical Volume 용량을 모두 사용해 생성하였습니다.
lvcreate -l 100%FREE -n lv_data bc
Logical Volume 생성 후 데이터를 저장하고 사용하기 위해서 파일 시스템 생성까지 진행해 주시면 됩니다.
mkfs.ext4 /dev/bc/lv_data
이제 마운트 과정을 거치게 되면 새롭게 추가한 하드 디스크 장치 두 개를 원하는 폴더에서 추가한 장치의 용량을 사용할 수 있게 되었습니다. mkdir 명령어를 사용해 lv_data 폴더를 새롭게 만들어 추가한 장치를 마운트 하였습니다.
mkdir lv_data
mount /dev/bc/lv_data /lv_data
위 과정까지 무사히 끝내셨다면 새롭게 추가한 하드 디스크 두 개를 원하는 폴더에서 사용할 수 있게 되었습니다. 임의로 폴더를 만들었기에 데이터를 임의로 저장하지 않는 한 자동으로 쌓이는 데이터는 없습니다.
그러니 리눅스 운영체제에서 자주 사용하고 데이터 용량이 필요한 폴더에 다시 마운트를 진행하면 좋을 것 같습니다.
사용자 계정이 저장되는 home 폴더에 추가한 장치를 백업하고 마운트 하여 시스템 재시작 이후에도 설정이 유지된 상태로 정상적으로 로그인되는지 테스트해 보려고 합니다. home 폴더에 어떤 데이터가 있는지 확인해 봤습니다.
ll home
먼저 home 폴더에 있는 모든 데이터를 lv_data 폴더로 모두 복사하여 붙여넣어 백업을 진행했습니다.
cp -rp /home/* /lv_data
파일이 정상적으로 복사되었는지 확인해 보니 잘 백업이 되었습니다.
ll /lv_data
home에 있는 계정 데이터를 모두 옮겼으니 기존에 home 폴더에 있는 데이터는 모두 삭제하였습니다. 데이터를 모두 삭제한 후 su k1 명령어를 사용해 계정을 전환하려고 하니 정상적으로 로그인이 안 되는 과정까지 확인하였습니다.
기존에 home 폴더에 있는 마운트를 해제하고 새롭게 추가했었던 lv_data 폴더 마운트도 해제하였습니다. 마지막으로 LVM으로 추가했던 장치를 home 폴더에 mount를 진행하였습니다.
rm -rf /home/* #home 폴더에 있는 모든 데이터를 삭제
su k1 #기존에 사용하던 k1 계정으로 전환해 봄
umount /home #기존 home 폴더에 마운트 해제
umount /lv_data #새롭게 마운트 했었던 lv_data도 마운트 해제
mount /dev/bc/lv_data /home #새롭게 추가한 장치를 home 폴더에 마운트
위 과정까지 모두 끝나게 되면 기존에 사용하고 있었던 home 폴더의 데이터를 모두 이동하여 새롭게 추가한 LVM 장치에 저장되도록 설정을 마쳤습니다.
이제 마지막 과정으로 서버 전원이 꺼지고 다시 켜지는 상황에서도 마운트를 유지하기 위해 /etc/fstab 파일을 수정해야 합니다.
vi /etc/fstab
vi 내용 중 아래 내용을 추가해 주면 됩니다.
/dev/bc/lv_data /home ext4 defaults 1 2
마지막으로 리눅스 운영체제의 전원을 껐다가 켠 뒤에 su k1 명령어를 사용해 계정을 전환해 보니 문제없이 계정 사용 가능한 것을 확인했습니다.
df -h /home 명령어를 통해 파일 시스템과 용량을 통해 잘 적용되었는지도 확인해 보시면 좋을 것 같습니다.
df -h /home
윈도우에서는 하드디스크 장치를 연결만 하면 자동으로 인식해 사용할 수 있지만 리눅스 운영체제에서는 설정해야 하는 과정이 좀 더 복잡하게 필요해 보입니다. 개인적으로 이후에도 필요한 내용이라 생각되어 정리하였으며 필요하신 분들이 있다면 참고하시면 좋을 것 같습니다.