'부트로더'에 해당되는 글 2건

  1. 2009.07.06 USB메모리 파티션 강제 분할과 우분투(Ubuntu) 설치 메뉴얼 (27)
  2. 2009.06.06 SYSLINUX - bootloaders for FAT filesystems
2009. 7. 6. 16:33

USB메모리 파티션 강제 분할과 우분투(Ubuntu) 설치 메뉴얼

<1 - 파티션 나누기>

1. 우분투 CD를 넣고 CD-ROM으로 부팅을 한다. 이 때 USB메모리도 함께 꼽아 놓도록 하자.

2. 부팅이 마무리 되면 아래와 같은 화면이 나온다.


3. 아랍어에 자신이 있다면 아랍어를 선택하자.

4. 이어 나오는 화면에 설치하지 않고 우분투를 사용해보기(T) 를 선택한다.

우분투를 설치하기 전 파티션과 관련한 작업을 사전에 해 두어야 하기 때문이다.


5. 로딩이 좀 길다.


6. 우분투의 X윈도우가 나타나면 상단 최우측의 Applications -> System Tools ->Terminal 을 선택한다.

7. Terminal이 뜨면 sudo gparted 라고 입력한 후 엔터를 누른다.

8. 새창이 뜨면서 우분투 파티션 분할 프로그램인 gparted가 실행된다.


9. 처음 기본적으로 로딩되는 것은 컴퓨터에 장착된 HDD의 데이터이기에 USB메모리의 데이터를 불러오도록

상단 우측 메뉴에서 Gparted -> Devices -> 자신의 USB메모리를 찾아서 선택 하도록 하자.

장치 이름 우측의 용량이 표시되니 참고하여 선택하면 된다.


10. 자신의 USB메모리를 선택했으면 프로그램 메인에 USB메모리에 관한 정보가 뜬다.

상단 메뉴의 Device -> Creat Partition Table... 을 선택하여 USB메모리의 파티션을 초기화 시키도록 하자.

11. USB메모리안에 데이터를 모두 날리는 과정이니 백업해둘 데이터가 있으면 미리미리 백업해 두자.

경고창이 뜨면 Creat를 눌러 진행한다.


Partition 과 Filesystem은 unallocated로 초기화 되었을 것이다.

12. 여기서 USB메모리를 컴퓨터에서 뽑았다가 다시 끼우자.

예전 파티션 정보가 컴퓨터에 남아있다면 파티션 분할 마지막 과정에 가서 에러가 발생할 수 있기 때문이다.
혹여 뽑았을 때 gparted 프로그램이 종료가 되거나 하면 6번~9번까지 과정을 반복하도록 하자.

13. 이동식 디스크로 활용할 공간 부터 설정해 보도록 하자.

unallocated을 한번 클릭하고 상단 메뉴의 New 를 누르면 아래와 같은 창이 뜬다.


지금부터 파티션을 나누게 되는데 반드시 이동식 디스크로 활용할 공간 -> 우분투 설치 공간 -> Swap 공간 순으로 설정해야 한다.
그렇지 않고 "우분투 설치 공간 -> Swap 공간 -> 이동식 디스크로 활용할 공간" 같이 순서를 뒤바꾸면 나중에 이동식 디스크가 인식을 하지 못하게 되거나 RAW 디스크로 펑~하고 변신할 수 있으니 위 순서는 꼭 지키도록 하자.

창이 뜨면 아래 3가지만 변경하고 Add를 누른다.

Create as 는 Primary Partition
Filesystem 은 ntfs
New Size (Mib) 은 "이동식 디스크로 활용할 용량"을 기재.
예) 1기가 = 1024, 2기가 = 2048

14. 그러면 다음과 같이 나누어져 있을 것이다.


15. 다시 unallocated을 한번 클릭하고 상단 메뉴의 New 를 누른다.
그리고 우분투 설치 공간을 아래와 같이 설정한 후 Add를 누른다.

Create as 는 Primary Partition
Filesystem 은 ext3
New Size (Mib) 은 "우분투를 설치에 필요한 용량"을 기재.


설치에 최소 3G는 필요하니 형편에 맞게 4~5G 정도로 잡아준다.

USB 전체용량 - (이동식 디스크로 활용할 용량 + 우분투 설치 공간) = swap 용량

swap용량은 보통 512M~1G정도로 잡아두니 용량이 남는 다면 우분투 설치 공간에 더 투자하도록 하자.


16. 이제는 아래와 같이 파티션이 나누어 졌을 것이다.


17. 마지막으로 맨 아래 unallocated을 한번 클릭하고 상단 메뉴의 New 를 누른다.
그리고 swap 공간에 대한 정보를 아래와 같이 설정한 후 Add를 누른다.

Create as 는 Primary Partition
Filesystem 은 linux-swap
New Size (Mib) 은 건들지 않는다.


자세히 말해서 그냥 나머지 용량을 다 쓰는 것이니 굳이 기재를 하지 않아도 된다.
보통 자신의 컴퓨터 메모리의 두배의 용량을 swap 파티션 용량으로 설정하니 정확하지 않아도 대충 512M~1G 정도면 무난하다.


18. 이렇게 설정하면 이젠 파티션이 아래와 같이 완벽하게 나누어 졌다.

ntfs : 이동식 디스크로 사용할 용량
ext3 : 우분투가 설치될 용량
linux-swap : 우분투 운용에 필요한 swap 용량



19. 이젠 상단 메뉴의 Apply 버튼을 눌러 파티션 분할을 마무리 짓자.
한번 더 경고창이 나오는데 Apply를 눌러 진행시키도록 한다.


20. 파티션 분할이 정상적으로 완료되었으면 아래와 같은 창이 뜬다.

Close를 누르고 프로그램을 나간 후 재부팅을 하도록 하자.



<2 - 우분투 설치하기>

1. 재부팅을 할 때 앞과 마찬가지로 CD-ROM으로 부팅, USB메모리는 컴퓨터에 꼽아두도록 하자.

2. CD-ROM부팅이 끝나면 역시 언어선택 화면부터 시작한다.

3. 터키어에 자신 있는 사람이라면 터키어를 선택하도록 하자.

4. 이어지는 메뉴에 이번엔 우분투 설치하기(I) 를 선택한다.


5. 역시 좀 로딩이 길다.

