1. fstab란?

파일 시스템 정보를 저장하고 있으며, 리눅스 부팅시 마운트 정보를 저장하고 있다.

이 파일 안의 구성값들을 통해 부팅시 자동으로 적용될 수 있도록 한다.

 

2. 설정하는 정보

- 해당 파일 시스템의 장치명(Device name)

- 마운트포인트

- 파일시스템 타입

- 파일시스템 마운트시 Read Only 여부

- 파일시스템 마운트시 Read, Write 여부

- Quota 정책 적용 여부

- 일반 사용자의 마운트 허용 여부

- 부팅시 자동 마운트 여부

- SetUID, SetGID 설정 허용 여부

- dump 가능 여부

- fsck로 파일시스템 검사 시, 검사 순서

 

3. /etc/fstab 파일의 각 필드별 역할

- 파일 시스템 장치명

파일 시스템의 장치명을 다음과 같이 설정한다.

ex) '/dev/sda1', '/dev/sda2', 'LABEL=/', 'LABEL=/boot' 등

 

- 마운트 포인트

파일 시스템이 마운트될 디렉토리를 설정한다.

 

- 파일 시스템 종류

현재 시스템에서 지원 가능한 파일 시스템을 확인하려면 /proc/filesystems 파일을 확인하면 된다.

파일 시스템의 종류에는 다음과 같은 종류 등이 있다.

> ext : 초기 리눅스에서 사용되었던 fs-type으로 현재 사용하지 않는다.

> ext2 : 현재도 사용되고 있는 fs-type으로서 긴 파일명을 지원하는 것이 특징이다.

> ext3 : 저널링 파일 시스템으로서 ext2에 비해 파일시스템 복구 기능과 보안 부분을 크게 향상시킨 것이다.

> ext4 : 리눅스 표준 파일 시스템으로 용량 증대, 삭제 파일 복구 기능 추가, 파일 시스템 점검 속도 향상이 특징이다.

> iso9660 : DVD 또는 CD-ROM을 마운트할 때 사용하는 fs-type으로 Read-Only이다.

> nfs : Network File System으로 원격 서버를 마운트할 때나 분산 시스템 구현에 사용된다.

> swap : swap 메모리를 사용하는 파일 시스템에서 사용한다.

> ufs : Unix File System으로 UNIX SYSTEM 5계열에서의 fs-type이다.

> vfat : 윈도우 95, 98 그리고 NT를 지원하기 위한 fs-type

> msdos : MS-DOS 파티션을 사용하기 위한 fs-type

> nffs : 윈도우 NT나 2000의 NTFS 파일 시스템을 사용하기 위한 fs-type

> hfs : Mac 컴퓨터의 hfs 파일 시스템을 지원하기 위한 fs-type

> ramdisk : RAM 디스크를 지원하는 fs-type

 

- 옵션

파일 시스템을 용도에 맞게 사용하기 위한 파일 시스템 속성을 설정한다.

> defaults : rw, nouser, auto, exec, suid 속성을 모두 가지는 속성으로, 일반적인 파일 시스템에서 사용된다.

> auto : 부팅시 자동 마운트 된다.

> noauto : 부팅시 자동 마운트 되지 않게 한다.

> exec : 실행 파일이 실행을 허용한다.

> noexec :  실행 파일의 실행을 금지한다.

> suid : SetUID와 SetGID의 사용을 허용한다.

> nosuid : SetUID와 SetGID의 사용을 금지한다.

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

> rw : 읽기, 쓰기 모두 가능하도록 마운트한다.

> user : 일반 계정 사용자들도 마운트 할 수 있게 한다.

> nouser : 일반 계정 사용자들은 마운트 할 수 없게 한다.

> usrquota : 개별 계정 사용자의 Quota 설정을 가능하도록 한다.

> grpquota : 그룹별 Quota 설정을 가능하도록 한다.

 

- dump 관련 설정

0, 1을 지정할 수 있다.

> 0 : dump 명령으로 덤프되지 않는 파일 시스템

> 1 : 데이터 백업 등을 위해 dump가 가능한 파일 시스템

 

- 파일 점검 옵션

0, 1, 2를 지정할 수 있다.

> 0 : 부팅시 실행되는 fsck가 실행되지 않는 설명

> 1 : 루트 파일 시스템을 의미한다.

