사이트 내 전체검색
[linux] fdisk 분할에 관한 이야기
로빈아빠
https://cmd.kr/server/181 URL이 복사되었습니다.

본문

fdisk 분할에 관한 이야기

++++++++++++++++++
파티션에 관한 이해
++++++++++++++++++

지금 설명드리는 것은 Linux와 DOS방식에서 주로 사용되는 파티션에 관한 것입니다.
참고적으로 FreeBSD와 Unix계열들은 서로 다른 컨셉의 파티션을 정의하므로 이들
시스템에 대해서는 적용될 수 없음을 미리 밝혀 두는 바압니다.

리눅스와 DOS의 경우 파티션은 크게 두 부분으로 나뉩니다. primary와 extend.
예를 들어 윈도우의 C와 D, E로 나누는 경우 하드는 다음과 같은 형태로 partition
됩니다.

    +-------- 하드 --------+
    | primary  ----> C    |
    |                      |
    | extend  + ---> D    |
    |        |            |
    |        + ---> E    |
    |                      |
    +----------------------+

위의 그림에서 보는 바와 같이 C는 주로 부팅에 관계되는 파트로 MBR이라고 부르는
부트섹터 부분이 primary에 설치됩니다. 그리고 나머지는 extend라고 부릅니다.
그리고 그 extend영역 안에 D와 E라는 logical 부분이 있는 것입니다.

즉 다시 말하면 물리적으로 primary와 extend라는 두 파티션만이 존재 가능하지만
확장을 위해 extend영역안에 D, E등으로 논리 영역을 나누어 놓았다고 보시면 됩니다.

리눅스에서는 이를 각각 번호를 이용해서 indexing합니다.
예를 들어 보죠.

현재 C와 D에 원도우가 깔려 있고 E에 있는 부분을 리눅스를 깐다고 해보죠.
리눅스 파티션은 크게 /, /usr, swap으로만 나눈다고 가정해 봅시다.

  primary  ---> window C
  extend  +--> window D
          |
          +--> linux  /      ---+
          |                      |
          +--> linux swap        | 원래 E 파티션을 지워서 다음과 같이 했다면
          |                      |
          +--> linux /usr    ---+

그러면 리눅스 파티션은 물리적으로는 extend영역 안에 /, swap, /usr로 쓸 파티션
을 나누어 놓은 것입니다.
리눅스에서는 이들 파티션을 각각 이름을 붙입니다. 만약 시스템에 달린 하드가
첫번째라면 hda라고 부르고, 순서대로 hdb, hdc 이런식으로 부릅니다.
(EIDE 하드의 경우에. 만약 SCSI type이면 sda, sdb..식으로 이름이 붙습니다.)

만약 하드가 첫번째 하드라면
primary  --> /dev/hda1 이런 식으로 이름이 붙고
extend  --> /dev/hda2 와 같이 이름이 붙습니다.

(리눅스의 경우 primary와 extend가 모두 4개까지 있을 수 있습니다. FreeBSD도
  같습니다. 이점이 DOS 체계와 다른 점입니다. 그리나 권장하는 바는 하드 하나
  에는 primary 1개와 extend 1개만 잡는다고 하시면 됩니다.)

그런 후  extend에 해당하는 /dev/hda2에는 window D와 리눅스 파티션을이 담겨져
있을 겁니다. 이 파티션들은 위의 경우 5번 부터 이름을 정할 수 있습니다.

window D  --> /dev/hda5
linux /    --> /dev/hda6
linux swap --> /dev/hda7
linux /usr --> /dev/hda8

그럼 실제 파티션하는 과정을 보여드리죠. 가장 좋은 방법은 linux의 fdisk를 이용
하는 것입니다. 실제 GUI환경의 fdisk utility들이 있지만 fdisk를 쓰시도록
권장하고 싶습니다.

먼저 C, D, E와 같이 있는 하드였다면 fdisk를 실행시키고 들어 갔을 때

다음과 같은 명령어 한 줄만 보일 겁니다.

Command (m for help) :

이 때 'p'를 눌러서 현재의 상황을 보시기 바랍니다.


