강좌
클라우드/리눅스에 관한 강좌입니다.
자격증 분류

리눅스마스터1급 : 부팅시 자동마운트 설정파일 /etc/fstab 설정

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터1: 부팅시 자동마운트 설정파일 /etc/fstab 설정

 

 

2) /etc/fstab 파일

 

 

시스템 부팅시 파일 시스템을 마운트하기 위한 설정 파일로 /etc/fstab이 있다.

 

 

 

이미 설명한 바와 같이 리눅스 설치시나 설치 후에 파일 시스템을 여러 개의 파티션에 나눌 수 있다.

 

 

 

이때 시스템과 관련된 파티션의 경우는 부팅 시부터 마운트를 해야 하고, 그렇지 않은 파티션이라고 하더라도 부팅 후에 마운트 하는 것은 번거로운 일이다.

 

 

 

이런 경우 /etc/fstab 파일에 마운트 정보를 입력해 놓으면 부팅시 자동으로 필요한 파일 시스템들을 모두 마운트 하게 된다.

 

 

 

또한 fstab 파일에 기술된 설정에 따라 파일 시스템에 대한 작업들을 조정할 수 있다.

 

 

 

다음은 파일 예제이다.

 

 

 

 

 

 

 

 

 

#

# /etc/fstab

# Created by anaconda on Wed May 1 22:59:19 2013

#

# Accessible filesystems, by reference, are maintained under '/dev/disk'

# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

#

UUID=8960f78b-78e8-498e-ab48-d5965244cbef / ext4 defaults 1 1

UUID=44295c68-8d64-433a-ba99-cf18a2db8429 swap swap defaults 0 0

tmpfs /dev/shm tmpfs defaults 0 0

devpts /dev/pts devpts gid=5,mode=620 0 0

sysfs /sys sysfs defaults 0 0

proc /proc proc defaults 0 0

 

 

 

 

 

 

 

 

위의 예에서 볼 수 있는 것처럼 한 행이 마운트 할 하나의 파일 시스템을 나타내고 있고, 각 행은 6개의 필드로 나누어진다.

 

 

 

이 중에서 하드 디스크 관련된 부분은 UUID 형식로 기술되어 있는데(LABEL 형식으로 기술되기도 한다), 하드 디스크의 마운트 설정은 원래 다음과 같이 설정한다.

 

 

 

 

 

 

 

 

/dev/sda1 / ext4 defaults 1 1

/dev/sda6 swap swap defaults 0 0

 

 

 

 

 

 

 

/etc/fstab에서 각각의 필드가 나타내는 의미는 다음과 같다.

 

 

 

이것에 대해서 잘 알아두는 것이 파티션을 추가하거나 할 때 도움이 된다.

 

 

 

 

 

필 드

의 미

첫 번째 필드

마운트 할 파일 시스템의 장치파일명

두 번째 필드

마운트 포인트 (파일 시스템을 연결할 디렉토리)

세 번째 필드

마운트할 파일 시스템의 종류

네 번째 필드

마운트 옵션

다섯 번째 필드

파일 시스템을 백업할 지의 여부

여섯 번째 필드

파일 시스템 검사 순서(fsck 수행)

 

 

 

 

다음은 예제에 대한 세부 설명이다.

 

 

 

 

 

첫 번째 필드

 

 

/dev/sdaSCSI 또는 SATA 마스터 하드 디스크를 나타내고, /dev/hdcIDE 세컨더리 마스터 하드 디스크를 나타내며, /dev/cdromcdrom 드라이브를 나타낸다.

 

 

 

같은 방식으로 다른 파일 시스템들이 설정되어 있는데 /proc의 경우는 가상 파일 시스템이기 때문에 장치파일이 none으로 지정되어 있다.

 

 

 

 

 

두 번째 필드

 

 

첫 번째 행을 보면 /dev/sda1에 만들어진 파일 시스템을 / 디렉토리에 마운트하도록 설정되어 있는 것을 알 수 있다.

 

 

 

 

 

세 번째 필드

 

 

리눅스의 파일 시스템인 ext3, ext4, xfs, CD-ROM 파일 시스템인 iso9660, 스왑 영역인 swap 등이 지정되어 있는 것을 알 수 있다.

 

 

 

 

네 번째 필드

 

 

옵션들은 콤마(,)로 연결하여 여러 옵션을 적용할 수 있다.

 

 

 

mount에는 굉장히 다양한 옵션이 존재하는데, defaults는 그 중에 자주 사용되는 항목들을 묶어서 설정하게 된다.

 

 

 

async, atime, auto, defaults, dev, exec, noauto, noexec, nouser, remount, ro, rw, sync, user 등의 다양한 옵션이 있는데 그 중에 중요한 옵션은 다음과 같다.

 

 

 

