강좌 & 팁
글 수 2,412
2013.11.21 14:33:06 (*.52.177.249)
39984
예전에 제품 만들때 사용하다가 최근 들어 서버용 제품을 다루면서
하드디스크를 다루는 것들을 조금 만지고 있습니다.
fdisk 는 디스크의 파티션을 나누어 주는 프로그램이죠?
os 를 설치할때 나누어진 파티션을 보면 예쁘게 파티션이 나누어져 있는데요
직접 파티션을 나누려고 하면 뭐라뭐라 불만을 내 뱉습니다.
먼저 fidks 를 실행해서 정보를 한번 보면요
root@nadia:/home/falinux# fdisk -ul
Disk /dev/sda: 1000 GB, 1000202273280 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953520065 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 2048 1936747952 968374071 83 Linux
Warning: Partition 1 does not end on cylinder boundary.
/dev/sda2 1936748206 1953520064 8377897 82 Linux swap
위의 정보를 보면 1테라 하드에 파티션이 나누어져 있는데 경고를 보냅니다.
Warning: Partition 1 does not end on cylinder boundary.
이것은 OS 에서 효율성을 위해서 블록 정보를 다룰때 그 경계에 맞지 않으므로
문제가 될수 있다고 하는것인데요... 살짝 무시해도 됩니다.
보여주는 정보는 실린더를 기반으로 하는 크기와 섹터를 기반으로 하는 크기 두가지가 있습니다.
실린더 기반의 크기는 제품마다 다르기 때문에 보기가 어려운데 디폴트가 실린더 기반이군요
섹터단위인 512 단위로 보기 위해서는 위에서 처럼 u 옵션을 사용하면 됩니다.
쉘기반에서 fdisk 를 사용해서 파티션을 나누려면 인터액티브 모드가 필요합니다.
인터액티브 모드는 사용자가 콘솔에서 직접 다루는 것이 아니라 쉘시반으로 일련의
동작을 하도록 할때 사용하는 것입니다.
자 그럼... 인터액티브 모드의 사용 그리고 블록 사이즈를 512 단위로 해서 한번 fdisk 를 실행합니다.
fdisk -i -u -b512
쉘에서는 위에서와 같은 모드로 실행을 해야 명령이 원활하게 수행되고 무엇보다
파티션의 크기를 계산하는데 조금 편합니다.