기타자료 1

Low Level Format

요즘 악성 바이러스 선두주자이자 대부격인 CIH 바이러스의 공격으로 마더보드의
롬 교체는 물론이고 하드디스크를 로우 레벨 포맷((Low Level Format, 이하 로우
포맷)까지 해야 하는 최악의 상황이 빈번하게 발생한다. 또는 논리적인 배드 섹터를
없애기 위해 로우 레벨 포맷을 동원하기도 한다.

하지만 물리적인 배드 섹터 즉, 하드디스크 표면 자체에 에러가 발생했다면 로우
포맷을 아무리 많이 해도 이 문제를 해결 할 순 없다. 오히려 하드디스크에 손상만
가할 뿐이다. 설사 로우 포맷으로 배드 섹터가 없어졌다고 해도, 간혹 있는 일이고
언젠가는 재발하는 습성을 갖고 있기도 하다. 또한 물리적인 손상은 근본적(예: 교환,
새로 구입)으로 고치지 않고는 해결할 수가 없다는 점 명심하시기 바란다.

따라서 논리적인 배드 섹터가 아니라면 가급적 로우 포맷은 삼가는 것이 좋다.
긁어 부스럼 만들 필요가 없고 불안정한 섹터를 복구해서 쓰기보다는 아예 속편하게
배드 섹터를 마킹하고 안쓰는게 속 편하다.
이러면 하드디스크 수명 연장에도 도움이 된다.

물론 일반 포맷이 로우 포맷보다 하드디스크에 미치는 악영향은 훨씬 덜하다. 그렇
다고 너무 포맷을 겁낼 필요는 없다. 용산의 경험있는 상인까지 들먹인건 이 분들의
경험도 중요하지만 어디까지나 상대적으로 로우 포맷의 필요성과 불필요성을 명확히
구분하기 위한 것이니까.



1. 로우 포맷과 하이 포맷

하드디스크 포맷은 두 가지 방법이 있다.
일반 Format 명령으로 하는 논리적 포맷(High Level Format, 이하 하이 포맷)과 물리
적인 로우 레벨 포맷
이 그것이다.

하이 포맷은 파티션을 나눈 후에 논리적으로 섹터와 트랙을 구성해서 이를 컴퓨터에
인식시키는 작업이다.
아래에서 설명하겠지만 하드디스크와 직접 관계가 있다기 보다는 주로 소프트웨어
적인 관련이 있다. 도스, 윈도우 같은 운영체제가 인식하기 위한 선행 작업이라고
간단하게 생각하자.

이에 반해 로우 포맷은 하드디스크를 사용하기 위해 여러 가지 설정을 디스크에 적용
하는 것으로 하드디스크 자체와 아주 밀접한 관련이 있다. 즉 봄에 씨뿌리기 전에
밭에서 김을 매는 것처럼 하드디스크를 완전히 들어 엎어서 새옷을 입히는 것이다.
하이 포맷이 간단히 새옷만 입히는 것에 비하면 까다롭고 조금 더 복잡한 건 당연
하다. 운영 체제가 관여하는 하이 포맷보다는 바이오스 차원에서 접근하는 포맷
방식이다.

로우 포맷은 하드디스크의 내용을 완전히 지우고 트랙과 섹터를 구성하는 것으로
하드디스크의 내용을 완전히 없애버리는 실질적인 하드디스크 초기화를 의미한다.
하이 포맷처럼 파티션 단위의 포맷이 아닌 물리적 단위의 포맷(실제 드라이브 단위)을
하는 것이다.

보통 하드디스크는 공장에서 출하될 때에 이미 초기값으로 로우 포맷이 되어 나온다.
그래서 처음에 하드디스크를 구입한 다음, 컴퓨터에 장착했을 때 바이오스에 직접
실린더, 헤드수를 입력하거나 바이오스에 자동으로 잡아주도록 설정하면 바이오스가
인식하는 것이다. 일단 바이오스에서 인식을 해야 하이 포맷도 하고 윈도우도 설치할
수 있지 않겠는가?

로우 포맷이란 바로 이 공장 초기값으로 되돌리기 위한 작업이다.
로우 포맷은 다음의 두 가지 방법이 있다.



2. 로우 포맷하기

1) 바이오스(BIOS)에서 하는 포맷