6. 로딩이 끝나면 설치를 위한 다음과 같은 화면이 나타난다.

우분투 설치는 크게 7단계로 나누어 지며 4번째 단계를 제외하고는 크게 신경 쓸 부분은 없다.

1번째 단계는 언어설정, 고대 마야어에 자신있는 사람이라면 고대 마야어를 선택하자.


7. 2번째 단계는 시간 설정이다.


8. 3번째 단계는 키보드 설정이다.

대한한국에서의 여유로운 인터넷 생활을 즐기기 위한다면 아래와 같이 선택하도록 하자.

Korea, Republic of
Korea, Republic of - 101/104 Key Compatible


9. 4번째는 파티션 설정이다.

파티션 설정 창에서 자동-디스크 전체 사용에 보면 두번째로 필자의 16G USB메모리가 잡혀있음을 알 수 있다.
USB부팅은 지원도 안해주는 컴퓨터에서 우분투는 USB드라이버까지 잘 잡아준다.
이건 그냥 구경만 하고 실질적으로 해야 할 것은 맨 아래에 있는 수동으로이다.

수동으로를 선택하고 앞으로를 누르자.

10. 5단계로 넘어간 줄 알았더니 여전히 4단계이다.

창을 보니 위쪽에는 하드드라이브가 아래쪽에는 앞서 나눠놨던 USB 파티션들이 표시되어 있다.


/dev/sdb
/dev/sdb1 ntfs
/dev/sdb2 ext3
/dev/sdb3 swap


일단 /dev/sdb1 ntfs는 절대 건들지 않는다.
그리고 눈여겨 보아야 할 것이 ext3, 즉 우분투를 설치할 파티션의 번호를 기억해두어야 한다.
마지막 단계에서 grub를 이 곳에 설치해야 하기 때문이다.
위 사진상에는 /dev/sdb2니, 2번이 되겠다. 기억하자.

먼저 /dev/sdb2 ext3 를 클릭하고 하단의 파티션 편집을 눌러서 아래와 같이 설정한다.


1. 용도가 "EXT3 저널링 파일 시스템" 으로 되어 있는지 확인.
2. 파티션 포맷 에 "체크"
3. 마운트 위치는 "/"로 선택.
4. OK 누름.


11. 다음은 /dev/sdb3 swap 을 클릭하고 하단의 파티션 편집을 눌러서 아래와 같이 설정한다.


1. 용도가 "스왑영역" 으로 되어 있는지 확인.
2. OK 누름.


파티션 설정이 끝났으니 앞으로를 누르고 설치를 진행한다.

12. 5단계는 계정 설정이다.

계정 설정을 마치고 앞으로를 눌러 설치를 진행하자.

13. 6단계는 외부에서 계정을 가져오는......
아무튼 그런 설정인데, 중요치 않으니 아무것도 하지 말고 다음단계로 넘어가자.

14. 마지막 7단계는 설치 정보 확인 과정인데, 여기서 좌측 하단에 있는 고급 을 클릭한다.
그러면 아래 그림과 같은 창이 뜨게 되는데, 여기서 바로 grub가 설치될 파티션을 선택해주어야 한다.


앞서 10단계에서 기억해야 한다는 파티션의 번호를 기억하는가?
우분투가 설치될 파티션, 즉 파일시스템이 ext3인 2번 파티션이다.

부트로더를 설치할 장치에서 ext3 파일 시스템을 사용하는 /dev/sdb2을 선택하고 OK를 누르자.

15. 설치정보를 확인하고 다음으로 넘어가면 설치가 진행된다.


16. 앞서 말했듯이 설치는 근성과 인내가 필요한 시간이니 어디가서 식사라도 하고 오는 것이 좋다.


<3 - 우분투로 부팅하기>

1. 지겹다.

2. 보는 사람은 얼마나 지겨울까.

3. 그래도 마지막이니 힘내서 가보자.

4. 자, 우분투의 설치가 끝났으면 다음과 같은 메세지가 나오며 재부팅을 요구한다.


5. 재부팅시 우분투가 CD를 뱉어내니 잊지말고 다시 집어넣도록 하자.


6. 다시 재부팅이 시작된다. USB메모리도 뽑지말고 그냥 두도록 하자.

언어선택 창이 나오고, 이집트 상형문자 해독에 자신이 있다면 알아서 선택하도록 하자.

7. 이어 나오는 화면에 설치하지 않고 우분투를 사용해보기(T)를 선택한다.

완성된 USB를 바로 사용할 수는 없다.
어짜피 부팅이 안된다.
그래서 부팅이 가능하도록 설정하기 위해서 지금부터 또 설정을 해야한다.
솔직히 이쯤되면 USB를 던져버리는 것이 정상이다.
그래도 이왕 여기까지 온거 조금만 더 가보도록 하자.

8. 로딩이 끝나고 우분투의 X윈도우가 나타나면 상단 최우측의 Applications -> System Tools ->Terminal 을 선택한다.

9. Terminal 창이 뜨면 grub 라고 입력 후 엔터를 친다.


10. grub가 구동되면 아래 명령어를 입력한 후 엔터를 친다.

find /boot/grub/stage1

11. 위 명령어의 결과로 예를 들어 (hd0, 1) 이라고 나오면
다시 root (hd0, 1) 라고 입력 후 엔터를 친 후,
다시 setup (hd0) 라고 입력 후 엔터를 친다.

그리고 마지막으로 quit 라고 입력하여 grub를 종료한다.


12. grub가 종료되어 다시 Terminal로 돌아오게 되면 입력창에 sudo gedit 라고 입력한 후 엔터를 치면 편집기가 실행 된다.

13. 상단메뉴의 Open을 눌러 File System에서 Media -> disk -> boot -> grub -> menu.lst 를 선택한다.

14. menu.lst를 클릭하고 하단메뉴의 Open을 누르면 내용이 편집기에 나타난다.

15. 여기서 몇몇 부분을 추가해야 하는데 주목해야 하는 부분은 아래 사진에 노랗게 표시된 부분이다.

거의 마지막 쯤에 있는 부분이다.


16. 이곳에 다음과 같이 적어 넣는다.


root (hd0,1)

(hd0,1)은 10번 과정에서 나타난 결과 값이다.
만일 10번에서 (hd0,0)이라고 결과값이 나타나면 root (hd0,0)으로 적어 넣어야 한다.

