부트파티션에 설치한 LILO or GRUB 가 실행될 수 있는 이유

applectron의 이미지

제가 제 컴퓨터에 맨 처음에는 윈도우즈(Windows XP)를 깔고,
그 다음에 리눅스(RedHat 9)를 깔았거든요. 그런데 리눅스 설치과정에서
리눅스 부트로더(GRUB)를 /boot의 첫섹터에 깔았어요.(Windows NT계열이 이미 깔려 있는 경우는 /boot의 첫섹터에 깔아야 한다고 설명되었어서.)
그래서 멀티부팅환경을 까는데 성공은 했고, 부팅하면 GRUB나오면서
윈도부팅할지 리눅스부팅할지 선택하는 화면 나오고 아무 문제가 없어요.
문제는 없는데, 단지 어떻게 이렇게 정상적으로 작동할 수 있는지 메커니즘이 궁금해요.
저의 이해에 따르면, 윈도우즈XP를 깔았을 때, NT Loader 가 MBR에 설치되었을 것이고, 그리고 나중에 리눅스 깔면서 /boot 파티션의 첫섹터에 깔렸을 거예요. 그러면 저의 하드의 최종상태는 MBR에 NT로더가 깔려있고 리눅스부트파티션의 첫부트섹터에 리눅스부트로더GRUB이 설치되있는 상태일 거라고 짐작하는데, 그런데 일단 컴퓨터를 부팅하면 MBR의 코드를 실행한다고 배웠는데, 그러면 MBR에는 NT로더가 있으니까 결국 제 컴퓨터부팅하면 NT로더가 실행될 것이고 그리고 NT로더의 역할은 윈도우즈 부팅시키는 거니까 결국은 윈도우즈가 부팅될 것이고 GRUB화면은 보지 못하게 되야 할 것 같거든요. 그런데 실제로는 제 컴퓨터를 부팅하면 GRUB화면이 나타나잖아요, 어떻게 NT로더가 GRUB으로 제어를 넘기라고 프로그래밍되어있는 게 아닐 것 같은데, 어떻게 해서 GRUB이 제어권을 잡게 되는거죠?

eminency의 이미지

레드햇 깔면서 grub이 MBR의 NT로더를 덮어쓰는 걸로 아는데요...

그리고 /boot파티션의 grub 설정 파일을 읽은 뒤 윈도우든 리눅스든 부팅하는 거죠...

노루가 사냥꾼의 손에서 벗어나는 것 같이, 새가 그물치는 자의 손에서 벗어나는 것 같이 스스로 구원하라 -잠언 6:5

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.