Disk /dev/hda: 255 heads, 63 sectors, 623 cylinders
Units = cylinders of 16065 * 512 bytes

  Device Boot    Start      End    Blocks  Id  System
/dev/hda1  *        1        41    329301  83  FAT32
/dev/hda2            42      623  4674915    5  Extended
/dev/hda5            42      237  1574338+  83  FAT32
/dev/hda6          238      623  3100573  83  FAT32


아마 위에 같이 보이겠죠. /dev/hda6는 window E 파티션에 해당되는 거겠죠.
이러면 일단 'd'를 눌러보십시요.
그러면 다음과 같이 메뉴가 보일 겁니다.

Command (m for help): d
Partition number (1-6):

보시면 아시겠지만 6을 눌러서 /dev/hda6를 지울 수 있습니다.
이제 다시 이 지운 파티션에 새로운 리눅스 파티션을 나누어야겠죠.

이럴 경우 'n'을 눌러서 새로운 파티션을 만들 준비를 합니다.

Command (m for help): n
Command action
  l  logical (5 or over)
  p  primary partition (1-4)

'n'을 누른 후에는 primary를 만들 것인지 logical을 만들 것인지 물어 볼 겁니다.
그러면 'l'을 눌러서 logical 영역을 만들 준비를 합니다.

그러면 파티션의 크기를 정해주는 것이 나오는데 이것은 자신이 원하는 만큼 정해
주면 됩니다.

크기를 정해주는 방법은 처음 물음에는 엔터를 치고, 나중에 '+128M' 또는 섹터의
번호를 입력해 주면 됩니다. 아마 보시면 쉽게 하실 수 있을 겁니다.

이렇게 해서 적당한 만큼 파티션을 나누었다고 하죠.


Command (m for help) : p

Disk /dev/hda: 255 heads, 63 sectors, 623 cylinders
Units = cylinders of 16065 * 512 bytes

  Device Boot    Start      End    Blocks  Id  System
/dev/hda1  *        1        41    329301  83  FAT32
/dev/hda2            42      623  4674915    5  Extended
/dev/hda5            42      237  1574338+  83  FAT32
/dev/hda6          238      303    530113+  83  Linux
/dev/hda7          304      369    530113+  83  Linux
/dev/hda8          370      623  2040192  83  Linux


이런 식으로 나오겠죠. 그런 다음 't'를 눌러 줍니다. 그런 후 다음처럼
해주시면 /dev/hda7을  swap으로 바꿀 수 있습니다.

Command (m for help): t
Partition number (1-8): 7
Hex code (type L to list codes): 82


Command (m for help) : p

Disk /dev/hda: 255 heads, 63 sectors, 623 cylinders
Units = cylinders of 16065 * 512 bytes

  Device Boot    Start      End    Blocks  Id  System
/dev/hda1  *        1        41    329301  83  FAT32
/dev/hda2            42      623  4674915    5  Extended
/dev/hda5            42      237  1574338+  83  FAT32
/dev/hda6          238      303    530113+  83  Linux
/dev/hda7          304      369    530113+  83  Linux Swap
/dev/hda8          370      623  2040192  83  Linux


마지막으로 'Command (m for help) : '에서 'w'와 'q'를 눌러 저장하고 나오면
됩니다.

Command (m for help) : w
Command (m for help) : q

이렇게 파티션이 나누어지고 난 다음에는 이들 파티션에 대해 마운팅 포지션을
정해 주면 됩니다. (이 부분은 어떻게 하시는지 아시리라 믿습니다.)

만약 리눅스가 깔려 있는 상태에서 새로운 하드를 더 추가하고 싶을 경우
위와 같은 방법으로 하드에 파티션을 나누어 준다음 format을 해주면 되겠죠.
linux에서 format에 해당되는 명령어는 mke2fs라는 명령어 입니다.

예를 들어 /dev/hdb7을 포맷하고 싶다면

# mke2fs /dev/hdb7

이런 식을 해주시면 됩니다.

댓글목록

등록된 댓글이 없습니다.

1,139 (15/23P)

Search

Copyright © Cmd 명령어 3.144.96.108