디스크파티션설정및관리강좌 fdisk 1편
작성자 정보
- 웹관리자 작성
- 작성일
컨텐츠 정보
- 26,773 조회
- 0 추천
- 목록
본문
디스크파티션설정및관리강좌 fdisk 1편
-- 목 차 --
1 : 디스크파티션 설정, 관리를 위한 fdisk 개론
2 : 현재 모든 디스크의 파티션설정현황 파악하기
3 : 특정 파티션을 대상으로한 fdisk 시작과 종료
4 : 해당 디스크장치가 존재하지 않을 경우의 fdisk실행
5 : fdisk모드에서 현재 설정된 디스크 파티션정보 확인하기
6 : fdisk로 하드디스크 파티션 설정하기
7 : 파티션 타입(types) 확인하기
8 : 스왑영역으로 사용할 파티션 설정하기
9 : 리눅스 부팅파티션 설정하기
10 : 특정 파티션 삭제하기
ㅇ 제작자 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><?xml:namespace prefix = st2 ns = "urn:schemas:contacts" />박성수
ㅇ 본강좌의 자세한 정보 : http://www.superuser.co.kr/linuxcommandbible/ |
1 : 디스크파티션 설정, 관리를 위한 fdisk 개론
fdisk명령어는 파티션테이블을 관리하는 명령어입니다. 즉, 리눅스의 디스크파티션을 생성, 수정, 삭제할 수 있는 일종의 유틸리티라고 할 수 있습니다.
“fdisk를 이용하여 디스크를 원하는 형태로 파티션작업을 정확하게 하실 수 있습니까?”라고 필자가 묻는다면 자신있게 “네”라고 대답하실 수 있는 분이 얼마나 계실까요. 흔히 디스크파티션작업은 fdisk로 한다라고 알고 있으며 fdisk의 기본적인 사용법은 이미 알고 계실 것이라 생각합니다. 하지만, fdisk로 정확한 파티션작업을 할 수 있느냐라고 묻는다면 자신있게 대답할 수 있는 분은 그렇게 많지 않을 것입니다. 즉, fdisk의 정확한 사용법에 대해서 확실하게 알고 계셔야 한다는 것이 필자의 주장입니다. 조금만 공부하면 fdisk를 이용하여 파티션작업을 할 수는 있을 것입니다. 하지만 운영체제라는 관점에서 디스크의 파티션개념과 설정작업은 우리들에게 많은 것을 생각하도록 합니다.
필자는 이번 기회를 통해서 fdisk로 파티션설정하는 작업에 대해 상세한 실무활용법을 설명 드리고자 합니다.
기존에 사용하고 있던 디스크의 파티션을 재수정하여 저장하게 되면 디스크에 존재하고 있던 데이터가 모두 삭제되므로 주의하셔야 합니다.
fdisk로 리눅스 설치시에 장착된 디스크의 파티션을 설정하기도하며 이미 사용중이던 디스크의 파티션을 새로 설정할 수도 있으며 디스크를 추가하여 사용하려고 할 경우에도 fdisk로 파티션을 생성하여 사용하게 됩니다. 서버관리자라면 누구나 알고 있어야하는 것이며 MS-DOS시절에도 fdisk로 파티션을 생성한 후에 포맷을 하여 사용을 하였던 것 처럼 리눅스에서도 파티션을 생성한 후에 mkfs나 mke2fs로 생성한 파티션을 포맷하여 파일시스템을 생성하는 작업을 하게 됩니다.
또한 fdisk실행 후에 사용하는 몇가지 명령어들이 있으므로 이를 완전히 익히신 후에 실무에서 사용하셔야 합니다.
명령어위치 : /sbin/fdisk
사용형식 : fdisk [-l] [-v] [-s 파티션] [장치이름]
fdisk에서 파티션 설정작업에 사용하는 명령어를 간략히 요약하면 다음과 같습니다.
a 부팅파티션을 설정할 수 있음.
b BSD로 디스크라벨 설정.
c DOS호환가능한 플래그 설정.
d 파티션을 삭제할 수 있음.
l 설정가능한 파티션 타입을 보여줌.
m 파티션 설정도움말을 보여줌.
n 새로운 파티션을 생성할 수 있음.
o 새로운 도스파티션 테이블을 생성함.
p 현재 설정된 파티션정보를 보여줌.
q 설정된 정보를 저장하지않고 fdisk를 빠져나감.
s SUN 디스크라벨을 생성함.
t 파티션 타입을 변경할 수 있음.
u 유닛(units)정보를 열람하거나 변경할 수 있음.
v 지정된 파티션을 검사함.
w 현재까지 설정한 파티션정보를 저장하고 fdisk를 빠져나감.
x 파티션설정 전문가 모드로 들어감. 이 전문가 모드에서는 실린더(cylinder)수나 헤드(head)수 그리고 트랙(track)당 섹터(sector)수를 변경할 수 있음.
이제 fdisk를 이용하여 디스크 파티션작업을 하려면 “디스크장치명”에 대한 정확한 이해가 필요합니다. 즉, IDE디스크냐 SCSI디스크냐에 따라서 다음과 같은 장치명이 주어집니다. 디스크장치명과 디스크 파티션명을 어떻게 표기하고 구분하는가를 아래 설명을 보시고 정확하게 이해하시기 바랍니다. 이것이 fdisk를 정확하게 사용하기 위한 기초사항입니다.
[참고사항] |
/dev/hda : 첫번째(a) IDE 디스크(hd)
/dev/hdb : 두번째(b) IDE 디스크(hd)
/dev/hdc : 세번째(c) IDE 디스크(hd)
/dev/hdd : 네번째(d) IDE 디스크(hd)
/dev/sda : 첫번째(a) SCSI 디스크(sd)
/dev/sdb : 두번째(b) SCSI 디스크(sd)
/dev/sdc : 세번째(c) SCSI 디스크(sd)
/dev/sdd : 네번째(d) SCSI 디스크(sd)
/dev/sde : 다섯번째(e) SCSI 디스크(sd)
/dev/sdf : 여섯번째(f) SCSI 디스크(sd)
/dev/sdg : 일곱번째(g) SCSI 디스크(sd)
이상과 같이 구분합니다. 그렇다면 디스크의 전체를 가리키는 장치명과 “디스크내의 파티션”을 의미하는 파티션은 어떻게 표시할까요?
간단히 IDE디스크 하나를 5개의 파티션으로 나누었다고 가정 하겠습니다.
/dev/hda : 첫번째(a) IDE디스크 전체를 의미할때 사용하는 장치명.
/dev/hda1 : 첫번째(a) IDE디스크 내의 첫번째 파티션을 의미함.
/dev/hda2 : 첫번째(a) IDE디스크 내의 두번째 파티션을 의미함.
/dev/hda3 : 첫번째(a) IDE디스크 내의 세번째 파티션을 의미함.
/dev/hda4 : 첫번째(a) IDE디스크 내의 네번째 파티션을 의미함.
/dev/hda5 : 첫번째(a) IDE디스크 내의 다섯번째 파티션을 의미함.
따라서 뒤에 숫자번호가 붙지않은 장치명과 붙은 장치명의 정확한 의미를 이해하셔야 합니다. 즉, 뒤에 숫자번호가 붙지않는 경우는 디스크의 전체를 의미하며, 뒤에 숫자번호가 붙는 경우는 디스크내의 각 파티션을 의미합니다. 그리고 장치명만으로 IDE디스크인가? SCSI디스크인가?를 정확하게 구분할 수 있어야합니다.
간단히 다음과 같은 예를 보십시요.
/dev/hdb3 : 두번째(b) IDE디스크(hd)의 3번째 파티션을 의미함.
/dev/hdc2 : 세번째(c) IDE디스크(hd)의 2번째 파티션을 의미함.
/dev/sda5 : 첫번째(a) SCSI디스크(sd)의 5번째 파티션을 의미함.
/dev/sdc3 : 세번째(c) SCSI디스크(sd)의 3번째 파티션을 의미함.
이상과 같은 구분만 가능하다면 파티션의 기본적인 의미는 이해를 하신 것이라 볼 수 있습니다. 그리고 이런 파티션을 나누는 도구가 바로 여기서 설명할 fdisk인 것입니다.
fdisk를 어디에 사용하고 무엇을 하기 위해서 사용하는가를 설명하기 위해서 지금껏 설명드린 것입니다.
이제 fdisk를 이용하여 디스크정보와 파티션설정하는 방법에 대해서 알아보도록 하겠습니다.
2 : 현재 모든 디스크의 파티션설정현황 파악하기
리눅스 쉘상태에서 현재 모든 디스크의 파티션 설정내용을 확인할 수 있습니다.
간단히 "fdisk -l"이라고만 하면 현재 파티션이 설정되어 있는 모든 디스크의 파티션설정 내용을 다음 예와 같이 확인 할 수 있습니다.
아래 필자가 테스트로 사용하고 있는 서버에는 IDE디스크가 2개 장착되어 있습니다.
첫번째 디스크는 /dev/hda라는 장치명으로 사용되고 있으며 다른 하나는 /dev/hdb라는 장치명으로 사용되고 있습니다.
[root@file root]# fdisk -l
Disk /dev/hda: 80.0 GB, 80026361856 bytes 255 heads, 63 sectors/track, 9729 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System /dev/hda1 * 1 16 128488+ 83 Linux /dev/hda2 17 8302 66557295 83 Linux /dev/hda3 8303 8433 1052257+ 82 Linux swap /dev/hda4 8434 9729 10410120 f Win95 Ext'd (LBA) /dev/hda5 8434 9729 10410088+ 83 Linux
Disk /dev/hdb: 6448 MB, 6448619520 bytes 255 heads, 63 sectors/track, 784 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System /dev/hdb1 * 1 250 2008093+ 83 Linux /dev/hdb2 251 500 2008125 83 Linux /dev/hdb3 501 784 2281230 82 Linux swap [root@file root]# |
첫번째 /dev/hda디스크는 모두 5개의 파티션으로 구성되어 있는 것을 보실 수 있습니다.
첫번째 행에 나타난 것 처럼 이 디스크(/dev/hda)는 80.0GB의 용량을 가지고 있음을 알 수 있습니다.
즉 /dev/hda1, /dev/hda2, /dev/hda3, /dev/hda4 /dev/hda5와 같이 나누어져 있다는 것을 알 수 있으며 각 장치명의 번호들은 파티션번호를 의미하고 있습니다.
그리고 /dev/hda1의 "Boot"항목에 "*"가 있는 것은 이 파티션(/dev/hda1)이 부팅파티션임을 나타내고 있습니다.
그리고 /dev/hda3의 "System"항목에 보시면 "Linux swap"이라는 것은 이 파티션(/dev/hda3)이 스왑파티션임을 나타내고 있습니다.
그리고 /dev/hda4의 "System"항목에 보시면 "Win95 Ext'd (LBA)"라는 것은 이 파티션(/dev/hda4)가 확장파티션임을 의미합니다.
그리고 위의 예에서 두번째 디스크인 /dev/hdb는 모두 3개의 파티션(/dev/hdb1, /dev/hdb2, /dev/hdb3)으로 나뉘어져 있음을 알 수 있습니다.
위의 경우와 마찬가지로 /dev/hdb1파티션이 부팅파티션이고 /dev/hdb3파티션이 리눅스 스왑파티션입니다.
이상과 같이 fdisk로 확인할 수 있는 디스크파티션 설정내용의 이해를 위하여 설명드렸습니다.
3 : 특정 파티션을 대상으로한 fdisk 시작과 종료
fdisk실행하기와 빠져나오기를 간단히 알아보겠습니다. 먼저 fdisk를 실행할 때에는 "fdisk 장치명"과 같이 하시면 됩니다. 물론 여기서 장치명은 반드시 디스크를 가리키는 장치명이어야합니다.
아래의 예는 /dev/hdb디스크에 대한 fdisk를 실행한 것입니다.
[root@file root]# fdisk /dev/hdb
Command (m for help): Command (m for help): m Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table
|
관련자료
-
이전
-
다음