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

리눅스 파일시스템관리 1편

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문



제목 : 리눅스 파일시스템관리 1편





ㅇ 제작 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 서버관리팀


ㅇ SULINUX  홈페이지 : www.sulinux.net

ㅇ 리눅스포털 홈페이지 : www.superuser.co.kr



























파일 시스템 관리


1. 파티션 설정하기 (fdisk)


fdisk 명령어로 파티션된 영역에 원하는 파일시스템을 설정 할 수 있다. 단, fdisk를 했다고 해서 즉시 사용할 수 있는 것은 아니다. fdisk는 단지 전체 구조만 설정하는 것이다. 이후 해당 파일시스템에 맞게 포맷해야 한다.


형식 : fdisk [ -l ] [ -v ] [ -s 파티션] [ 장치이름 ]


디스크의 파티션 테이블을 설정한다. 반드시 root계정으로 수행해야 한다. 파티션 삭제도 가능하기 때문에 주의하여 사용하여야 한다.


옵    션

설    명

-v

버전 정보를 보여주고 마친다.

-l

현재 시스템의 파티션 테이블을 나열하고 마친다. 계산되는 장치는 다음과 같다. /dev/hda, /dev/hdb, /dev/sda, /dev/sdb, /dev/sdc, /dev/sdd, /dev/sde, /dev/sdf, /dev/sdg, /dev/sdh

-s 파티션

도스파티션이 아니면(가령, 파티션 ID가 10보다 크면), 그 파티션의 크기가 출력된다. 이 값은 보통 mkfs에서 사용된다.

장치이름

/dev/hda, /dev/hdb, /dev/sda, /dev/sdb, /dev/sdc, /dev/sdd, /dev/sde, /dev/sdf, /dev/sdg, /dev/sdh 기타등등 과 같은 이름이 올수 있다.

PIC3C6.gif[그림] fdisk 실행화면

fdisk 실행후 사용명령어

명 령

설    명

a

부팅기점 토글

b

Disklabel 편집

c

도스 호환성 토글

d

파티션 삭제

l

파티션 타입 리스트

m

help명령어와 같이 명령어 메뉴리스트

n

새로운 파티션 추가

o

빈 도스 파티션테이블 생성

p

파티션 테이블 출력

q

저장없이 빠져나감

s

빈 Sun 디스크라벨 생성l

t

파티션 ID 변경

u

change display/entry units

v

파티션 테이블 검증

w

디스트 테이블을 저장하고 빠져나옴

x

extra functionality (전문가만 사용하길 권고함)


2. 파일시스템 초기화 하기 - mkfs


파티션을 설정했으면 사용할 수 있도록 파일시스템을 초기화 해야 한다. 이 파일시스템의 초기화를 보통 포맷이라고 말하며 사용되는 명령어는  mkfs이다.


형식 : mkfs [ -V ] [ -t 형태(fstype) ] [ fs-options ] 장치이름 [ 블록(size) ]


옵    션

설    명

-V

정보를 자세하게 보여준다. 여기에는 실행되는 특정 파일 시스템을 만드는 풀그림에 대한 정보도모두 포함된다. 이 옵션이 한번 이상 사용되면 특정 파일 시스템을 만드는데 사용될그 풀그림의 정보만 보여주고 실질적으로 실행은 되지 않는다. 이것은 실질적으로 검사하는 것에만 유용하게 쓰인다.

-t 형태

만들어질 파일 시스템의 형태를 지정한다. 이 옵션이 지정되지 않으면, /etc/fstab 파일에서 그 해당 파일시스템을 찾고, 여기서도 못 찾으면, 기본적으로 minix 파일 시스템을 사용한다.

fs-options

이것은 각 특정 파일 시스템을 만드는 풀그림에서 사용되는 옵션을 말한다. 대부분 같은 형식의 옵션이다.

-c

파일 시스템을 만들기 전에 먼저 불량 블럭 검사를 한다.

-l 파일이름

filename 으로부터 불량 블럭 목록을 읽는다.

-v

