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

리눅스마스터1급 : 파일시스템 관리하는 fdisk에 대하여

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터1: 파일시스템 관리하는 fdisk에 대하여

 

 

파일 시스템을 만들고 유지하기 위해서 파티션의 분할, 파일 시스템의 생성 및 점검, 파티션의 마운트, 파일 시스템의 복구 등의 여러 가지 작업들을 한다.

 

 

 

여기서는 이에 대해 알아보고 관련 프로그램들을 살펴보도록 한다.

 

 

 

 

파일 시스템 생성 작업

 

 

하드 디스크에 파일 시스템을 생성하기 위해서는 우선 하드 디스크를 분할하여 파일 시스템을 생성할 공간을 마련해야 한다.

 

 

 

그리고 파일 시스템에 따라 특성이 다르므로, 사용 목적에 따라 어떤 파일 시스템을 사용할 것인지 결정한다.

 

 

 

현재 일반적으로 ext4 파일 시스템이 사용되고 있으므로, 특별히 어떤 것을 사용해야 할지 잘 모른다면 ext4 파일 시스템을 선택하여 사용해도 좋다.

 

 

 

1) fdisk로 하드 디스크 분할

 

하드 디스크 분할을 위해 fdisk를 사용한다.

 

 

 

일단 fdisk로 파티션을 작업을 할 때 기존의 정보를 수정하여 저장하면 기존의 데이터가 모두 삭제된다는 의미이므로 주의해야 하다.

 

 

 

한편, 하드 디스크의 파티션 작업을 수행하는 것을 파티셔닝(partitioning)이라고 한다.

 

 

 

이러한 파티셔닝은 리눅스의 설치 시, 사용중이던 하드 디스크의 파티션의 재설정 시, 추가 디스크 장착 시에 수행한다.

 

 

 

 

fdisk 실행

 

다음과 같은 형식으로 fdisk를 실행한다.

 

 

 

 

 

 

 

 

# fdisk [디바이스]

 

 

 

 

 

 

위에서 디바이스는 /dev 디렉토리 아래에 존재하는 장치명을 적는다.

 

 

 

리눅스에서 사용하는 디스크 타입은 SAS 타입, SATA 타입, IDE/EIDE 타입, SCSI 타입 등이 있다.

 

 

 

그리고 15000RPM 이상의 SAS 타입의 하드 디스크와 SATA 디스크가 주로 사용된다.

 

 

 

리눅스에서는 SAS 타입, SATA 타입 및 SCSI 타입의 디스크 모두 /dev/sda, /dev/sdb 등의 형식으로 장치명을 사용한다.

 

 

 

그리고 IDE/EIDE 타입의 디스크는 /dev/hda, /dev/hdb 등의 형식으로 장치명을 사용한다.

 

 

 

장치명이 다른 것 외에 fdisk를 사용하여 파티션을 분할하는 방법은 동일하다.

 

 

 

 

 

다음은 컴퓨터에 장착하는 하드 디스크 장치에 대한 기본적인 표기 방법이다.

 

 

 

상기한 바와 같이 하드 디스크 타입에 따라 장치의 이름이 다르지만, 하드 디스크의 명칭 부여 순서와 파티션 번호의 부여 방법은 동일하다.

 

 

 

 

/dev/sda : 첫 번째(a) SAS, SATA, SCSI 디스크

 

/dev/sdb : 두 번째(b) SAS, SATA, SCSI 디스크

 

/dev/sdc : 세 번째(c) SAS, SATA, SCSI 디스크

 

/dev/sdd : 네 번째(d) SAS, SATA, SCSI 디스크

 

/dev/sde : 다섯 번째(e) SAS, SATA, SCSI 디스크

 

/dev/sdf : 여섯 번째(f) SAS, SATA, SCSI 디스크

 

/dev/sdg : 일곱 번째(g) SAS, SATA, SCSI 디스크

 

/dev/hda : 첫 번째(a) IDE 디스크(hd) (Primary Master)

 

/dev/hdb : 첫 번째(b) IDE 디스크(hd) (Primary Slave)

 

/dev/hdc : 첫 번째(c) IDE 디스크(hd) (Secondary Master)

 

/dev/hdd : 첫 번째(d) IDE 디스크(hd) (Secondary Slave)

 

 

 

 

그리고 다음은 하드 디스크 내의 파티션에 대한 표기 방법이다.

 

 

 

IDE 디스크 하나를 5개의 파티션으로 나누었다고 가정하면 다음과 같다

 

(SAS, SATA, SCSI 디스크의 경우 /dev/sda와 같이 장치명만 다르다).

 

 

 

 

/dev/hda : 첫 번째(a) IDE 디스크 전체를 의미할 때 사용하는 장치명.

 

/dev/hda1 : 첫 번째(a) IDE 디스크 내의 첫 번째 파티션을 의미함.

 

/dev/hda2 : 첫 번째(a) IDE 디스크 내의 두 번째 파티션을 의미함.

 

/dev/hda3 : 첫 번째(a) IDE 디스크 내의 세 번째 파티션을 의미함.

 