CMOS에서 LOW LEVEL FORMAT 옵션이 있을 경우만 가능하다.
예전의 386이나486의 BIOS에 간혹 이 기능이 있었다. 하드디스크만 지정해 주면
바이오스에 내장된 프로그램이 로우 포맷을 진행한다.
하지만 BIOS에서 지원하는 로우 포맷 유틸리티는 되도록 사용하지 말 것을 권한다.
이유는 각 디스크 제조 업체가 지정한 특정 부분에 대한 값(인터리브)이 있는데
이것을 망가뜨리기 때문이다.

앞서 말했듯이 하드디스크 초기화는 하드웨어와 긴밀한 관계에 있기 때문에 실린더와
헤드, 섹터 값을 바이오스에 정확히 입력해야 한다.
요즘은 Auto-Detection 기능이 거의 완벽하게 이런 값을 찾아내기 때문에 그런 일이
없겠지만 위의 값이 정확하지 않은 가운데 로우 포맷이 이루어지면 하드디스크를
아예 불구로 만들거나 배드 섹터를 만들 가능성이 농후하니 유의하기 바란다.
실린더, 헤드, 섹터 값은 하드디스크 표면에 자세히 나와있다. 이 값을 미리
메모해 둔다.
참고로 여기 소개하는 바이오스는 Award Plug and Play BIOS Extention v1.0A 이다.

    컴퓨터를 처음 부팅하면 램 테스트를 진행한다.
    바이오스마다 다르지만 이 때 보통 Del 키를 누르면 바이오스 셋업 화면으로
    들어간다.
    현재 하드디스가 LBA 모드로 잡혀 있다면 왼쪽 상단의 STANDARD.... 항목으로
    들어가서 NORMAL 모드로 수정한다. 모드라는 것은 쉽게 풀자면 하드디스크를
    크기에 따라 바이오스에서 인식시키는 방식인데 대부분 대용량 하드디스크라면
    LBA 모드를 이용하는데 로우 포맷을 위해서는 디폴트 값인 NORMAL로 바꿔준다.
    로우 포맷이 끝나면 다시 LBA 모드로 변경하면 된다.

    오른쪽 중간이나 아래에 HDD LOW LEVEL 항목을 찾는다. 화살표 키로 이동해서
    엔터 키를 누르면 하드디스크를 검색한다.

    검색이 끝나면 상단에서 SELECT DRIVE, BAD TRACK LIST, PREFORMAT 메뉴를 볼
    수 있다.
    SELECT... 에 막대를 놓고 엔터 키를 치고 포맷할 드라이브 명(예, C, D)를
    직접 입력한다. BAD...로 이동한 후, 엔터 키를 치면 배드 섹터 찾기 등 하위
    메뉴를 볼 수 있고, PRE..에서는 인터리브 값을 조정할 수 있다.

    인터리브(Interleave)는 논리적으로 연결된 섹터(1, 2, 3...)가 얼마큼 떨어
    있는지를 나타내는 물리적인 배열 간격이다. 즉, 물리적인 배열 간격과 논리
    적인 배열 간격의 비를 나타낸다.
    인터리브가(정확히는 인터리빙 값) 3:1이라면 논리적으로 프로그램은 섹터가
    1, 2, 3...의 배열로 인식하지만 실제로는 물리적 섹터의 배열은 1, 12, 7, 2,
    13, 8, 3... 처럼 이루어져 있다.
    만일 인터리브가 1:1(No-Interleave)이라면 1, 2, 3, 4...와 같은 방법으로
    논리적으로나 물리적으로 같은 간격으로 배열되는 것이다.
    도스용 노턴 유틸리티의 CALIBRAT 유틸리티을 이용하면 인터리브 값을 변경할
    수 있고 알아낼 수 있지만 최근에 나오는 하드디스크는 자동적으로 최적화 되어
    있다.
    따라서 인터리브 값은 그대로 놔두는 것이 좋다.

    PRE.. 메뉴는 3가지 하위 메뉴를 볼 수 있다. Inteleave(1-8) : 0(0 for auto
    defalt) 항목은 그대로 유지한다. 변경하지 않으면 인터리브 값을 자동으로
    찾아준다.
    밑의 Auto scan bad track : N, START : N 항목에서 N을 Y로 바꿔주고 엔터
    키를 치면 Enter will destroy al l......(y/n) 문장이 깜박거린다.
    y를 입력하고 엔터 키를 치면 포맷을 시작한다.