다음은 이 옵션들에 대한 설명이다.

 

 

 

 

 

옵 션

기 능

auto

-a 옵션에 의해 자동으로 마운트된다.

 

 

defaults

rw, suid, dev, exec, auto, nouser, async 옵션을 묶어서 말하는 것으로 일반적인 파일 시스템에 적용할 수 있다.

 

 

noauto

-a 옵션에 의해 자동으로 마운트 되지 않는다.

 

CD-ROM과 같은 미디어에 적용할 수 있는 옵션이다.

 

 

remount

이미 마운트 되어 있는 경우 다시 마운트한다.

 

 

ro

읽기 전용으로 마운트한다.

 

 

rw

읽기/쓰기를 모두 허용하도록 마운트한다.

 

 

nouser

일반 사용자가 마운트 하는 것을 금지한다.

 

 

user

일반 사용자가 마운트 하는 것을 허용한다.

 

 

 

 

 

다섯 번째 필드

 

 

1로 설정된 파일 시스템의 내용은 백업 대상에 포함시키고 0으로 설정된 파일 시스템은 백업을 하지 않는다.

 

 

 

 

 

여섯 번째 필드

 

 

원하는 순서대로 수치를 부여하면 시스템 부팅시 자동으로 검사하게 된다.

 

 

fsck는 이전의 셧다운 과정에서 정상적으로 마운트 해제가 되지 않았을 경우에 자동으로 파일 시스템들을 검사하도록 설정되어 있다.

 

 

 

이 때 이곳에 지정된 옵션을 사용하게 되는데, 1로 설정되어 있으면 시스템 부팅시 해당 파일 시스템을 제일 먼저 검사하게 되고, 2로 설정되어 있으면 1로 설정된 파일 시스템의 점검이 끝난 후 검사를 시작한다.

 

 

 

0으로 설정되어 있는 경우에는 부팅할 때 해당 파일 시스템을 검사하지 않는다.

 

 

 

만약 0이 아닌 다른 수가(: 2, 3) 여러 파일 시스템에 주어져 있으면 각 파일 시스템을 동시에 검사하게 된다.

 

 

 

일반적인 설정은 루트 파일 시스템에는 1의 값을 주고, 그 외의 파일 시스템에는 2를 주는 것이 일반적이다.

 

 

 

또한 CD-ROM, 스왑 파일 시스템 등에는 0을 주어 검사를 하지 않는다.

 

 

 

 

 

이 파일에 마운트 정보가 설정되어 있는 경우에 이 파일은 다음 3 가지 방법으로 사용이 가능하다.

 

 

 

 

 

우선, -a 옵션의 사용하면, (보통 부팅 과정에서) /etc/fstab에 기술되어 있는 모든 파일 시스템을 마운트시킨다.

 

 

 

하지만 noauto 라는 키워드를 사용한 줄은 제외한다.

 

 

 

 

 

 

 

 

 

# mount -a [-t type]

 

 

 

 

 

 

그리고 /etc/fstab 에 기술된 파일 시스템을 마운트할 때 장치명만 써주거나 마운트 포인트(마운트될 디렉토리)만 적어주면 된다.

 

 

 

 

 

또한 일반적으로는 수퍼 유저만 파일 시스템 마운트를 할 수 있다.

 

 

 

그러나 fstabuser라는 옵션이 붙어있는 경우 어떤 사용자든 마운트가 가능하다.

 

 

 

다음과 같이 설정한다면 어떤 사용자나 각자의 시디롬에 있는 iso9660 파일 시스템을 마운트할 수 있다.

 

 

 

unhide는 히든 파일과 관련 파일까지 보여주는 옵션이다.

 

 

 

CD-ROM의 장치명은 리눅스 배포판에 따라 /dev/hdc, /dev/sr0, /dev/cdrom 등으로 사용되는데, 첫 번째는 IDE에 연결되어 해당 인터페이스로 인식한 경우, 두 번째는 SCSI 또는 SATA에 연결되어 해당 인터페이스로 인식한 경우이고, /dev/cdrom이 원래 리눅스에서 사용되는 장치명이다.

 

 

 

CentOS의 경우에는 /dev/sr0/dev/cdrom으로 링크되도록 설정되는데, 이런 경우에는 /dev/sr0/dev/cdrom으로 모두 마운트가 가능하다.

 

 

 

최근 리눅스 배포판은 CD-ROM을 마운트하는 것이 일반적이지만, 수동으로 마운트해야 하는 경우도 많으므로 알아두도록 한다.

 

 

 

 

 

 

 

 

/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto,unhide

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,034 명
  • 현재 강좌수 :  35,791 개
  • 현재 접속자 :  99 명