> 2 : 루트 파일 시스템 이외의 파일 시스템을 의미한다.

 

출처 : blog.naver.com/PostView.nhn?blogId=dudwo567890&logNo=130156449983

 

Linux, 파일시스템테이블(/etc/fstab)

"/etc/fstab"파일은 리눅스에서 사용하는 파일시스템 정보를 정적으로 저장하고 있는 파일이며, 리눅스의 ...

blog.naver.com

 

반응형

'■ 운영체제 > 리눅스' 카테고리의 다른 글

USB-HDD 접속시 자동 마운트 방법  (0) 2020.12.03
파티션이란?  (0) 2020.12.03

Linux에서 USB-HDD를 사용하는 경우, 항상 정해진 디렉토리에 마운트를 할 때가 있다.

이런 경우, /etc/fstab을 UUID지정으로 설정하고 udev의 설정과 조합하여 USB-HDD접속시 자동으로 소정의 디렉토리에 마운트할 수 있다.

 

1. UUID 조사

- UUID란?

Universally Unique IDentifier의 약자로, 네트워크 상에서 고유성이 보장되는 ID를 만들기 위한 표준 규약이다.

128비트의 숫자이며, 32자리의 16진수로 표현된다. 8-4-4-4-12 글자마다 하이픈을 집어넣어 5개의 그룹으로 구분한다.

커맨드
ls -l /dev/disk/by-uuid/

결과
lrwxrwxrwx 1 root root 10 Jun 16 20:50 569785b6-7c3b-4bf0-b6ae-ce8a746c0a38 -> ../../sda1

UUID : 569785b6-7c3b-4bf0-b6ae-ce8a746c0a38
파티션 : /dev/sda1

2. fstab 설정

/etc/fstab에 1번에서 조사한 UUID의 파티션이 적당한 디렉토리에 마운트되도록 한다.

udev에서 mount 커맨드를 실행하여 마운트를 하기 때문에 noauto를 지정한다.

/etc/fstab 파일에 아래를 기재한다.
UUID=569785b6-7c3b-4bf0-b6ae-ce8a746c0a38 /mnt ext3 rw,noauto 0 0

3. udev 설정

USB-HDD 접속 시, 자동적으로 mount 커맨드를 실행하도록 설정한다.

udev는 /etc/udev/rules.d 이하의 설정을 읽어들이므로, 이곳에 적당한 이름의 룰을 설정한다.

ex) /etc/udev/rules.d/80-usbhdd.rules

ACTION=="add", ENV{DEVTYOE}=="partition", ENV{ID_FS_UUID}=="569785b6-7c3b-4bf0-b6ae-ce8a746c0a38" RUN+="/bin/mount -U $env{ID_FS_UUID}"

위 룰은 ID_FS_UUID에서 지정한 UUID의 파티션이 인식되었을 때 mount-U 커맨드를 자동으로 실행하여 HDD를 마운트한다.

 

출처 :

www.huskyhoochu.com/what-is-uuid/

 

[TIL] UUID란?

범용고유식별자 UUID에 대해 알아봅시다

www.huskyhoochu.com

www.xmisao.com/2013/07/17/usb-hdd-mount.html

 

LinuxでUSB-HDDを接続時に所定のディレクトリへ自動マウントする方法 -- ぺけみさお

 

www.xmisao.com

 

반응형

'■ 운영체제 > 리눅스' 카테고리의 다른 글

fstab이란?  (0) 2020.12.03
파티션이란?  (0) 2020.12.03

1. 개요

1.1. 파티션이란?

PC의 기억장치 내부를 용도에 따라 구분한 디렉토리 구조이다.

드라이브는 sda, sdb, sdc ... sd<A>의 말미의 알파벳 변화가 일반적이고,

드라이브 내의 파티션은 sda1, sda2, sda3 ... sda<N>과 같이 번호가 할당되는 것이 일반적이다.

 

1.2. 왜 파티션을 구분하는가?

실제로 구분하지 않아도 시스템 자체는 가동하지만, 파티션을 구분하면 관리상의 편의성이 향상된다.

1.2.1. 시스템 영역과 데이터 영역의 분리

시스템 복구시, 시스템 영역만을 초기화하고 데이터를 보존할 수 있다.