총 3줄을 위와 같이 삽입한 후 상단메뉴의 Save를 눌러 저장한 후 편집기를 종료한다.

17. termainal과 우분투를 종료한 후 시스템을 재시작 한다.

18. CD-ROM에서 CD를 제거하고, 컴퓨터 부팅 순서를 USB 우선으로 한다.

19. USB에서 우분투가 부팅이 된다.


 
<결론>

1. 윈도우로 부팅을 한다.

2. USB를 꼽는다.

3. U3지원 디스크면 U3 파티션은 삭제되지 않았기에 앞서 나눠놓은 ntfs 파티션을 이동식 디스크로 인식을 하게 된다.


4. U3지원 디스크가 아니더라도 ntfs 형식이 파티션이기에 우분투에서 할당된 용량 만큼 윈도우에서는 이동식 디스크로 인식을 하게되고 U3 인스톨 또한 가능하다.


5. USB 우분투로 부팅을 하게 되어도 이동식 디스크 파티션 또한 인식이 가능하기에 양쪽 OS에서 상호 인식이 가능해졌다.


<마치며>

필자의 의도대로 U3기능과 이동식 디스크를 살리면서 우분투를 설치, 양쪽 OS에서 인식이 가능하게 만들게 되었지만 사실 응용해보면 여러가지를 할 수 있는 것을 알 수 있다.
우분투 설치를 목적으로 하지 않고, 파티션 분할 기능이 없는 디스크를 파티션 나눌 때 gparted를 이용하여 여러개의 파티션을 ntfs로 나눠버리면 파티션 분할 기능이 없다해도 내 입맛 대로 찟어 놓을 수 있다.
게다가 우분투가 아니라 레드햇이나 DOS를 설치함에도 충분히 응용할 수 있다.

처음은 항상 번거롭게 보인다.
필자도 여러번 한 작업이지만 메뉴얼을 작성하면서 보니 "이렇게 복잡하고 귀찮은 작업이였나?" 라고 생각될 정도이다.
하지만 역시 보는 것하고 직접해보는 것 하고는 확실히 차이가 있다.
윈도우를 누가 처음부터 쉽게 설치했겠는가.
윈도우 설치에 대해서 설명만해도 책 한권은 나올 분량이지만, 숙련자라면 귀찮을 뿐이지 어렵다거나 힘들다고는 느끼지 않을 것이다.

나름대로 이것저것 긴 작업이다 보니까 메뉴얼을 지루하거나 어렵지 않게 쓸려고 노력을 했다.
근래에 MSI WInd U100을 구입하게 되면서 CD-ROM이 없는 넷북이다 보니 USB메모리 의존도가 높아질 수 밖에 없다.
외장형이나 커넥터나 못살 형편도 아니고, 그 돈이 아까운 것은 아니지만 휴대성을 위해 산 넷북인데 외장형 CD-ROM에 커넥터에 아답터에 덜렁덜렁 들고 다닐 생각을 하니 끔찍했다.
그래서 앞으로 누구누구는 편하게 작업할 내용도 억척같이 USB메모리로 때워보려 한다.

그러니 이 메뉴얼이 필자와 동일한 목적 혹은 메뉴얼을 참고할 어떤 목적을 가진 사람에게 시간절약 차원에서 도움이 된다면 더할 나위없이 보람있을 것이다.

-Write By Carroll-

출처 : http://carroll.egloos.com/