/dev/hda4 : 첫 번째(a) IDE 디스크 내의 네 번째 파티션을 의미함.

 

/dev/hda5 : 첫 번째(a) IDE 디스크 내의 다섯 번째 파티션을 의미함.

 

 

 

 

 

이제 파티셔닝을 위해 fdisk를 실행하려면 어떠한 디스크의 파티션을 나눌 것인지 지정하여 다음과 같이 명령을 내린다.

 

 

 

 

 

 

 

 

[root@linux /root]# fdisk /dev/hda

 

 

 

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199750_6123.png
 

 

 

fdisk /dev/hda를 실행하면 (파티션을 생성/삭제할 하드 디스크가 IDE1의 마스터 드라이브일 경우) 다음과 같은 화면을 볼 수 있다.

 

 

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199764_9771.png
 

 

 

 

명령어

 

 

fdisk는 독자적인 명령어를 가지고 있다.

 

 

 

명령어는 m 명령어를 통해 정보를 얻을 수 있다.

 

 

 

주요한 명령어들은 다음과 같다.

 

 

 

 

 

명 령

기 능

a

부트 가능한 플래그로 변경

b

bsd 디스크 레이블을 편집

c

도스 호환 플래그로 변경

d

파티션 삭제

l

알려진 파티션 형태의 목록

m

이 메뉴를 출력

n

새로운 파티션 추가

o

새로운 도스 파티션 테이블을 생성

p

파티션 테이블을 출력

q

변경을 저장하지 않고 종료

s

새로운 Sun 디스크 레이블을 생성

t

파티션의 시스템 id를 변경

u

표시/엔트리 단위를 변경

v

파티션 테이블을 점검

w

디스크에 테이블을 기록하고 빠져나감

x

특별한 기능(extra functionality) (experts only)

일종의 전문가 모드라고 할 수 있음. 실린더 번호, 파티션 순서, 헤드의 수, 트랙당 섹터수 등을 변경하는 명령어들을 사용할 수 있음. m 명령을 내리면 사용할 수 있는 명령어들을 보여줌.

 

 

 

파티션 생성

 

 

다음은 n 명령어로 파티션을 생성하는 것이다.

 

 

 

먼저 n 명령을 내린 다음, pprimary 파티션으로 지정하고 파티션 번호를 지정한다.

 

 

 

 

이후에 시작 실린더 번호를 지정하고 마지막 실린더를 지정하거나 크기를 지정하면 된다.

 

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199780_7081.png
 

 

 

다음에는 /, /usr, /home. swap 등을 위한 파티션을 차례로 잡아준다.

 

 

 

swap의 경우에는 반드시 t 명령으로 시스템 id82swap으로 바꿔 주어야 한다.

 

 

 

 

다음은 /를 위한 두번째 파티션으로 300M를 잡아주는 모습이다.

 

 

 

최소 설치가 아니고 log, 메일 스풀 등을 고려하면 3G 이상 잡을 필요가 있다.

 

 

 

/var 파티션을 따로 잡을 수도 있다.

 

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199794_9243.png
 

 

 

다음은 /usr을 위한 파티션으로 2500M를 잡아주는 모습이다.

 

 

 

만약 전체 설치라면 이 파티션을 4500M 이상 잡아 주어야 한다.

 

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199807_9792.png
 

 

 

다음은 확장 파티션을 잡는 모습이다.

 

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199820_6302.png
 

 

 

다음은 확장 파티션 아래에 swap 파티션으로 500M를 잡고 /home 파티션으로 남은 모든 공간을 잡은 모습이다.

 

 

 

swap 파티션 또한 메모리의 용량에 따라 잡아주어야 할 용량이 달라질 것이다.

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199837_1559.png
 

 

 

다음은 p 명령어로 파티션 현황을 확인한 모습이다.

 

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199850_3259.png
 

 

 

다음은 마지막으로 swap 파티션의 시스템 id82번으로 변경한 모습이다.

 

 

 

 

 

a63295328a4a6e740f0da4d63aa3d4ab_1684199863_5293.png
 

 

 

 

만약 윈도우즈 시스템이 있다면 swap 파티션을 윈도우즈 시스템과의 중간에 두거나 윈도우즈 시스템과 약간의 간격을 두고 파티션을 해주는 것이 안전하다.

 

 

 

파티션을 할 때 주의할 점 하나는 윈도우즈 시스템의 FDISK에서 확장 파티션으로 잡은 도스용 파티션에 리눅스를 설치하지 말라는 것이다.

 

 

 

이 경우에 윈도우즈에서 리눅스 파티션이 보이면서 제대로 읽지 못해 시스템에 문제가 생길 수 있다.

 

 

 

 

 

파티션 편집이 모두 끝났다면 w 명령으로 설정을 저장하고 fdisk를 종료한다.

 

 

 

 

 

 

 

관련자료

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

공지사항


뉴스광장


  • 현재 회원수 :  60,056 명
  • 현재 강좌수 :  35,910 개
  • 현재 접속자 :  190 명