본문 바로가기

Tech/LVM

Linux 디스크 포맷과 마운트

이번 포스팅은 디스크 포맷과 마운트를 하는 방법에 대해서 알아본다. 이 부분은 딱히 LVM과 관련이 없지만 이전 포스트인 "LVM을 활용해 논리적 볼륨을 구성해보자" 에 이어서 진행한다.

 

개요

우리가 이전에 만든 LV 는 그저 블록 디바이스 이다. 블록 디바이스는 그저 뭉태기(블록)단위로 쪼개 놓은 메모리(RAM 을 말하는게 아니다)에 불과하다. 물론 그냥 이 자체로 써도 상관은 없지만 그러면 너무 비효율적이라서 우리는 파일 시스템 이라는 개념을 사용해서 쉽게 사용할 수 있게 한다. 파일 시스템은 여러가지 종류가 있지만 오늘은 LV 를 ext4 로 포맷해서 마운트 하는 방법에 대해 알아본다.

포맷

fdisk 를 사용해서 format 하는 방법도 있지만 mkfs.xxx 같은 유틸을 통해서 좀 더 쉽게 사용 해보자.

아까 만들었던 LV 중 main-lv 를 포맷해보기로 하자. mkfs.ext4 을 사용해서 포맷하면 된다. 명령어 한방으로 전체 디스크를 포맷했다.

$ sudo mkfs.ext4 /dev/simple-vg/main-lv
mke2fs 1.46.5 (30-Dec-2021)
Creating filesystem with 26214400 4k blocks and 6553600 inodes
Filesystem UUID: 6a393763-5051-47da-9932-5e6e24d64117
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done
Writing inode tables: done
Creating journal (131072 blocks): done
Writing superblocks and filesystem accounting information: done

예제는 /dev/simple-vg/main-lv 경로로 사용했는데 mapper(/dev/mapper/simple--vg-main--lv)를 타겟해서 포맷해도 똑같은 효과를 낼 수 있다.

 

마운트

자 이제 포맷을 했으면 사용하기 위해서 마운트를 해야한다. 마운트란 특정 디바이스를 디렉토리에 맵핑하는 거라고 생각하면된다. 

먼저 마운트 하고싶은 경로에 디렉토리를 추가해보자.  mkdir 를 사용하면 해당 경로에 디렉토리를 만드는데 -p 옵션을 주면 경로 중에 없는 디렉토리가 있을 경우 자동으로 생성해준다. -p 옵션이 없으면 에러를 낸다.

$ sudo mkdir -p /mnt/main/

디렉토리가 잘 만들어졌으면 아까 포맷한 디바이스를 디렉토리에 마운트 시켜보자.

$ sudo mount /dev/simple-vg/main-lv /mnt/main/

이제부터 /mnt/main 은 /dev/ubuntu-vg/ubuntu-lv 에 맵핑되지 않고, /dev/simple-vg/main-lv 에 맵핑된다. df 를 이용해서 확인해보면 해당 디렉토리 /mnt/main 에 대해서 main-lv 에 맵핑되어있는 것을 확인할 수 있다 (현재 df 에서는 mapper 의 경로로 보여주는 것 같다)

$ df -h
Filesystem                         Size  Used Avail Use% Mounted on
tmpfs                              1.6G  1.5M  1.6G   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv   98G  6.6G   87G   8% /
tmpfs                              7.8G     0  7.8G   0% /dev/shm
tmpfs                              5.0M     0  5.0M   0% /run/lock
/dev/sda2                          2.0G  127M  1.7G   7% /boot
/dev/sda1                          1.1G  5.3M  1.1G   1% /boot/efi
tmpfs                              1.6G  4.0K  1.6G   1% /run/user/1000
/dev/mapper/simple--vg-main--lv     98G   24K   93G   1% /mnt/main

 

 

하지만 여기서 끝이 아니다. 그냥 이렇게 마운트하고, OS를 재부팅하면 마운트가 풀리게 된다. 그래서 파일시스템 정보를 기록해주어야 하는데 /etc/fstab 에 기록해주면 OS 부팅시 자동으로 마운트를 해주게 된다. vi 나 nano 같은 에디터로 파일을 /etc/fstab 을 열어서 내용을 추가해주자

$ sudo vi /etc/fstab

그러면 아무 것도 건들지 않고, 아래 항목을 파일 끝에 추가합니다.

/dev/simple-vg/main-lv  /mnt/main       ext4    defaults,nofail 0       0

순서대로 장치/마운트 디렉토리/파일시스템 타입/옵션/dump 관련 설정/파일 점검 옵션 이다. 이렇게 하면 재부팅해도 자동으로 마운트 된다. 아까 위에서 마운트가 안 했다면 아래 mount -a 옵션을 통해서 fstab 에 기록된 장치들 중 마운트 되지 않은 장치들을 한 번에 마운트 시킬 수 있다.

$ sudo mount -a

 

자 여기까지 LVM 구성부터 포맷 마운트까지 알아봤다. 기본적으로 이정도만해도 디스크를 관리할 수 있으며 추후 LVM 관련되어서 Mirror, Strip 등 포스팅을 할 예정이다.

'Tech > LVM' 카테고리의 다른 글

LVM 볼륨 미러링  (0) 2022.07.02
LVM을 활용해 논리적 볼륨을 구성해보자  (0) 2022.06.30
LVM (Logical Volume Manager) 개념  (0) 2022.06.29