Trackback 1 Comment 27
  1. Clack 2009.07.17 09:33 address edit & del reply

    좋은 글 감사합니다. 안 그래도 UBUNTU를 USB에 꼭 깔아 보고 싶었는데 좋은 정보네요.
    그런데 위 처럼 모두 다 했습니다.
    Bios에서 USB로 부팅 설정을 하고 부팅을 하려는데 부팅디스크로 인식을 하지 못하네요.
    혹시 원인을 아실까해서 문의드립니다.

    • Favicon of https://blog.pages.kr 날으는물고기 2009.07.17 15:33 신고 address edit & del

      USB 중에 부팅이 불가능한 모델도 있습니다.

      또한 종류에 따라서 BIOS에서 USB-HDD, USB-ZIP, Removal 로 표시되오니 이 중 하나로 선택하셔서 부팅해 보시면 가능할 것 같습니다.

  2. Clack 2009.07.17 16:04 address edit & del reply

    제가 Install 시도한 USB는 USB로 Live CD를 담아서 TEST 까지 했던 것이기 때문에
    USB 부팅이 안되는 모델은 아닙니다.
    제가 위 셋팅 중에 마지막에 grub 관련된 부분을 잘못해서 부팅이 안되는 것인지...
    아니면 혹시 파티션 분할하면서 부팅 할 수 있는 무슨 옵션이 있어야 하는데 빠진건지 몰라서요.

    • 부트로더 2009.07.19 03:20 address edit & del

      어떻게 안되는지 에러 메세지를 안쓰셨네요..ㅋ

      말씀하신데로 부트로더 문제인것 같네요.

      부트로더 설치를 다시 해 보시면 되실것 같네요~~

  3. Seungyoon 2009.08.02 22:58 address edit & del reply

    정말 좋은 정보 감사합니다, 그동안 Live USB를 쓰다가 시스템의 드라이버를 깔아도 리셋하면 사라지는것 때문에 고생이 많았는데 이것으로 해결됐네요.

  4. 2009.09.11 17:35 address edit & del reply

    비밀댓글입니다

    • Favicon of https://blog.pages.kr 날으는물고기 2009.09.15 10:10 신고 address edit & del

      네.. 위와 동일한 방법으로 하시면 다른 리눅스 OS도 가능합니다.

  5. 나그네 2009.09.14 14:03 address edit & del reply

    다른 리눅스 예를 들어 레드햇이라든가. 또, 한소프트 리눅스, 한컴리눅스등.. 도 되나요?
    또 솔라리스(PC용)도 되나요?
    그리고 XP도 설치 가능할까요?
    어제 좀 시도해봤는데 하드디스크를 찾을 수 없다고 나오네요(달려있던 하드디스크는 테스트를 위해 떼어냈습니다)

    이게 성공하면 속도가 좀 느린 세미 SSD가 되겠지요..
    그리고 냐중에 다시 통 파티션(?)도 가능하겠지요..?

    • USB부팅 2009.09.15 10:10 address edit & del

      일반적인 리눅스가 되는듯 하고
      솔라리스는 시도해 보셔야 알 듯 하네요..

  6. 손군 2009.09.14 17:29 address edit & del reply

    설치는 성공했습니다.
    그런데 첫번째 파티션영역을 fat32로 만들어 부팅 복구 USB로 쓰려고 작업을 했습니다.
    그랬더니 도스 부팅만 되고 유분투에 들어가지 않습니다.
    방법이 없을까요?

    • USB부팅 2009.09.15 10:08 address edit & del

      부팅 파티션을 첫번째 파티션으로 하셨나 보네요..
      멀티부팅을 하시려면 GRUB나 LILO를 MBR에 설치하셔야 겠지요...

  7. 나그네 2009.09.15 09:35 address edit & del reply

    어제 한번 XP로 시도해 봤습니다. 뭐 일단 인식은 되더라고요.. 그래서 자신있게 USB 메모리 드라이브에 설치 시작. 일단 UsB 메모리에 설치 프로그램 복사하는과정은 순조롭더군요.. 문제는 이게 부팅기능이 없는지.. 이제 USB로 부팅되면서 그안에 복사된 설치 프로그램으로 설치가 진행되야 하는데.. 디스크 에러라고 뜨네요.. 몇번을 해봐도 마찬가지네용.. 그래서 설치를 위해 케이블을 빼놓았던 하드딛스크를 다시연결하고 하드디스크로 부팅후 USB 메모리는 다시 포맷했습니다.
    이번에는 일단.. 리눅스 시도해볼것인데...이것도 USB 메모리가 부팅기능 없으면 안되나요? 궁금합니다.

    어제 시도하기 전에 1차적으로 네이버 지식인데 질문을 올리니 자기전에 답변이 오더라고요.. 봤더니 USB에 맞게 변경된 CD가 있어야 하며 USB는 부팅을 지원해야 한다고 나오네요.. 변경하는것은 매우 복잡한데 일단 만들면 되고해서요..(USB가 부팅기능 없으면 벼경된걸로 해봣자 소용 없을거 같은데...)

    • USB부팅 2009.09.15 10:06 address edit & del

      USB 메모리에 따라 다른데..
      USB 가 부팅기능이나 OS 설치에 맞지 않는 경우가 있습니다.
      그런 경우 해당 메모리로는 활용이 불가능합니다.

  8. 나그네 2009.09.16 11:09 address edit & del reply

    잘하면 될듯한데요.. 일단 인터넷에 나온 방법데로 몇몇 파일을 편집했습니다. 단 울트라ISO가 데모라 굽지를 못하고 있네요.. 방법 없을까요? 일단 완성된 설치파일을 이용해야 설치가능한것으로 알고 있는데요.. 그리고 저런식으로 3중 분할하여 리눅스를 깔고 쓰다가 나중에 다시 하나로 포맷할 수 있나요?

    • 파티션 2009.09.17 18:52 address edit & del

      파티션은 나누었다가 다시 다 삭제하고 하나로 만들어서 포맷을 하면 될거예요~

  9. 나그네 2009.09.19 03:10 address edit & del reply

    오늘 윈도우 설치 테스트 한 6번째 된거같네요. .뭐를 해도 설치파일 복사후 재부팅할때 Disk error가 뜨네요(FAT32로 했을때, NTFS로 하면 동급의 유사한 에러가 뜹니다) USB 용 CD도 만들어 해보고 또, 부트섹터까지 새로 만들어 넣었는데. 계속같은 현상이 나오네요.. 설치화면에서 인식은 하는데 부팅기능이 없나 봅니다. 그런데요. 부팅기능이 없으면 리눅스도 못까는거 아닌가요? 아니면 깔았다 하더라도 부팅을 못하니 사용할 수 없던가요.. 부팅기능 넣는 방법은 없는거죠(도스로 부팅하는거 말고)?

    그리고 레드햇이나 다른 리눅스로 할려하려니.. 설치화면이 틀려서('설치하지 않고 사용해 보기'가 없어요) 파티션을 설정할 수가 없네용~ 리눅스에 있는 Grub 깔면 부팅될려나..?

  10. 나그네 2009.09.20 16:13 address edit & del reply

    다른 리눅스는 부팅 기능(?)이 없어서 일단 비슷한 버전의 우분투를 받아서 구웠습니다. 그래서 그걸로 테스트 예정..

  11. 나그네 2009.09.20 20:13 address edit & del reply

    연달아 댓글을 쓰게 되네요.. 몇시간전에 한번 깔아봤습니다. 우분투로요.. 저거 그대로 따라서 하니.. 부팅하는것까지 성공했습니다. USB가 레디 부스트(?)가 안되는 읽기 11MB/s 짜리라 그런지 초기 부팅시 좀 딜레이가 있드라고요.. 또 USB 용량이 8G가 되니 2G를 데이터 저장용 4G를 리눅스용, 나머지를 스왑으로 했습니다. 그런데 막상 우분투를 깔고 보니 UI가 맥OS를 보는듯한 그런 UI네욤.. 유명한 레드햇(버전9)이나 한소프트 리눅스를 깔아보고 싶은데 말이죠.. 사전 파티션 설정을 할 수 없으니..(우분투처럼 저런 친절한 로딩화면을 보여주지 않아욤.. 시디도 2~3장 되면서말이죠..) 뭐 인터넷은 ADSL쓰니 따로 DSL 접속을 만들어서 접속했습니다. 그런데 키보드 설정을 Republic of Korea, 101/104키를 선택했는데도 한글이 안써지는건 뭐때문이죠? 인증샷은 제 블로그에 올리면서 트랙백 달아놓을게욤.. 일단 소감은 부팅 기능 있는(?) USB 가 아니더라도 설치 및 부팅이 가능하다는점과 하드 케이블은 안뽑아도 된다는것이죠..(윈도우즈는 하드가 인식되면 기존의 부팅목록에 편입시켜버립니다.(최신버전의 경우 로더(ntldr)까지 덮어씀 -> 뭐 비스타나 7은 리눅스와 비슷해서 잘된다고 하는거 같긴하지만.. 비스타는 그닥 쓰고싶지 않기도 해서..)

  12. 나그네 2009.09.22 11:29 address edit & del reply

    어제 솔라리스 10 x86도 시도해본결과 USB를 인식하네요.. 그런데 용량이 부족한지. 자꾸 설치실패가 되네요.. 그리고 우분투는(다른 리눅스는 모르겟지만) 파티션 사전작업 안하고 설치단계에서 파티션 나누면 한번 설정하고 나면 더이상 안나눠지네요..(USB 메모리라서 그런지.. 나머지 공간은 사용불가가되버림.. 현제 윈도즈 부팅 되는지 확인차 우분투는 지웠습니다.)

  13. 나그네 2009.09.23 11:24 address edit & del reply

    어제 USB에 XP설치해서 부팅하는거 까지 성공했어요 많이 알려진방법인 하드 케이블 뽑고 하는것으로는 계속 에러가 뜨더군요. (일단 USB는 HP USB 포멧 툴로 포맷하여 부팅가능하게 말들었음) 그래서 여기에 소개된방법 일부 이용(하드, USB 모두 인식된 상태에서 설치 -> 이러면 설치하는 동안은 하드에 있는 부트로더를 이용하게 됨)하여 설치를 마치고 하드 부팅하여 Boot.ini 파일을 수정하고 이 파일을 부트로더 포함하여 USB에 넣은후 USB 부팅되게 바이오스 설정후 재부팅하여 부팅하는거 까지 성공하였습니다.(단 유의사항은 하드의 부트로더가 변경될 수 있으니 다른 버전의 윈도우(9x 및 비스타 이상 제외)로 설치시 하드에 있던 부트로더및 부트로더 관련 파일은 플로피등에 백업을 해두어야 합니다. -> 설치 완료후 복구 하되 하드에 비해 하위버전 설치시 백업한 부트로더로 부팅해야 한다(그냥은 부팅안됨))

  14. 자유평화 2009.11.08 00:35 address edit & del reply

    쥔장님의 자료가 좋아서 usboffice의 자료로 올릴까해서 스크렙하고 등록좀 하겠습니다...
    윈치 않으시면 삭제 하겠습니다..

  15. 라비크 2009.11.24 11:41 address edit & del reply

    갑자기 궁금한게 좀 생겼는데요.
    USB대신에 리더기를 이용한 MICRO SD카드를 사용해도 될까요??

    • Favicon of https://blog.pages.kr 날으는물고기 2009.11.24 20:39 신고 address edit & del

      부팅 기능이 있다면 가능하겠지만,
      리더기로는 부팅이 불가능 한 것으로 알고 있습니다.
      기술이 나날이 발전하기에 요즘은 잘 모르겠네요^^

  16. Favicon of http://hoojin.tistory.com 지나가다.. 2009.12.01 02:23 address edit & del reply

    멀티 리더기로 SD에 부팅되게 해서 만능 고스트로 부팅 시켜 복구 시킨적 있습니다. 최신 보드라 되느거 같기도 하던데.. 구형보드는 힘드거 같지만 신형보드에선 시도해볼만 합니다.

    • Favicon of https://blog.pages.kr 날으는물고기 2009.12.01 09:36 신고 address edit & del

      좋은 정보 감사합니다..^^

      안쓰는 SD를 만능 고스트로 쓸 곳이 생겼네요..

  17. Favicon of http://acleds.com/ acleds 2009.12.20 19:52 address edit & del reply

    제가 노트북에서 USB 메모리로 OS부팅을 해보았는데요
    주로 WinXP USB 버전만 되고, Ubuntu는 HDD를 빼고 USB 메모리만 꼽고 설치하면 다 됩니다.
    이때 Bios Setup에서 USB 메모리를 HDD로 설정해야 합니다.
    또한 USB 메모리는 미리 Win7 등에서 CMD로 FAT32, Boot 옵션을 주고 포맷해야 하구요.

  18. kdi0373 2010.12.22 00:44 address edit & del reply

    노트북 os가 비스타 체제 입니다.

    노트북을 리눅스 용으로 만들려고 하는데

    우분트 시디가 없어서 usb를 이용해서 포멧을 할려고 합니다.

    usb 를 이용해서 포멧 과 우분트 설치를 어떻게 해야 하는지 과정 좀 말씀 부탁 드립니다.

    참고로 usb용량은 3기가 조금 더 됩니다..

2009. 6. 6. 21:53

SYSLINUX - bootloaders for FAT filesystems

What is SYSLINUX?

SYSLINUX is a boot loader for the Linux operating system which operates off an MS-DOS/Windows FAT filesystem. It is intended to simplify first-time installation of Linux, and for creation of rescue- and other special-purpose boot disks.

SYSLINUX can be used, when properly set up, to completely eliminate the need for distribution of raw diskette images for boot floppies. A SYSLINUX floppy can be manipulated using standard MS-DOS (or any other OS that can access an MS-DOS filesystem) tools once it has been created.


Options

These are the options common to all versions of the SYSLINUX installer:

	-s	Safe, slow, stupid: uses simpler code that boots better. 
		  This version may work on some very buggy BIOSes on which SYSLINUX would otherwise fail. 
		  If you find a machine on which the -s option is required to make it boot reliably, 
		  please send as much info about your machine as you can, and include the failure mode.
	-f	Force installing.
	-r	Raid mode:
		  If boot fails, tell the BIOS to boot the next device in the boot sequence
		  (usually the next hard disk), instead of stopping with an error message.
		  This is useful for RAID-1 booting.

These are only available in the Windows version:

	-m	MBR: install a bootable MBR sector to the beginning of the drive.
	-a	Active: marks the partition used active (=bootable)

This is can only be used in the linux version:

	-o      Specifies the byte offset of the filesystem image in the file.
		  It has to be used with a disk image file.

Creating a Bootable Disk

Installing SYSLINUX to the disk will alter the boot sector on the disk and copy a file named LDLINUX.SYS into its root directory.

On boot time, by default, the kernel will be loaded from the image named LINUX on the boot disk. This default can be changed, see the section on the SYSLINUX config file.

If the Shift or Alt keys are held down during boot, or the Caps or Scroll locks are set, SYSLINUX will display a LILO-style "boot:" prompt. The user can then type a kernel file name followed by any kernel parameters. The SYSLINUX loader does not need to know about the kernel file in advance; all that is required is that it is a file located in the root directory on the disk.

In order to create a bootable disk using SYSLINUX, prepare a normal MS-DOS formatted disk. Copy one or more Linux kernel files to it, then execute:


NT/2K/XP

Syntax:
syslinux.exe [-sfmar][-d directory] <drive>: [bootsecfile]
Floppy: (a: in this example)
syslinux.exe a:
HardDrive/FlashDrive/etc: (z: in this example)
syslinux.exe -m -a -d /boot/syslinux z:
* In the above example syslinux.cfg would be expected to be in z:\boot\syslinux
* NOTE: Under NT/2K you may get a dialog box about not getting exclusive access and with Abort/Retry/Ignore buttons; selecting "Ignore" makes the command complete correctly.

DOS

Syntax:
syslinux.com [-sfmar][-d directory] <drive>: [bootsecfile]
Example:
syslinux.com a:

Linux

Syntax:
syslinux [-sfr][-d directory][-o offset] <DeviceOrImage>
Example:
syslinux /dev/fd0

The -o option (if specified) is used with a disk image file and specifies the byte offset of the filesystem image in the file.


How do I Configure SYSLINUX?

All the configurable defaults in SYSLINUX can be changed by putting a file called syslinux.cfg.

SYSLINUX searches for the SYSLINUX.CFG file in the following order:

/boot/syslinux/syslinux.cfg
/syslinux/syslinux.cfg
/syslinux.cfg

All filenames inside the config file are assumed to be relative to the same directory than the directory in which SYSLINUX.CFG resides, unless preceded with a slash or backslash.

This syslinux.cfg file is a text file in either UNIX or DOS format, containing one or more of the keywords listed below. Case is insensitive for keywords; upper case is used here to indicate that a word should be typed verbatim.

Here is a simple example syslinux.cfg file, with one entry to boot a Linux kernel:

 DEFAULT linux
 LABEL linux
 SAY Now booting the kernel from SYSLINUX...
 KERNEL vmlinuz.img
 APPEND ro root=/dev/sda1 initrd=initrd.img

Note that while LILO uses the syntax:

image = mykernel
  label = mylabel
  append = "myoptions"

... whereas SYSLINUX uses the syntax:

label mylabel
  kernel mykernel
  append myoptions

All options here applies to PXELINUX, ISOLINUX and EXTLINUX as well as SYSLINUX unless otherwise noted.

INCLUDE filename

Inserts the contents of another file at this point in the configuration file. Files can currently be nested up to 16 levels deep, but it is not guaranteed that more than 8 levels will be supported in the future.

LABEL command

Select a human-readable string to describe a kernel and other options. The default LABEL is called "linux", but you can change this with the "DEFAULT" keyword.

Labels are mangled as if they were filenames, and must be unique after mangling. For example, two labels "v2.1.30" and "v2.1.31" will not be distinguishable under SYSLINUX, since both mangle to the same DOS filename.

KERNEL file

Select the file that SYSLINUX will boot. The "kernel" doesn't have to be a Linux kernel; it can be a boot sector or a COMBOOT file.

Chain loading requires the boot sector of the foreign operating system to be stored in a file in the root directory of the filesystem. Because neither Linux kernels, boot sector images, nor COMBOOT files have reliable magic numbers, Syslinux will look at the file extension. The following extensions are recognized (case insensitive):

 none or other	Linux kernel image
 .0		PXE bootstrap program (NBP) [PXELINUX only]
 .bin		"CD boot sector" [ISOLINUX only]
 .bs		Boot sector [SYSLINUX only]
 .bss		Boot sector, DOS superblock will be patched in [SYSLINUX only]
 .c32		COM32 image (32-bit COMBOOT)
 .cbt		COMBOOT image (not runnable from DOS)
 .com		COMBOOT image (runnable from DOS)
 .img		Disk image [ISOLINUX only]

Using one of these keywords instead of KERNEL forces the filetype, regardless of the filename:

LINUX image

You can use this, instead of using KERNEL file to boot an linux kernel image.

BOOT image

Bootstrap program (.bs, .bin)

BSS image

BSS image (.bss)

PXE image

PXE Network Bootstrap Program (.0)

FDIMAGE image

Floppy disk image (.img)

COMBOOT image

COMBOOT program (.com, .cbt)

COM32 image

COM32 program (.c32)

CONFIG image

CONFIG will restart the boot loader using a different configuration file.


APPEND options...

Add one or more options to the kernel command line. These are added both for automatic and manual boots. The options are added at the very beginning of the kernel command line, usually permitting explicitly entered kernel options to override them. This is the equivalent of the LILO "append" option.

APPEND -

Append nothing. APPEND with a single hyphen as argument in a LABEL section can be used to override a global APPEND.

IPAPPEND flag_val [PXELINUX only]

The IPAPPEND option is available only on PXELINUX. The flag_val is an OR of the following options:

1: indicates that an option of the following format should be generated and added to the kernel command line:

ip=<client-ip>:<boot-server-ip>:<gw-ip>:<netmask>

... based on the input from the DHCP/BOOTP or PXE boot server.

The use of this option is not recommended. If you have to use it, it is probably an indication that your network configuration is broken. Using just ip=dhcp on the kernel command line is a preferrable option, or, better yet, run dhcpcd/dhclient, from an initrd if necessary.

2: indicates that an option of the following format should be generated and added to the kernel command line:

BOOTIF=<hardware-address-of-boot-interface>

... in dash-separated hexadecimal with leading hardware type (same as for the configuration file; see PXELINUX documentation).

This allows an initrd program to determine from which interface the system booted.

LABEL label 
KERNEL image
 APPEND options...
 IPAPPEND flag_val [PXELINUX only] 
 Indicates that if "label" is entered as the kernel to boot, SYSLINUX should instead boot "image", and the specified APPEND and IPAPPEND options should be used instead of the ones specified in the global section of the file (before the first LABEL command.) The default for "image" is the same as "label", and if no APPEND is given the default is to use the global entry (if any). Up to 128 LABEL entries are permitted. (for ISOLINUX, 64 LABEL entries.) 

LOCALBOOT type [ISOLINUX, PXELINUX]

On PXELINUX, specifying "LOCALBOOT 0" instead of a "KERNEL" option means invoking this particular label will cause a local disk boot instead of booting a kernel.

The argument 0 means perform a normal boot. The argument 4 will perform a local boot with the Universal Network Driver Interface (UNDI) driver still resident in memory. Finally, the argument 5 will perform a local boot with the entire PXE stack, including the UNDI driver, still resident in memory. All other values are undefined. If you don't know what the UNDI or PXE stacks are, don't worry -- you don't want them; just specify 0.

On ISOLINUX, the "type" specifies the local drive number to boot from; 0x00 is the primary floppy drive and 0x80 is the primary hard drive. The special value -1 causes ISOLINUX to report failure to the BIOS, which, on recent BIOSes, should mean that the next boot device in the boot sequence should be activated.

INITRD initrd_file

Starting with version 3.71, an initrd can be specified in a separate statement (INITRD) instead of as part of the APPEND statement; this functionally appends "initrd=initrd_file" to the kernel command line.

It supports multiple filenames separated by commas. This is mostly useful for initramfs, which can be composed of multiple separate cpio or cpio.gz archives. Note: all files except the last one are zero-padded to a 4K page boundary. This should not affect initramfs.


DEFAULT command

Sets the default command line. If SYSLINUX boots automatically, it will act just as if the entries after DEFAULT had been typed in at the "boot:" prompt, except that the option "auto" is automatically added, indicating an automatic boot.

If no configuration file is present, or no DEFAULT entry is present in the config file, the default is kernel name "linux", with no options.

UI module options...

Selects a specific user interface module (typically menu.c32 or vesamenu.c32). The command-line interface treats this as a directive that overrides the DEFAULT and PROMPT directives.

PROMPT flag_val

If flag_val is 0, display the boot: prompt only if the Shift or Alt key is pressed, or Caps Lock or Scroll lock is set (this is the default). If flag_val is 1, always display the boot: prompt.

NOESCAPE flag_val

If flag_val is set to 1, ignore the Shift/Alt/Caps Lock/Scroll Lock escapes. Use this (together with PROMPT 0) to force the default boot alternative.

NOCOMPLETE flag_val

If flag_val is set to 1, the Tab key does not display labels at the boot: prompt.

IMPLICIT flag_val

If flag_val is 0, do not load a kernel image unless it has been explicitly named in a LABEL statement. The default is 1.

ALLOWOPTIONS flag_val

If flag_val is 0, the user is not allowed to specify any arguments on the kernel command line. The only options recognized are those specified in an APPEND statement. The default is 1.

TIMEOUT timeout

Indicates how long to wait at the boot: prompt until booting automatically, in units of 1/10 s. The timeout is cancelled as soon as the user types anything on the keyboard, the assumption being that the user will complete the command line already begun. A timeout of zero will disable the timeout completely, this is also the default.

NOTE: The maximum possible timeout value is 35996; corresponding to just below one hour.

TOTALTIMEOUT timeout

Indicates how long to wait until booting automatically, in units of 1/10 s. This timeout is *not* cancelled by user input, and can thus be used to deal with serial port glitches or "the user walked away" type situations. A timeout of zero will disable the timeout completely, this is also the default.

Both TIMEOUT and TOTALTIMEOUT can be used together, for example:

# Wait 5 seconds unless the user types something, but
# always boot after 15 minutes.
TIMEOUT 50
TOTALTIMEOUT 9000

ONTIMEOUT kernel options...

Sets the command line invoked on a timeout. Normally this is the same thing as invoked by DEFAULT. If this is specified, then DEFAULT is used only if the user presses <Enter> to boot.

ONERROR kernel options...

If a kernel image is not found (either due to it not existing, or because IMPLICIT is set), run the specified command. The faulty command line is appended to the specified options, so if the ONERROR directive reads as:

ONERROR xyzzy plugh 

... and the command line as entered by the user is:

foo bar baz 

... SYSLINUX will execute the following as if entered by the user:

xyzzy plugh foo bar baz

SERIAL port [[baudrate] flowcontrol]

Enables a serial port to act as the console. "port" is a number (0 = /dev/ttyS0 = COM1, etc.) or an I/O port address (e.g. 0x3F8); if "baudrate" is omitted, the baud rate defaults to 9600 bps. The serial parameters are hardcoded to be 8 bits, no parity, 1 stop bit.

"flowcontrol" is a combination of the following bits:

0x001 - Assert DTR
0x002 - Assert RTS
0x010 - Wait for CTS assertion
0x020 - Wait for DSR assertion
0x040 - Wait for RI assertion
0x080 - Wait for DCD assertion
0x100 - Ignore input unless CTS asserted
0x200 - Ignore input unless DSR asserted
0x400 - Ignore input unless RI asserted
0x800 - Ignore input unless DCD asserted

All other bits are reserved.

Typical values are:

    0 - No flow control (default)
0x303 - Null modem cable detect
0x013 - RTS/CTS flow control
0x813 - RTS/CTS flow control, modem input
0x023 - DTR/DSR flow control
0x083 - DTR/DCD flow control

For the SERIAL directive to be guaranteed to work properly, it should be the first directive in the configuration file.

NOTE: "port" values from 0 to 3 means the first four serial ports detected by the BIOS. They may or may not correspond to the legacy port values 0x3F8, 0x2F8, 0x3E8, 0x2E8.

CONSOLE flag_val

If flag_val is 0, disable output to the normal video console. If flag_val is 1, enable output to the video console (this is the default.) Some BIOSes try to forward this to the serial console and sometimes make a total mess thereof, so this option lets you disable the video console on these systems.

FONT filename

Load a font in .psf format before displaying any output (except the copyright line, which is output as ldlinux.sys itself is loaded.) SYSLINUX only loads the font onto the video card; if the .psf file contains a Unicode table it is ignored. This only works on EGA and VGA cards; hopefully it should do nothing on others.

KBDMAP keymap

Install a simple keyboard map. The keyboard remapper used is very simplistic (it simply remaps the keycodes received from the BIOS, which means that only the key combinations relevant in the default layout -- usually U.S. English -- can be mapped) but should at least help people with QWERTZ or AZERTY keyboard layouts and the locations of = and , (two special characters used heavily on the Linux kernel command line.)

The included program keytab-lilo.pl from the LILO distribution can be used to create such keymaps. The file keytab-lilo.doc contains the documentation for this program.

Syslinux also ships a comboot module named kbdmap.c32 which allows to change the keyboard mappings on the fly, making it possible to add a keyboard-selection menu and/or keyboard-selection labels from within the syslinux config file.

SAY message

Prints the message on the screen.

DISPLAY filename

Displays the indicated file on the screen at boot time (before the boot: prompt, if displayed). Please see the section below on DISPLAY files.

NOTE: If the file is missing, this option is simply ignored. 

F[1-12] filename

F1 filename
F2 filename
  ...etc...
F9 filename
F10 filename
F11 filename
F12 filename 

Displays the indicated file on the screen when a function key is pressed at the boot: prompt. This can be used to implement pre-boot online help (presumably for the kernel command line options).

Please see the section below on DISPLAY files.


When using the serial console, press <Ctrl-F><digit> to get to the help screens:

<Ctrl-F><1>			to get the F1 screen
<Ctrl-F><2>			to get the F2 screen
   ...etc...
<Ctrl-F><9>			to get the F9 screen
<Ctrl-F><A> (or <Ctrl-F><0>)	to get the F10 screen
<Ctrl-F><B>			to get the F11 screen
<Ctrl-F><B>			to get the F11 screen
<Ctrl-F><C>			to get the F12 screen


In the configuration file blank lines and comment lines beginning with a hash mark (#) are ignored.

Note that the configuration file is not completely decoded. Syntax different from the one described above may still work correctly in this version of SYSLINUX, but may break in a future one.


Can SYSLINUX Handle Large Kernels?

This version of SYSLINUX supports large kernels (bzImage format), eliminating the 500K size limit of the zImage kernel format. bzImage format kernels are detected automatically and handled transparently to the user.

This version of SYSLINUX also supports a boot-time-loaded ramdisk (initrd). An initrd is loaded from a DOS file if the option "initrd=filename" (where filename is the filename of the initrd image; the file must be located in the root directory on the boot floppy) is present on the processed command line (after APPEND's have been added, etc.). If several initrd options are present, the last one has precedence; this permits user-entered options to override a config file APPEND. Specifying "initrd=" without a filename inhibits initrd loading. The file specified by the initrd= option will typically be a gzipped filesystem image.

EXAMPLE (extlinux):

 append ro root=/dev/hda1 initrd=/boot/initrd.img

NOTE: One of the main advantages with SYSLINUX is that it makes it very easy to support users with new or unexpected configurations, especially in a distribution setting. If initrd is used to extensively modularize the distribution kernel, it is strongly recommended that a simple way of adding drivers to the boot floppy be provided. The suggested manner is to let the initrd system mount the boot floppy and look for additional drivers in a predetermined location.

To bzImage and recent zImage kernels, SYSLINUX 1.30 and higher will identify using the ID byte 0x31. PXELINUX identifies using the ID byte 0x32, ISOLINUX 0x33, and EXTLINUX 0x34. The ID range 0x35-0x3f is reserved for future versions of derivatives of SYSLINUX.


What is the DISPLAY File Format?

DISPLAY and function-key help files are text files in either DOS or UNIX format (with or without <CR>). In addition, the following special codes are interpreted:

Clear the screen, home the cursor:

<FF>  <FF> = <Ctrl-L> = ASCII 12

Note that the screen is filled with the current display color.

Set the display colors to the specified background and foreground colors:

<SI><bg><fg>  <SI> = <Ctrl-O> = ASCII 15

where <bg> and <fg> are hex digits, corresponding to the standard PC display attributes:

0 = black               8 = dark grey
1 = dark blue           9 = bright blue
2 = dark green          a = bright green
3 = dark cyan           b = bright cyan
4 = dark red            c = bright red
5 = dark purple         d = bright purple
6 = brown               e = yellow
7 = light grey          f = white

Picking a bright color (8-f) for the background results in the corresponding dark color (0-7), with the foreground flashing.

Colors are not visible over the serial console.

Example: color.txt file:

^O9eBlinking Yellow on Blue Background
# xxd color.txt
0000000: 0f39 6542 6c69 6e6b 696e 6720 5965 6c6c  .9eBlinking Yell
0000010: 6f77 206f 6e20 426c 7565 2042 6163 6b67  ow on Blue Backg
0000020: 726f 756e 640a                           round.

Display graphic from filename:

<CAN>filename<newline>  <CAN> = <Ctrl-X> = ASCII 24

If a VGA display is present, enter graphics mode and display the graphic included in the specified file. The file format is an ad hoc format called LSS16; the included Perl program "ppmtolss16" can be used to produce these images. This Perl program also includes the file format specification.

The image is displayed in 640x480 16-color mode. Once in graphics mode, the display attributes (set by <SI> code sequences) work slightly differently: the background color is ignored, and the foreground colors are the 16 colors specified in the image file. For that reason, ppmtolss16 allows you to specify that certain colors should be assigned to specific color indices.

Color indices 0 and 7, in particular, should be chosen with care: 0 is the background color, and 7 is the color used for the text printed by SYSLINUX itself.

Return to text mode:

<EM>  <EM> = <Ctrl-Y> = ASCII 25

If we are currently in graphics mode, return to text mode. Select to which modes to print a certain part of the message:

<DLE>..<ETB>  <Ctrl-P>..<Ctrl-W> = ASCII 16-23

These codes can be used to select which modes to print a certain part of the message file in. Each of these control characters select a specific set of modes (text screen, graphics screen, serial port) for which the output is actually displayed:

Character                       Text    Graph   Serial
------------------------------------------------------
<DLE> = <Ctrl-P> = ASCII 16     No      No      No
<DC1> = <Ctrl-Q> = ASCII 17     Yes     No      No
<DC2> = <Ctrl-R> = ASCII 18     No      Yes     No
<DC3> = <Ctrl-S> = ASCII 19     Yes     Yes     No
<DC4> = <Ctrl-T> = ASCII 20     No      No      Yes
<NAK> = <Ctrl-U> = ASCII 21     Yes     No      Yes
<SYN> = <Ctrl-V> = ASCII 22     No      Yes     Yes
<ETB> = <Ctrl-W> = ASCII 23     Yes     Yes     Yes

For example:

<DC1>Text mode<DC2>Graphics mode<DC4>Serial port<ETB>

will actually print out which mode the console is in!

End of file:

<SUB>  <SUB> = <Ctrl-Z> = ASCII 26

End of file (DOS convention).

Beep:

<BEL>  <BEL> = <Ctrl-G> = ASCII 7

Beep the speaker.


원문 : http://syslinux.zytor.com/


Trackback 8 Comment 0