작업 상태, 결과를 자세하게 보여준다.


실제 사용의 예


PIC3C7.gif

3. 스왑 파티션


스왑(swap)은 물리적인 메인 메모리보다도 큰 사이즈의 가상적인 메모리 공간을 사용하기 위해 만들어주는 영역이다.

메인 메모리에 있는 데이터를 디스크로 옮기고 메인 메모리를 다른 프로세스가 사용할 수 있도록 한다. 여기서 사용되는 디스크 영역을 스왑 영역이라고 한다. 이처럼 메인 메모리로부터 스왑 영역으로 데이터를 이동하는 것을 스왑 아웃이나 페이지 아웃이라고 하고, 역으로 스왑 아웃한 데이터를 스왑 영역에서 메인 메모리에 이동하는 것을 스왑 인이나 페이지 인이라고 한다. 보통 스왑 영역은 스왑 파티션을 만들어서 사용한다.


3-1. 스왑 영역 초기화 - mkswap


형식 : mkswap [ -c ] 장치이름 [블럭크기]


페이징, 스와핑용 장치/화일 사용 설정 - swapon, swapoff


swapon와 swapoff는 페이징(Paging)과 스와핑(Swapping)에 쓰이는 장치를 나타낼 때사용된다. swapon은 보통 시스템의 다중 사용자 초기화 화일 /etc/rc에서 모든 스왑 장치를 사용하려고 할 때 사용되며, swapoff는 사용을 중단하기 위해 사용한다.


옵  션

설    명

-h

도움말 제공

-V

버전 출력

-a

/etc/fstab 에 ‘‘sw’’ 스왑 장치로 표기된 모든 장치를 스왑으로 설정한다.

-p 우선권

swapon 에서 사용될 우선권을 설정한다. 이 옵션은 swapon 이 커널1.3.2 와 그 이후 버전에서 컴파일된 경우에만 가능하다. priority은 0 ~ 32767 사이의 값이다. 스왑 우선권에 대한 자세한 내용은 swapon을 참고하라. pri=value 이라는 항목을 /etc/fstab 의옵션 필드에 써넣으면 swapon -a 할 때 이용된다.


swapoff 는 지정한 장치나 화일 상에서 또는 -a 옵션을 사용할 때 는/etc/fstab 에 적힌 장치의 스와핑을 사용하지 않도록 한다.


3-2. 디스크 점검 (fsck)


파일시스템 오류를 점검하고 복구하기 위한 명령어이다.


형식 : fsck [ -AVRTNP ] [ -s ] [ -t 화일시스템유형 ] [ 화일시스템옵션 ] 화일시스템 [ . ]


fsck은 리눅스 화일 시스템을 점검하고 필요에 따라 수리할 때 사용한다. 화일시스템은 장치명(예. /dev/hda1, /dev/sdb2)이거나 화일 시스템이 마운트된 마운트포인트(예. /, /usr, /home )이다. 서로 다른 물리적 드라이브 상의 여러 화일시스템을 점검하는 경우 병렬 처리가 가능하다. 병렬 처리를 사용하므로 점검에 드는 시간을 절약할 수 있다.


fsck 의 종료 코드는 다음 값의 합계로 나타난다:

0

에러 없음

1

화일 시스템 에러 고쳐짐

2

리부팅이 필요함

4

화일 시스템 에러를 고치지 않고 그대로 둠

8

실행 에러

16

사용법 또는 문법 에러

128

공유 라이브러리 에러


-A 옵션을 주고 점검한 모든 화일 시스템에 대해서는 각 화일 시스템에 대한 모든 종료 코드가 비트연산 OR 되어 표시된다.


사실 fsck 은 리눅스에서 사용가능한 화일 시스템 점검프로그램(fsck.화일시스템유형)에대한 프론트엔드 (front-end)일 뿐이다. 각 시스템 고유의 점검 프로그램은 우선 /sbin 에서 찾고 다음에는 /etc/fs, /etc 그리고 최종적으로는 PATH 환경 변수에 나열된 디렉토리에서 찾는다. 세부 사항에 대해서는 각 시스템 고유의 점검 프로그램에 대한 맨 페이지를 참고하기 바란다.


