IT/기초 지식

[AWS] 기존의 EC2 인스턴스에 새로운 EBS 연결(mount)하기

개발자 두더지 2022. 2. 9. 22:37
728x90

 새로운 EBS Volume을 생성해서 기존의 EC2 인스턴스에 그대로 mount 하면 아래와 같은 에러가 발생하게 된다.

$ sudo mount /dev/xvdf /mnt/data/
mount: /dev/xvdf is write-protected, mounting read-only
mount: wrong fs type, bad option, bad superblock on /dev/xvdf,
       missing codepage or helper program, or other error

       In some cases useful info is found in syslog - try
       dmesg | tail or so.

 따라서 mount하기 전에 EBS를 한 번 포맷을 해주고 연결할 필요가 있다. 그러한 포맷 방법을 이번 포스팅에서 설명하고자 한다(EBS의 생성방법이나, EBS를 Attach하는 방법은 메인이 아니므로 간략하게만 다루도록 하겠다).

 

 

포맷 방법


1. AWS Console에 로그인해서 원하는 사이즈의 EBS를 새로 생성한다.

 

2. EBS를 EC2에 Attach한다.

EBS Volume을 선택한 후 Actions > Attach Volume을 클릭한 후, 기존의 인스턴스 ID를 입력하여 Attach한다.

 

3. Attach됐는지 확인한다.

터미널을 열어서 아래의 커맨드로 Attach됐는지 확인하자.

$ lsblk

이 커맨드를 입력하면 다음과 같이 Attach되어 있는 EBS 리스트가 표시된다.

이번 포스팅에서는 예제로 xvdf 디스크를 포맷 > mount할 것이다.

NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda    202:0    0    8G  0 disk 
└─xvda1 202:1    0    8G  0 part /
xvdf    202:80   0  100G  0 disk

 

4. 파일 포맷을 확인하자.

Attach된 Volume의 파일 포맷을 확인하기 위해 file -s 커맨드를 입력한다.

$ file -s /dev/xvdf

포맷 전이므로 다음과 같이 data라고 표시된다.

/dev/xvdf: data

 

5. 디스크를 ext4 파일 시스템으로 포맷하기.

$ mkfs -t ext4 /dev/xvdf

그럼 출력결과로 다음과 같은 메시지가 표시될 것이다.

mke2fs 1.42.8 (20-Jun-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
6553600 inodes, 26214400 blocks
1310720 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
800 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
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 (32768 blocks): done
Writing superblocks and filesystem accounting information: done

 

6. 포맷이 되었는지 확인하기.

앞에서 사용했던 file -s 커맨드로 다시 확인해보자.

$ file -s /dev/xvdf

그럼 출력결과로 할당된 UUID가 표시된다. 이 상태에서는 mount할 수 있다.

/dev/xvdf: Linux rev 1.0 ext4 filesystem data, UUID=efec8dc6-53e1-4efc-ad17-4293f1a321e5 (needs journal recovery) (extents) (large files) (huge files)

 

7. 디스크를 mount하기

참고로 디스크 목록에서 봤던 이름은 사실 앞에 /dev가 생략되어 있으므로 mount할 때는 /dev를 입력해줘야한다. 뒤에는 마운트할 파일 경로를 작성한다. 이번 예제에서는 /mnt/data에 마운트했다.

$ mount /dev/xvdf /mnt/data

 

8. mount 결과 파일

아래의 커맨드로 마운트 위치와 사이즈, 사용량 남은 용량 등이 표시된다.

$ df -h /dev/xvdf

참고자료

https://qiita.com/saicologic/items/7614aef6da73b57275ce

728x90