2) 하드디스크 제조사에서 제공하는 로우 레벨 포맷 프로그램 이용

각 제조사마다 하드디스크의 특성이 있으므로 가장 안전하게 작업을 하려면 제조
업체에서 제공하는 전용 프로그램을 사용하는 것이 좋다.
특히 스커시 하드디스크는 꼭 필요하다.
예전에 스커시 하드디스크 인데도 불구하고 그냥 바이오스에서 포맷을 한 적이
있었다. 역시 하드디스크 에러가 자주 발생하곤 했다.

아답텍 컨트롤러와 스커시 하드디스크를 사용한다면, 부팅시 스커시 컨트롤러
바이오스가 뜰때 Ctrl+A를 누르면 스커시 셋업 화면에서 로우 레벨 포멧 항목을
찾을 수 있다.

로우 레벨 프로그램은 각 통신망의 자료실이나 해당 제조회사 홈페이지에서 다운
로드하기 바란다. 통신에는 Hdisk.com, Ata_fmt.com, Idehdd.exe, Phnixlf.exe, Sgatfmt4.exe 등의 이름으로 올라와 있다.

특히 용량이 적으면 덜하지만 기가 단위의 고용량 하드디스크의 로우 포맷은 정말
어쩔 수 없는 부득이한 경우로 한정한다.
다시 말하지만 이런 경우라면 하드디스크를 만든 회사에서 배포하는 로우 포맷
프로그램을 구해서 실행한다. 물론 통신이나 인터넷에 올라온 일반 로우 포맷 유틸
리티를 사용해도 가능하지만 아무래도 제조업체에서 나온 프로그램의 포맷 방식과
조금 다르기 때문이다.

테스트할 하드디스크는 퀀텀 제품으로 ProDrive LPS 라는 모델명으로, 용량은
340메가. 실린더, 헤드, 섹터 값은 각각 1010, 15, 44 이다.
참고로 퀀텀에서는 로우 포맷을 하지 않고도 로우 포맷과 같은 효과를 볼 수 있고,
고용량, 하이 포맷도 알아서 해주는 프로그램이 있다.

