- 인쇄
- PDF
fstab 사용
- 인쇄
- PDF
VPC 환경에서 이용 가능합니다.
리눅스 fstab에 대한 설명, 사용 방법과 수정 방법을 안내합니다.
사용하기 전에
Q. fstab 이란 무엇인가요?
- /etc/fstab은 부팅 단계에서 마운트 되어야 할 볼륨 정보들이 저장되는 곳입니다.
- 파일의 각 행은 모두 6개의 항목으로 구분되어 있으며 다음과 같습니다.
- (장치명), (마운트포인트), (파일 시스템), (옵션), (dump 설정), (fsck 설정)
- 각 항목은 Tab 또는 Space로 구분합니다.
fstab 사용하기
장치명
- 사용자가 보유한 볼륨 이름을 뜻합니다.
blkid
명령어를 통해 얻은 UUID로 마운트할 수 있습니다.- 예시에서는 '/dev/xvdb1'을 장치명으로 사용하였습니다.
마운트 포인트
- 볼륨을 마운트하려는 위치를 뜻합니다.
- 절대 경로로 명시해 주십시오.
파일 시스템
- 볼륨을 포맷할 때 사용한 파일시스템을 의미합니다.
OS에 따라 권장하는 파일 시스템이 다릅니다.
- CentOS 6: ext4
- CentOS 7: xfs
- Ubuntu Server: ext4
마운트 옵션
- 필요한 옵션만 사용할 경우 각 옵션을 쉼표(,)로 구분하여 작성해 주십시오. 옵션들 사이에 공백은 두지 않습니다.
- 예시에서는 defaults 옵션을 사용하였습니다.
- 해당 옵션에는 rw, nouser, auto, exec, suid 속성이 포함됩니다. 각 속성의 내용은 다음과 같습니다.
- defaults: 아래의 auto, rw, nouser, exec, suid 옵션들의 속성을 모두 가지는 옵션
- auto: 부팅 시 자동 마운트
- noauto: 부팅 시 자동 mount 하지 않음
- rw: 읽기, 쓰기 모두 가능하도록 마운트 (read and write)
- ro: 읽기 전용 (read only)
- nouser: root 계정만 마운트 가능
- user: 일반 계정도 마운트 가능
- exec: 파일 실행 허용
- suid: SetUID와 SetGID 허용
- nofail: 오탈자 등의 이유로 마운트에 실패했을 때, 오류 발생한 볼륨 제외 후 부팅, 오류가 발생해도 부팅 가능하도록 해주는 마운트 옵션
아래 예시에서 볼 수 있듯이 UUID의 불필요한 따옴표나 'default' 오탈자로 인해 오류가 발생해도 nofail 옵션이 있으므로 해당 스토리지를 skip하여 정상으로 부팅됩니다.
dump 설정
- 0은 dump 되지 않는 파일 시스템입니다.
- 1은 백업 등의 목적으로 dump 가능한 파일 시스템입니다.
fsck 설정
- 0은 부팅 시 fsck을 실행하지 않습니다.
- 1은 부팅 시 root 파일 시스템을 체크합니다.
- 2는 부팅 시 root 이외의 파일 시스템을 체크합니다.
설정 예시
예) /dev/xvdb1 장치를 /mnt/b 에 마운트 하는 fstab 등록 방법
$> vi /etc/fstab
...
# CentOS 6.x 의 경우
/dev/xvdb1 /mnt/b ext4 defaults 0 0
# CentOS 7.x 의 경우
/dev/xvdb1 /mnt/b xfs defaults 0 0
# Ubuntu Server / Desktop 의 경우
/dev/xvdb1 /mnt/b ext4 defaults 0 0아래 명령어를 사용하여 정합성을 체크합니다. 사용 즉시 fstab에 등록한 볼륨들이 마운트되며, 마운트에 오류가 발생할 경우 에러 메시지가 출력됩니다.
$> mount -av
fstab 문제 해결 예시
fstab의 설정이 잘못되었다면 부팅에 실패하고 Emergency Mode에 진입하게 됩니다.
이를 해결하는 방법은 아래와 같습니다.
공통 ) [서버 접속 콘솔] 버튼 확인
- 잘못된 fstab 설정에 의해 재부팅에 실패할 경우, 아래와 같이 재시작 실패 상태가 되며 서버 접속 콘솔을 통해 서버 상태를 확인할 수 있습니다.
- Emergency Mode 상태 확인 후, 패스워드 입력하여 서버에 접속합니다.
- 재부팅에 실패하였으나 [서버 접속 콘솔] 기능이 활성화되지 않았을 경우, 고객센터에 문의하여주십시오.
예제 1) 마운트 옵션이 잘못된 경우
Oracle Linux 6.10 및 RHEL 6.10 에서는 fstab 내 추가 스토리지에 대한 정보가 잘못되었더라도 Emergency mode로 진입하지 않고 정상 부팅되며, /var/log/messages 에서 관련 로그 확인할 수 있습니다.
# ('defaults' 'default' )
Aug 5 18:25:05 test-server kernel: [ 2.077285] xvdb: xvdb1
Aug 5 18:25:06 test-server kernel: [ 11.118531] EXT4-fs (xvdb1): Unrecognized mount option "default" or missing value
아래 명령어로 /etc/fstab 파일의 오류 발생 부분에 대해 진단해 주십시오.
$> mount -av
- 아래는 /xvdb1에 마운트 옵션 오타로 인한 에러가 있는 경우의 예시입니다. (defaults -> default로 오기입)
- 아래는 /xvdb1에 마운트 옵션 오타로 인한 에러가 있는 경우의 예시입니다. (defaults -> default로 오기입)
vi /etc/fstab으로 편집기를 실행하여 잘못 설정된 line을 주석 처리하거나 수정한 다음 저장해 주십시오.
- 주석 처리를 권장합니다.
fstab 내용 중 root 파티션 line의 오류가 발생한 경우
- root(/) 하위 모든 파일이 read-only mode로 바뀌기 때문에 /etc/fstab 파일 수정 불가
- 고객 문의를 통한 싱글모드 부팅 지원 요청
- 아래 명령어로 root 파티션 read-write mode로 remount → /etc/fstab 내용 수정 후 재시작
$> mount -o remount,rw /
- reboot 명령어, 또는 [강제 정지] 후 [시작] 버튼을 클릭하여 재시작합니다.
- 정상적으로 부팅된 것을 확인한 후 /etc/fstab에서 주석 처리한 line의 문법/옵션을 점검해 주십시오.
예제 2) 파일시스템 포맷이 잘못 등록될 경우
- vi명령어로 fstab을 수정합니다. 아래는 xfs로 잘못 입력된 fstab 설정을 ext4로 변경하는 예제입니다.
vi /etc/fstab
- reboot 명령어, 또는 [강제 정지] 후 [시작] 버튼을 클릭하여 재시작해 주십시오.
운영중
상태로 복구된 것을 확인해 주십시오.