리눅스 fstab: Difference between revisions
From CS Wiki
No edit summary |
No edit summary |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
;부팅시 자동으로 마운트할 대상을 정의하는 시스템 기본 설정파일 | ;부팅시 자동으로 마운트할 대상을 정의하는 시스템 기본 설정파일 | ||
== | * 위치: /etc/fstab | ||
== 설정 방법 == | |||
; vi등으로 설정 파일을 열고 규칙에 맞게 내용을 입력한다. | ; vi등으로 설정 파일을 열고 규칙에 맞게 내용을 입력한다. | ||
<pre class='shell'> | <pre class='shell'> | ||
Line 29: | Line 30: | ||
=== 옵션 === | === 옵션 === | ||
여러개의 옵션을 넣는 경우 '''띄어쓰기 없이''' 따옴표로 구분한다. ex) defaults,nofail | |||
* defaults: rw,nouser,auto,exec,suid 속성을 모두 가진다. | * defaults: rw,nouser,auto,exec,suid 속성을 모두 가진다. | ||
* auto: 부팅시 자동 마운트 | * auto: 부팅시 자동 마운트 | ||
Line 43: | Line 45: | ||
* grpquota: 그룹별 Quota설정이 가능하도록 함 | * grpquota: 그룹별 Quota설정이 가능하도록 함 | ||
* nofail: 드라이브 마운트에 실패해도 오류를 보고하지 않고 부팅을 이어나감 | * nofail: 드라이브 마운트에 실패해도 오류를 보고하지 않고 부팅을 이어나감 | ||
* noatime: 파일을 읽을 때 access time을 업데이트하지 않음 (속도 향상) | |||
* relatime: 파일을 읽을 때 필요한 경우만 access time를 업데이트 (속도 향상) | |||
아래는 '''NFS 전용 옵션'''이다. | |||
* hard: 요청 실패 시 서버가 응답할 때까지 재시도 | |||
* soft: 요청 실패 시 오류를 보고하고 종료 | |||
* rsize=n: NFS 서버로부터 읽어들이는 바이트 수를 지정. 기본값은 1024byte(커널에 따라 다를 수 있음) | |||
* wsize=n: NFS 서버에 쓰기를 할 때 사용하는 바이트 수. 기본값은 1024byte(커널에 따라 다를 수 있음) | |||
* timeo=n: RPC 타임아웃이 생기고 나서 첫번째 재전송 요구를 보낼 때 사용되는 시간 | |||
** 1/10 초 단위이다. 기본값은 7 * 1/10 초 | |||
** 최대치인 60 초에 이르거나 너무 많은 재전송 요구가 벌어질때까지 타임아웃 시간이 2 배로 변화 | |||
* retrans=n: 주 타임아웃을 발생시키는 부 타임아웃과 재전송 횟수. 기본값은 3(초) | |||
* acregmin=n: 서버에게 최신 정보를 요청하기에 앞서 캐시되어야 할 최소 시간. 기본값은 3(초) | |||
* acregmax=n:서버에게 최신 정보를 요청하기에 앞서 일반 화일의 속성이 캐쉬되어야 할 시간. 기본값은 60(초) | |||
* acdirmin=n: 서버에게 최신 정보를 요청하기에 앞서 디렉토리의 속성이 캐쉬되어야 할 시간. 기본값은 30(초) | |||
* acdirmax=n: 서버에게 최신 정보를 요청하기에 앞서 디렉토리의 속성이 캐쉬되어야 할 시간. 기본값은 60(초) | |||
* actimeo=n: 이 값을 다음 acregmin, acregmax, acdirmin, 와 acdirmax 에 똑같이 적용 | |||
* retry=n: 백그라운드에서 진행 중인 NFS 마운트 작업이 포기하기 전까지 실행할 횟수. 기본값 10000 | |||
* port=n: NFS 서버와 연결할 수 있는 포트 번호. 0 이면(기본값) 원격호스트의 포트매퍼(portmapper) 에게 질의 | |||
** 포트매퍼에 NFS 데몬이 등록되어 있지 않은 경우에는 2049 라는 표준 NFS 포트 번호 사용 | |||
* mountport=n: mountd 포트 번호 지정 | |||
* mounthost=name: mountd 를 실행 중인 호스트 명 지정 | |||
* mountprog=n: 원격 호스트의 마운트 데몬과 접속하기 위해 사용할 수 있는 별도의 RPC 프로그램 번호 | |||
** 기본값은 표준 RPC 마운트 데몬 프로그램 번호인 100005 | |||
* bg: 만약 첫번째 NFS 마운트 시도가 타임아웃 걸리면 백그라운드에서 실행을 계속 | |||
* fg: 첫번째 NFS 마운트 시도에서 타임아웃이 걸리면 그 즉시 포기(기본값) | |||
* tcp: NFS 화일 시스템을 기본값인 UDP 가 아니라 TCP 프로토콜을 사용하여 마운트 | |||
* udp: NFS 화일 시스템을 UDP 프로토콜로 마운트(기본값) | |||
=== 덤프 설정 === | === 덤프 설정 === | ||
* 0 : 덤프가 불가능하게 설정 | * 0: 덤프가 불가능하게 설정 | ||
* 1 : 덤프가 가능하게 설정 | * 1: 덤프가 가능하게 설정 | ||
=== 파일시스템 체크 === | === 파일시스템 체크 === | ||
fsck에 의한 무결성 검사 우선순위 설정 | fsck에 의한 무결성 검사 우선순위 설정 | ||
* 0 : 무결성 검사를 하지 않음 | * 0: 무결성 검사를 하지 않음 | ||
* 1 : 우선순위 1위로 검사 수행 | * 1: 우선순위 1위로 검사 수행 | ||
* 2 : 우선순위 2위로 검사 수행 | * 2: 우선순위 2위로 검사 수행 | ||
== 적용 방법 == | |||
* 파일 내용을 저장해두면 자동으로 적용된다. | |||
* 단, 해당 파일은 부팅 시 사용되는 설정 파일이므로, fstab에 내용을 적는다고 바로 마운트 되는 것은 절대 아니며, 다음 부팅 시 적용되는 것이다. 현 부팅 상태에서 마운트를 하고자 한다면 mount 명령어를 사용하여 별도로 수행해주어야 한다. | |||
== 예제 == | == 예제 == |
Latest revision as of 03:36, 6 February 2023
- 부팅시 자동으로 마운트할 대상을 정의하는 시스템 기본 설정파일
- 위치: /etc/fstab
설정 방법[edit | edit source]
- vi등으로 설정 파일을 열고 규칙에 맞게 내용을 입력한다.
$ vi /etc/fstab # # /etc/fstab # Created by anaconda on Mon Nov 21 17:30:35 2011 # # 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 # /dev/mapper/VolGroup-lv_root / ext4 defaults 1 1 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 # 시스템 기본으로 설정되어 있는 내용 밑에 추가로 기입한다. 규칙은 아래와 같다. # [대상] [목적지] [파일시스템 유형] [옵션] [덤프 주기(일)] [fsck 순서]
입력 규칙[edit | edit source]
[파일시스템장치명] [마운트포인트] [파일시스템 종류] [옵션] [덤프설정] [파일시스템 체크 설정]
구분은 띄어쓰기로 한다. 한칸 이상 띄우면 동일하게 인식 되므로, 헷갈리지 않도록 입력값 사이사이를 충분히 띄어주면 된다.
파일시스템 종류[edit | edit source]
ext, ext2, ext3, ext4, iso9660, nfs, swap, ufs, vfat, msdos, ntfs, hfs, hpfs, sysv, ramdisk 등 사용 가능
옵션[edit | edit source]
여러개의 옵션을 넣는 경우 띄어쓰기 없이 따옴표로 구분한다. ex) defaults,nofail
- defaults: rw,nouser,auto,exec,suid 속성을 모두 가진다.
- auto: 부팅시 자동 마운트
- noauto: 부팅시 자동 마운트 안됨
- exec: 실행 파일이 실행 되는 것을 허용
- noexec: 실행 파일이 실행 되는 것을 허용하지 않음
- suid: SetUID와 SetGID의 사용을 허용
- nosuid: SetUID와 SetGID의 사용을 허용하지 않음
- ro: 읽기전용 마운트
- rw: 읽기, 쓰기 가능 마운트
- user: 일반 사용자들도 마운트할 수 있음
- nouser: 일반 사용자들은 마운트할 수 없음(root계정만 가능)
- usrquota: 개별 계정사용자의 Quota설정이 가능하도록 함
- grpquota: 그룹별 Quota설정이 가능하도록 함
- nofail: 드라이브 마운트에 실패해도 오류를 보고하지 않고 부팅을 이어나감
- noatime: 파일을 읽을 때 access time을 업데이트하지 않음 (속도 향상)
- relatime: 파일을 읽을 때 필요한 경우만 access time를 업데이트 (속도 향상)
아래는 NFS 전용 옵션이다.
- hard: 요청 실패 시 서버가 응답할 때까지 재시도
- soft: 요청 실패 시 오류를 보고하고 종료
- rsize=n: NFS 서버로부터 읽어들이는 바이트 수를 지정. 기본값은 1024byte(커널에 따라 다를 수 있음)
- wsize=n: NFS 서버에 쓰기를 할 때 사용하는 바이트 수. 기본값은 1024byte(커널에 따라 다를 수 있음)
- timeo=n: RPC 타임아웃이 생기고 나서 첫번째 재전송 요구를 보낼 때 사용되는 시간
- 1/10 초 단위이다. 기본값은 7 * 1/10 초
- 최대치인 60 초에 이르거나 너무 많은 재전송 요구가 벌어질때까지 타임아웃 시간이 2 배로 변화
- retrans=n: 주 타임아웃을 발생시키는 부 타임아웃과 재전송 횟수. 기본값은 3(초)
- acregmin=n: 서버에게 최신 정보를 요청하기에 앞서 캐시되어야 할 최소 시간. 기본값은 3(초)
- acregmax=n:서버에게 최신 정보를 요청하기에 앞서 일반 화일의 속성이 캐쉬되어야 할 시간. 기본값은 60(초)
- acdirmin=n: 서버에게 최신 정보를 요청하기에 앞서 디렉토리의 속성이 캐쉬되어야 할 시간. 기본값은 30(초)
- acdirmax=n: 서버에게 최신 정보를 요청하기에 앞서 디렉토리의 속성이 캐쉬되어야 할 시간. 기본값은 60(초)
- actimeo=n: 이 값을 다음 acregmin, acregmax, acdirmin, 와 acdirmax 에 똑같이 적용
- retry=n: 백그라운드에서 진행 중인 NFS 마운트 작업이 포기하기 전까지 실행할 횟수. 기본값 10000
- port=n: NFS 서버와 연결할 수 있는 포트 번호. 0 이면(기본값) 원격호스트의 포트매퍼(portmapper) 에게 질의
- 포트매퍼에 NFS 데몬이 등록되어 있지 않은 경우에는 2049 라는 표준 NFS 포트 번호 사용
- mountport=n: mountd 포트 번호 지정
- mounthost=name: mountd 를 실행 중인 호스트 명 지정
- mountprog=n: 원격 호스트의 마운트 데몬과 접속하기 위해 사용할 수 있는 별도의 RPC 프로그램 번호
- 기본값은 표준 RPC 마운트 데몬 프로그램 번호인 100005
- bg: 만약 첫번째 NFS 마운트 시도가 타임아웃 걸리면 백그라운드에서 실행을 계속
- fg: 첫번째 NFS 마운트 시도에서 타임아웃이 걸리면 그 즉시 포기(기본값)
- tcp: NFS 화일 시스템을 기본값인 UDP 가 아니라 TCP 프로토콜을 사용하여 마운트
- udp: NFS 화일 시스템을 UDP 프로토콜로 마운트(기본값)
덤프 설정[edit | edit source]
- 0: 덤프가 불가능하게 설정
- 1: 덤프가 가능하게 설정
파일시스템 체크[edit | edit source]
fsck에 의한 무결성 검사 우선순위 설정
- 0: 무결성 검사를 하지 않음
- 1: 우선순위 1위로 검사 수행
- 2: 우선순위 2위로 검사 수행
적용 방법[edit | edit source]
- 파일 내용을 저장해두면 자동으로 적용된다.
- 단, 해당 파일은 부팅 시 사용되는 설정 파일이므로, fstab에 내용을 적는다고 바로 마운트 되는 것은 절대 아니며, 다음 부팅 시 적용되는 것이다. 현 부팅 상태에서 마운트를 하고자 한다면 mount 명령어를 사용하여 별도로 수행해주어야 한다.
예제[edit | edit source]
- NFS 디렉터리 마운트하기[1]
- NFS 서버 도메인은 data.example.com이고 공유 디렉터리명은 /shared이다.
- NFS 클라이언트에서 마운트할 디렉터리명은 /remote_data이다.
data.example.com:/shared /remote_data nfs timeo=30,soft,retrans=5 0 0
- ↑ http://q.fran.kr/문제/6526 리눅스마스터 1급 기출문제