일반적으로 /home 아래에 유저마다의 데이터를 보존한다.

또한, 유저가 스스로 설치한 어플리케이션은 /usr 아래에 보존하는 경우가 많다.

1.2.2. swap영역의 작성

메인 메모리가 부족할 때 그 대신 사용할 수 있는 영역이다.

고가의 메인 메모리를 저가의 기억매체로 보충할 수 있다.

메인 메모리 이상의 용량을 확보하기 위해 비교적 옛날부터 존재하는 구조이다.

 

1.3. 기본 파티션과 확장 파티션, 논리 파티션

1.3.1. 파티션의 종류

고전적인 BIOS(Basic Input Output System)와 MBR(Master Boot Record)에 의한 파티션 관리의 경우, 기본적으로 원시적이고 단순한 파티션은 기본 파티션이라 하며 4개까지 만들 수 있다.

실제로는 더욱 상세하게 파티션을 구분할 필요가 있는 경우 확장 파티션이라는 특수영역을 확보하여 그 안에 논리 파티션을 사용해 파티션을 상세하게 분할할 수 있다.

MBR의 관리방법의 경우 기본 파티션 4개 또는, 기본 파티션 3개와 확장 파티션 내의 논리 파티션을 구분하여 사용한다.

 

1.3.2. 분할의 한계

Linux는 SATA 접속의 기억매체인 경우 15개의 파티션이 한계이다.

기본 파티션 3개와 확장 파티션의 논리 파티션이 12개이다.

 

반면, 요즘 보급되는 UEFI(Unified Extensible Firmware Interface) + GPT(GUID Partition Table)로 관리하는 경우 일반적으로 128개의 기본 파티션을 설정할 수 있다.

 

2. Linux 디렉토리 구조

일반적으로 다음과 같은 구조이다.

2.1. /

가장 상위의 디렉토리이며 여기서 트리구조로 디렉토리를 생성한다.

2.2. /bin

현재 /usr/bin으로의 심볼릭 링크(바로가기)로 되어 있다. /usr/bin에는 실행 가능 바이너리 즉, 커맨드가 격납되어 있다.

2.3. /boot

커널 등이 격납되어 있다.

2.4. /dev

디바이스를 제어하기 위한 디바이스 파일군이 관리되고 있다.

2.5. /etc

주로 설정파일이 설치된다.

2.6. /home

일반 유저의 데이터는 여기에 보존된다.

2.7. /lib

/usr/lib으로의 심볼릭 링크이다.

2.8. /lib64

/usr/lib64으로의 심볼릭 링크이다. 64Bit 바이너리에 대한 라이브러리이다.

2.9. /media

USB 등의 Removal Media가 마운트된다.

2.10. /mnt

현재 media 디렉토리가 역할을 대신하는 경우가 많지만, 수동 마운트시, 이 곳에 외부기억매체를 마운트할 때가 많다.

2.11. /proc

현재 시스템의 정보로서 CPU나 메모리의 내부 정보가 파일로 설치된다.

2.12. /root

root 유저 전용 디렉토리

2.13. /run

기동하고 있는 프로세스 ID 정보가 설치된다.

2.14. /sbin

/usr/sbin으로의 심볼릭 링크이다. 시스템의 근간을 이루는 기초 커맨드의 바이너리가 격납되어 있다.

2.15. /srv

FTP나 HTTP 등의 전용 디렉토리, 어디까지나 기준적인 것이며 절대적이지 않다.

2.16. /sys

드라이버 관련 프로세스에 관한 디렉토리이다.

2.17. /tmp

일시 데이터 보존용 디렉토리이다.

2.18. /usr

시스템의 라이브러리나 실행 파일 등이 격납되어 있다.

2.19. /var

대체로 로그 등이 설치된다.

 

출처 : eng-entrance.com/linux-partition

 

Linuxのパーティションとは?とパーティションの区切り方を詳細解説

パーティションとはコンピュータの記憶領域に作ることができる「しきり」のことだ。このページではパーティションについての説明と、Linuxではどのような分け方がいいのかをまとめてご

eng-entrance.com

 

반응형

'■ 운영체제 > 리눅스' 카테고리의 다른 글

fstab이란?  (0) 2020.12.03
USB-HDD 접속시 자동 마운트 방법  (0) 2020.12.03

+ Recent posts