옵    션

설    명

 -A

/etc/fstab 화일에 표시된 모든 화일 시스템을 한 번 씩 모두 점검한다. 보통 /etc/rc 시스템 초기화 화일에서  각 시스템마다 일일이 명령을 내리지 않고일괄적으로 점검할 때 사용된다.

 -R

-A  플래그와 같이 사용될 때 루트 화일 시스템은 제외하도록 한다. (이미 읽기-쓰기 가능으로 마운트되어 있는 경우)

 -T

시작할 때 제목을 보여주지 않는다.

 -N

실행하지는 말고 어떤 작업을 할 것인지만 보여준다.

 -P

-A 플래그가 설정되어 있을 때 다른 화일 시스템과 루트 화일 시스템을 병렬처리하여점검한다. 루트 화일 시스템에 에러가 있는 경우에는 e2fscsk 바이너리와 같은것들이 깨져있을 수 있기 때문에 안전한 방법은 아니다. 루트 화일 시스템을좀 더 작고 컴팩트하게 다시 파티션하길 원하지 않는 시스템 관리자들을 위해서만제공되는 옵션이다.

 -s

fsck 동작을 시리얼화한다. 대화형 모드에서 여러 화일 시스템을 점검할 때유용하다.( 주의 : e2fsck 은 기본값으로 대화형으로 실행한다. e2fsck을 비대화형 모드로 실행하려면 -p 또는 -a 옵션을 주어 에러를 자동 치유하거나 -n을 주어 고치지 않고 그대로 놔두도록 해야 한다.)

 -V

실행되는 각 화일 시스템용 명령을 포함하여 자세한 출력을 수행한다.

 -t 화일시스템유형

점검할 화일 시스템 유형을 지정한다. -A 플래그가 설정되어 있는 경우 화일시스템유형에 맞는 것만 점검한다. 화일시스템유형앞에 no 를 붙이면 화일시스템유형아닌 것만 점검한다.

 -a  

물어봄 없이 자동으로 복구한다.(주의하여 사용하기 바란다) e2fsck은 -a 옵션을 단지 호환성을 위해 제공할 뿐이다. 이 옵션은 e2fsck의 -p 옵션으로 매핑된다.

 -r  

화일 시스템 복구시 질문을 하게끔 한다. 주의 : 여러 fsck 가 병렬모드로 작동하고 있을 때 사용하는 것은 좋지 않다. e2fsck 의 기본 동작 방식이므로 주의하기 바란다. 이 옵션은 단지 호환성 때문에제공될 뿐이다.


※ 주의

마운트 중인 파일시스템에 fsck를 실행하지 않도록 주의하자 이럴 경우 메모리의 파일시스템 정보와 디스크 정보 간에 정보의 불 일치성이 생길 가능성이 있다.


3-3. tune2fs


tune2fs은 파일시스템의 파라미터를 튜닝하고 조정하는 명령어이다.

파라미터 변경시 읽기/쓰기로 마운트된 파일시스템에 tune2fs를 절대 사용하지마십시오


형식 : tune2fs [옵션] 장치명


옵    션

설    명

-c 최대 마운트 횟수

각 화일 시스템 점검 사이에 최대 몇 번의 마운트가 가능한지 설정

-e 에러 발생시 반응

에러가  발생했을 때의 커널 코드의 반응양식을 변화시킨다.

errors-behavior : 값은 다음 값을 가질 수 있다:

continue : 정상적으로 실행을 계속한다.

remount-ro : 읽기 전용으로 다시 마운트한다.

panic : 커널 패닉을 일으킨다.

-g 그룹

예약된 블럭을 사용할 수 있는 사용자 그룹을 설정한다. 그룹값은 GID 또는 그룹명이 올 수 있다.

-i 각 점검 간의 간격[d|m|w]

관련자료

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

공지사항


뉴스광장


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