로우 포맷 프로그램은 통신에서 받은 Hdisk.com 로우 포맷 유틸리티를 이용했다.
정식 명칭은 Harddisk Lowformatter Ver 3.0이고, 이 파일을 윈도우 시동 디스크에
복사한 후, 시동 디스크로 부팅한다.
여기서는 이해를 돕기 위해 도스창에서 실행했지만 여러분은 도스에서 실행하기
바란다.

    바이오스에서 포맷할 때 처럼 LBA 모드는 Normal 모드로 변경한다.

    Hdisk.com 을 실행한다.


    < 그림 1 > Harddisk Lowformatter 실행 화면

    Total hard disk is 2 ( C,D )는 현재 장착된 물리적 하드 디스크를 나타낸다.
    포맷할 디스크는 D 드라이브이다.

    그림 1에서 엔터 키를 치면 Disk drive no : C가 D로 바뀐다.

    포맷하기 전에 선택한 드라이브를 분석해보는 것이 좋다. Enter Selection
    number [ 1 ] 에서5를 입력하고 엔터 키를 친다.
    그럼 다음과 같은 화면이 나타난다. Y를 입력하고 엔터 키를 친다.


    ** SURFACE ANALYSIS **

    Do you want to surface analysis (Y/N)?


    다시 엔터 키를 치면 다음과 같이 실린더 별로 검사를 진행한다.

    ALL DATA IN THE FIXED DRIVE WILL BE DESTROYED !!!

    Press enter to begin analysing of Surface

    CYLINDER NUMBER IS 17

    CYLINDER : 18 , HEAD : 5

    CYLINDER : 18 , HEAD : 4

    CYLINDER : 18 , HEAD : 3

    CYLINDER : 18 , HEAD : 2

    CYLINDER : 18 , HEAD : 1

    CYLINDER : 18 , HEAD : 0

    CYLINDER : 17 , HEAD : 14

    CYLINDER : 17 , HEAD : 13

    ..

    ..

    ..


    검사가 끝나면 다시 그림 1로 돌아온다.
    2를 입력하면 커서가 하단의 * Interleave value : 1 항목으로 이동한다.
    앞에서 말한 인터리브 값을 입력하는 곳인데 하드디스크 크기나 제조업체에
    따라 최적값이 조금씩 다르기 때문에 해당 업체에 문의한 후 적당한 값을
    입력한다. 이 값에 따라서 하드디스크의 성능이 달라질 수 있기 때문에
    정확한 값을 알아보는 것이 좋다.
    1-9까지 입력할 수 있는데 기본값인 3으로 설정해도 별 무리는 없을 듯 하다.

    Hdisk.com 유틸리티는 실린더, 섹터 값을 직접 입럭해야 한다.
    Enter Selection number [ 2 ]에서 3을 입력하면 다음과 같은 화면이 나온다.


    ============================================================

    *** DEFECT VALUE ***

    ============================================================

    ?Cyl--Hd Cyl--Hd Cyl--Hd Cyl--Hd Cyl--Hd Cyl--Hd

    ?

    ?

    ?

    ?

    ?

    ============================================================

    Max. No. of Cyl: 1009,hd: 14

    Enter Cylinder Number:

    Enter Head Number:

    Press ESC return to MAIN



    위 항목에 아까 메모해둔 실린더와 헤드 값을 입력한다. 실린더와 헤드의
    최대값인 1009, 14를 넘어서는 하드디스크는 사용할 수 없다. 입력이 끝나면
    ESC 키를 눌러 메인 화면으로 돌아온다.

    이제 포맷 명령을 내릴 차례. Enter Selection number [ 2 ]에서 4을 입력하고
    엔터 키를 누르면 다음과 같은 메시지가 나온다.

    Selection number [ 2 ]에서 3을 입력하면 다음과 같은 화면이 나온다.

    ALL DATA IN THE FIXED DRIVE D : WILL BE DESTROYED.

    DO YOU WANT TO FORMAT THIS FIXED DRIVE (Y/N)?



    D 드라이브의 모든 자료가 없어진다는 의미이다. 지금이라도 늦지 않았다.
    아직 백업을 하지 못했다면 지금이 마지막 기회이다. Y를 입력하고 엔터 키를
    누른다. 친절하게도 한번의 기회를 더 주는 화면이다.

    THIS IS LAST CHANCE !!!!

    PRESS ENTER TO BEGIN FORMATTING FIXED DRIVE D :



    엔터 키를 치면 이젠 로우 포맷을 실행한다. 엔터 키를 쳤는데도

    CYLINDER NUMBER IS

    Mismatched hard disk type Press any key



    와 같은 메시지가 나온다면 다른 로우 포맷 프로그램을 이용한다. 프로그램에
    따라 정확한 실린더, 섹터 값을 인식하는 한계치가 다를 수 있다. 로우
    포맷이 끝나면 바이오스에서 LBA 모드로 변경한 후, 도스의 fdisk를 이용해
    파티션을 하고 format 명령어로 다시 포맷을 해준다.



3. 로우 포맷 후 주의할 점

아직은 로우 포맷으로 한방 먹인 하드디스크에 이상이 있다는 얘기는 들어보지
못했다.
로우 포맷은 하드디스크의 성능에 영향을 끼칠 수 있어 가급적 하지 않는 것이 좋다.
불가피하게 해야 할 경우라면 가급적 해당 업체의 프로그램을 이용하고 만약에 부트
섹터에 오류가 있거나 실린더가 맛이 갔을 때 로우 포맷을 하면 다시는 그 하드
디스크가 내 곁으로 돌아오기는 힘들다.

또한 로우 포맷 중 컴퓨터 다운, 전원 중단, 프로그램이 강제로 종료된다면 하드
디스크는 영원히 돌아올 수 없는 확률이 매우 높으니 주의하기 바란다.
모든 컴퓨터 부품이 그렇지만 특히 하드디스크는 항상 조심해서 보물 다루듯 정성을
다해야 한다.

하드디스크 관심 정도에 따라 곧 수명도 비례함을 마지막으로 강조한다.

발췌: 보물섬(www.bomul.com)

***  기타 자료실로 ***