페도라등의 배포판의 설치시 동작원리를 알고 싶습니다..

페르젠의 이미지

사용OS : 맨드리바 2007
시스템 : 인텔 펜티엄D930 (1G) , amd Athlon-xp1800+(256m)

제가 새로운 배포본을 만들고 싶어서 이런저런 자료들을 찾던중에
아무래도 기존 배포본들의 설치원리를 제대로 이해해야 한다는 필요성이
느껴지더군요.

kldp 와 인터넷 사이트에서 뒤지다 보니.. LFS 를 보았는데..
이건 말그대로 소스를 처음부터 하나하나 컴파일 설치를 하는 그런것이더군요.

맨드리바, 페도라, 우분투 등 배포본들이 부팅되고 패키지가 풀리면서 설치되는 과정과
그 동작들에 대한 원리를 설명한 문서나 자료가 없을까요?

위키의 개발자에 배포본 제작에 관한 레드햇관련 자료는 두가지 모두 저장 및
프린트를 해둬서 보고있습니다만 이해하기 어려워 기존 배포판들의 인스톨과정을
알아보고 싶습니다.

ironiris의 이미지

레드햇 관련 자료를 봤는데 잘 이해가 안되시면
레드햇 기반 배포본을 만드시는 김정균님께 문의해보시는 것도 좋을것 같습니다.(http://www.oops.org/)

페르젠의 이미지


써주신 주소로가서 가르침을 부탁드려야 겠습니다.

신경써서 답글달아 주셔서 정말 감사드립니다.. ^^*

뭐 이제 한달 다 지나가지만..

2007년 내내 복 많이 받으세요 ~^^

ydhoney의 이미지

설치를 많이 해 보시면서 2,3,4번 콘솔을 보면서 어떤 과정을 거치는지 대략적으로나마 과정이 나오니 그런 과정부터 익숙해지셔야 할 것입니다.

저도 2007년 복 좀 받아가겠습니다. :-)

==
아 씨끄러 씨끄러~ 조용해!!
레드햇 9 이하 사용금지!

마잇의 이미지

젠투 기반으로 만들어 보시는 것도 좋을것 같습니다. '모든 배포본은 젠투를 기반으로 만들어지게 될 것이다'는 농담도 있고요. 실제 그런 용도에 적합한 구조입니다. VLOS가 젠투 기반으로 제작된 바이너리 배포본입니다.

--
마잇


--
마잇

페르젠의 이미지

한밤 자고 나니 답글이 있었네요.

재부팅해보면서 콘솔창 확인작업을 다시 해봐야겠습니다~^^

설치 과정을 지켜보기도 하고 젠투기반의 리눅스도 생각해보았습니다.

일단 아는 사람의 조언을 얻어서

젠투가 램디스크에 작은기능을 하는 커널을 올려서 동작한 다음 커널 소스를 받아와서

환경을 만들고 컴파일 후 설치하고- (하드에 심고) 그 커널로 부팅하게끔 환경을 바꿔 준다고

알았습니다.

그 과정에서 빌드스크립트가 하드에 심어주는 역할을 한다고 하더군요.

흠- 다른 배포본들의 패키지들이 어떤 식으로 움직이는지 자료좀 찾으려고 하니 없네요..;;

그것들도 일단은 시디로 부팅가능한 상태로 움직이니까요. 아마도.. 우분투의 인스톨시 작은

OS가 뜨는것도 젠투와 마찬가지로 작은 커널과 GUI를 먼저 램에 띄우거나 하여 설치하는 듯

보입니다.

앞으로도 답변글 기다리겠습니다. 저도 틈틈히 알아내서 글 올리겠습니다.

2007 년 복을 두배 세배(..;설날?;;) 로 허리 휠 정도로 받으세요오~ ^^* ㅎ

(음.. 너무했나..;;)

마잇의 이미지

대부분의 배포본 설치 시디는 그냥 리눅스 그 자체 입니다. 리눅스 커널로 부팅하고 설치용 프로그램을 바로 실행시킵니다.

여기서 한발짝 더 나가서 지금은 라이브시디를 이용하기도 합니다. 시디만으로 실제 설치했을때와 같은 상태로 부팅이 되는 거죠. 그냥 사용만해도되고 그 상태에서 설치를 시작할수도 있구요.

3. Project Goals
 
The goal of the catalyst project is to provide a single multi-faceted tool that can reliably build all aspects of a Gentoo Linux release: stage tarballs, GRP package sets, and install CDs. 

젠투의 Catalyst 프로젝트라고 있는데 여길 들여다 보시면 원하시는 종류의 정보들이 나올것 같습니다.

레드햇을 비롯해서 많은 곳에서는 아나콘다를 사용하다고 알고 있습니다. 이게 가장 많이 쓰이는 설치용 프로그램이 아닐까 합니다.
http://fedoraproject.org/wiki/Anaconda

--
마잇


--
마잇

페르젠의 이미지


그렇잖아두 아나콘다를 이용하는 방법에 대해서 김정균님에 답글을 보았습니다.
한글로 된 문서는 거의 없고 자세한 내용을 스스로 소스코드를 보면서 이해하셨다고..;;
개발기간을 듣고 놀라긴 하였습니다. 그러나 포기하진 않을 생각입니다.. ㅎㅎ

아나콘다의 동작원리를 알아야겠지만 일단 기존 배포판들의 소스코드중 일부만
변경하여 새이름에 배포판을 만드는 생각을 가지고 있기 때문에.. 소스를 전부 볼일은
없을것 같다는 글을 보았습니다.

하지만 결국 아나콘다의 소스를 보아야할 상황이 벌어질지도 모르는 일이죠^^;
김정균님은 인스톨러 이해하는 시간만 상당하다고 하셨네요.
전문 개발자 분께서 그정도시니..;; 저는 더 오래 걸릴지도 모르죠.

젠투방식을 비슷하게 따라가볼 생각입니다.
먼저 부팅 및 램디스크에 커널을 올리고 개발툴을 설치하고는 하드웨어 정보를
읽어드리는 것부터 해야할듯 싶습니다.
그 다음에 usb이미지에서 커널소스를 불러와서 컴파일 한 후에 커널을 하드에 설치하는 것까지
해보려고 합니다만..-_-;

아직 짧은 실력으로 과연 어디까지 진행될지 모르겠군요.
ㅎㅎㅎ;;
부디 응원해주시기를. 쿨럭~;

ironiris의 이미지

해당 작업이라면 슬랙웨어 라이브시디, knoppix, damn Small Linux에 대해서 정보를 얻어보시는 것도 좋을것 같습니다.

댓글 달기

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