새로운 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
참고자료
'IT > 기초 지식' 카테고리의 다른 글
[Docker] NVIDIA Container Toolkit(NVIDIA Docker)의 동작원리 (0) | 2022.02.18 |
---|---|
[Docker/Linux] Docker상의 Volume에서 permission denied 에러가 발생할 때 해결법 (0) | 2022.02.10 |
[Docker/Linux] Linux환경에서 GPU가 적용된 Docker 컨테이너 만들기 (0) | 2022.02.09 |
[AWS/Linux] AWS EC2 인스턴스에 Ubuntu 데스크톱 환경 만들기 (0) | 2022.02.07 |
[bat] Windows의 배치 파일(*.bat) 작성법 (0) | 2022.02.04 |