리눅스 xp 멀티 부팅과 부트로더에 대해 궁금한점입니다.

neon20의 이미지

현재 저의 fdisk 정보입니다.

Disk /dev/hdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hdb1   *           1         991     7960176   83  Linux
/dev/hdb2             992       19457   148328145    f  W95 Ext'd (LBA)
/dev/hdb5             992        1252     2096451   82  Linux swap
/dev/hdb6            1253       10304    72710158+   7  HPFS/NTFS
/dev/hdb7           10305       19457    73521441    7  HPFS/NTFS

Disk /dev/sda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        2649    21278061    7  HPFS/NTFS
/dev/sda2            2650       30400   222909907+   f  W95 Ext'd (LBA)
/dev/sda5            2650       16546   111627621    7  HPFS/NTFS
/dev/sda6           16547       30400   111282223+   7  HPFS/NTFS

보시는 바와 같이 ata에는 xp가 그리고 ide에는 리눅스가 설치되어있습니다. 그런데 멀티 부팅이 되지 않아서 grub.conf 파일을 조작해서 부팅이 되게 하려고 합니다. 리눅스가 설치된 디스크의 선만 연결하면 리눅스가 부팅되고 xp가 설치된 디스크의 선만 연결하면 xp가 부팅 됩니다. 두 디스크의 선을 모두 연결하면 먼저 연결한 쪽의 하드의 os가 부팅됩니다. xp가 부팅되면 계속 xp만 실행되구요 리눅스가 부팅되면 other 로 xp를 선택해도 부팅이 되지 않고 멈춤니다. 다음의 저의 grub.conf 파일입니다.

default=2
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.9-1.667smp)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.9-1.667smp ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.9-1.667smp.img
title Fedora Core-up (2.6.9-1.667)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.9-1.667 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.9-1.667.img
title Other
        map(hd0)(hd1)
        map(hd1)(hd0)
        rootnoverify (hd1,0)
        chainloader +1

위의 other이 xp 부분입니다. 위와 같이 사용하는게 맞나요?
혹시 rootnoverify(sd0,0)로 설정해야 하는건 아닌가요? 몇일동안 이것 때문에 항상 본체 뚜껑을 열어놓구 있습니다. 하드의 연결선을 뺐다 꼽았다 하려구요.. :oops:
참 마지막으로 궁금한 점은요 hda(hdb,hdc...), hd0(hd1,hd2...) ,sda(sda...) 의 차이는 뭔가요?

neon20의 이미지

헛 grub.conf 파일을 보다가 이상한 부분을 찾았는데요..

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You do not have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /, eg.
#          root (hd0,0)
#          kernel /boot/vmlinuz-version ro root=/dev/hdb1
#          initrd /boot/initrd-version.img
#boot=/dev/hdb

/boot 파티션을 잡지 않았다고 경고를 주는데 제가 뭐 잘못한거라도 있나요? 이것 때문에 멀티 부팅이 되지않는 것인가요?

wariua의 이미지

몇 가지만 달자면...

hda, hd0, sda
"hd?"(hda, hdb, ...)와 "sd?"(sda, sdb, ...)는 리눅스에서 사용하는 디스크 장치에 대한 이름입니다. "hd?"는 IDE 하드디스크를, "sd?"는 SCSI 하드디스크를 나타냅니다. "hd" 및 "sd" 뒤의 알파벳은 몇 번째 장치인지를 나타냅니다. "hda"는 IDE의 primary master, "hdb"는 primary slave, "hdc"는 secondary master, ... "sd"쪽에서 a, b, c,...가 뭔지는 저도 잘...;; 이걸 참고하실 수 있고, 검색을 통해 추가 지식을 얻으실 수 있습니다.

"hd0"는 grub에서 사용하는 장치 이름입니다. 일반적으로 하드디스크를 의미합니다. grub 매뉴얼의 해당 절을 참고하실 수 있습니다.

대략 윈도우에서 특정 드라이브를 보통은 "C:", "D:" 식으로 가리키지만 부트로더 설정 파일인 boot.ini에서는 "multi(0)disk(0)rdisk(1)partition(1)" 식으로 가리키는 것과 비슷하다고 보시면 되겠습니다.

요약하면,
hda1: IDE primary master 디스크의 첫 번째 파티션
sdb3: SCSI 두 번째 디스크의 세 번째 파티션
hd0,0: (grub용) 첫 번째 하드디스크의 첫 번째 파티션

SATA가 hda인지 sda인지는 사용해 보지 못했으므로 휘리릭~

grub.conf의 주석

멀티 부팅과는 관련 없는 내용입니다. "Note that you do not ..." 부분은 grub.conf 파일 변경하고서 grub 프로그램을 실행해 줄 필요가 없다는 뜻이고(이전에 주로 사용되던 lilo라는 부트 로더에서는 실행을 해주어야 했습니다), "NOTICE: You do not have ..." 부분은 커널 및 부트로더 관련 파일의 저장을 위해 별도로 만들기도 하는 "/boot" 파티션을 설치 과정에서 별도로 만들지 않았다는 정도의 의미입니다. 여러 가지 이유로 커널 파일을 별도의 파티션("/boot")에 저장하기도 하지만, 쓰고 계신 것처럼 하나의 파티션("/")에 커널을 함께 저장할 수도 있습니다.

질문하신 내용 중 가장 중요한 내용은 건너뛰고 휘리릭~...
하려는 찰나에 비슷한 경우인 듯 해서 링크 붙입니다.

http://ubuntu.or.kr/rubybbs/index.php?bid=ubuntu&id=187&page=1

$PWD `date`

nahs777의 이미지

SATA는 sd 로 나갑니다.

device.map화일에서 sda가 hd얼마로 매핑되어 있는지를 확인하세요.~

파도의 이미지

/dev/hdb는 슬레이브 하드디스크로 생각되는데요.

/dev/hda는 원래 없는 건가요?

제 생각으로는 Other 부분을

title Other
        map(hd0)(hd2)
        map(hd2)(hd0)
        rootnoverify (hd2,0)
        chainloader +1 
이렇게 하면 될 것도 같은데 잘 모르겠습니다.

부팅시에 grub 메뉴에서 "c"를 누르면 커멘트모드로 들어 갈 수 있는데
여기서
geometry (
를 입력한 후 tab키를 누르면 뒤에 입력할 수 있는 장치의 리스트가 나옵니다.

그걸 보고 알맞은 것으로 바꿔보세요..

--------Signature--------
시스니쳐 생각 중..

neon20의 이미지

네 하드는 2개인데 ide는 hdb(슬레이브)로 ata는 sda(마스터)로 잡혀있습니다. 두 하드는 따로따로 부팅을 해도 각각 리눅스나 윈도우로 부팅이 되는데요... 혹시 mbr인가 거기서 문제가 있는것은 아닌가요?

neon20의 이미지

title Other 
        root (hd1,0)
        map (hd0) (hd1) 
        map (hd1) (hd0) 
        savedefault
        makeactive
        chainloader +1 

이렇게 했더니 되는군요. 모두 감사합니다.. :cry:

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.