본문 바로가기
Linux

[Linux] 마운트와 언마운트

by oncerun 2020. 11. 18.
반응형

디스크에 프로그램과 데이터를 저장하기 위해서는 우선 파티션을 생성한 뒤 파티션에 파일 시스템을 만들어 주어야 한다.

파일 시스템이란 자료나 파일을 쉽게 접근, 발견할 수 있도록 관리하는 체제를 말한다.

유닉스 계열의 운영체제에서는 파일 시스템 트리는 전체적으로 하나의 루트만 존재하기에 저장 장치를 사용하기 위해서는 파일 시스템 트리의 어딘가에 저장 장치를 부착시켜야 한다. 이것을 마운트라고 한다. 

파일 시스템을 트리에서 어느 디렉터리에 위치시킬지 정해야 마운트 할 수 있는데 이 위치를 마운트 지점이라고 한다.

 

마운트 작업을 위한 명령은 mount인데 단순하 mount를 실행하면 현재 상태에서 시스템에 마운트 되어 있는 파일 시스템을 보여준다.

 

이때 나타나는 항목은 다음과 같다.

ex) /dev/sda1 on /boot type ext4 (rw)

 

- 장치 : /dev/sda1과 같은 것은 파일 시스템을 가지고 있는 파티션을 지칭하는 이름이다. 

 proc이나 sysfs와 같은 것은 특수 목적의 파일 시스템이며 이 경우 실제 장치명을 사용할 수 없으므로 상징적인 이름을 사용한다.

 

- on 마운트 지점 : 파일 시스템이 부착되는 위치이다. 

 

- type 파일 시스템 유형 : 해당 파일 시스템의 유형을 알려주는 것으로 특수 목적의 가상 파일 시스템도 존재한다.

 

 1) swap : 스왑 파일 시스템으로 스왑 영역을 관리하기 위한 것.

 2) tmpfs : 휘발성 메모리인 RAM에서 일시적으로 파일을 저장하기 위해 사용하는 파일 시스템이다.

 3) proc : 커널이 가진 프로세스 정보나 시스템 정보를 사용자 공간에 알려 줄 때 사용하는 파일 시스템이다.  /proc에 마운트 된다.

 4) sysfs : 하드웨어나 드라이버 정보와 같이 커널이 가진 정보를 사용자 공간에 알려 줄 때 사용하는 파일 시스템이다  /sys에 마운트 된다.

 5) devpts : 가상 터미널의 제어를 위해 사용하는 파일 시스템이다. /dev/pts에 마운트 된다. 

 

- (mount options) : mount 명령에서 -o 옵션과 함께 사용할 수 있는 것으로 콤마로 분리하여 마운팅에 사용될 옵션이 나열된다.

 마운트 옵션 표

속성 기능
defaluts 파일 시스템을 마운트할 때 사용하는 기본 속성으로 rw, suid, dec, exec, auto, nouser, async가 적용된다. 커널과 파일 시스템의 종류에 따라 다를 수 있다.
auto 부팅 시 자동으로 마운트 된다. 반대는 noauto이다.
exec 바이너리 파일의 실행을 허용한다. 반대는 noexec이다.
suid setUID와 setGID가 효력을 발생하낟. 반대는 nosuid이다.
ro 읽기 전용의 파일 시스템으로 마운트한다.
rw 일기와 쓰기가 모두 가능하도록 파일 시스템을 마운트한다.
user 일반 사용자도 마운트할 수 있게 한다. nouser는 root사용자만 마운트가 가능하게 한다.
remount 이미 마운트되어 있는 경우 다시 마운트 한다.
nouser 일반 사용자가 마운트하는 것을 금지한다.

 

어떤 옵션도 없이 단순히 mount 명령만을 출력하면 /etc/mtab 파일에 기록된 내용과 사실상 같은데 실제 mount나 unmount 명령을 실행하면 그 내용이 /etc/mtab 파일에 기록된다 다만 -n 옵션을 사용해 mount명령을 실행하면 기록되지 않는다. 

 

대부분의 파일 시스템은 부팅 시 마운트 되는 파일 시스템인데, 리눅스 부팅 과정에는 /etc/fstab 파일을 참조해 파일 시스템을 마운트 한다.

 

mount -a [options] [-t type]

옵션 -a는 /etc/fstab 파일에 기술되어 있는 모든 파일 시스템을 마운트 한다. (noauto 옵션을 가진 파일 시스템은 제외)

옵션 -t는 해당 유형의 파일 시스템만 마운트한다.

 

mount [options] [-o mount_options] device|directory

/etc/fstab 파일에 기술된 파일 시스템을 마운트 할 때 사용하며 이때 장치명 또는 마운트 지점을 지정해 선택적으로 마운트 할 수 있다.

 

mount [options] [-t type] [-o mount_options] device|directory

일반적인 마운트 방식

 

[options] : 

1) -a : /etc/fstab에서 나열된 모든 파일 시스템을 마운트 한다.

2) -t type : 파일 시스템의 유형을 지정한다.

3) o m_options : 마운트 옵션을 지정한다. 콤마로 구분

4) -f : 실제 마운트 하지 않고 마운트가 가능한지 점검

5) -n : /etc/mtab에 마운트 내용을 기록하지 않음

6) -r : 읽기 전용으로 마운트 한다. == -o ro

7) -w : 읽기 쓰기가 가능하다. == -o rw

 

마운트 명령을 사용하기 전 마운트 지점으로 사용될 디렉터리를 생성해야 한다. 또한 초기화를 한 후 파티션을 설정해줘야 합니다.

 

파티션은 fdisk 명령어를 통해 생성할 수 있으며 포맷하기 위해선 파일 시스템을 설정해줘야 합니다.

mkfs 명령어를 통해 파일 시스템을 설정해줘야 합니다.

 

그다음 마운트를 하는 것이죠.  df로 현재 마운트 된 장치를 확인할 수 있습니다.

 

언마운트는 umont 명령어를 통해서 할 수 있습니다. 다만 DVD나 CD-ROM은 마운트 상태에서 디스크를 꺼낼 수 없으며, USB 메모리를 꺼낼 땐 반드시 원마운트를 한 후 꺼내야 데이터의 손실을 방지할 수 있습니다.

 

반응형

'Linux' 카테고리의 다른 글

[Linux] 프로세스  (0) 2020.11.21
[Linux] 파티션 관리  (0) 2020.11.18
[Linux] 파일 찾기와 문자열 검색 명령어  (0) 2020.11.17
vi 명령어  (0) 2020.11.17
[Linux] 서비스의 실행과 종료  (0) 2020.11.17

댓글