· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Docbook Sgml/Jigdo-KLDP

데비안에서 Jigdo 사용 mini-HOWTO

데비안에서 Jigdo 사용 mini-HOWTO

윤종은

졸리면 자야 한다. 일은 낮에 해야 한다.

※ 이 문서로 인한 결과에 대해 본인은 책임지지 않습니다.

고친 과정
고침 0.12002-10-14고친이 윤 종은
최초 작성

1. Jigdo 소개

1.1. Jigdo란 무엇인가?

Jigdo는 데비안의 공식/비공식 ISO 이미지를 다운로드하는데 이용하는 툴입니다. 이 툴은 여러분에게 쉽고 빠른 방법으로 데비안 ISO 파일을 얻을 수 있게 해 줍니다. 하지만 이것은 GNU GPL하에 배포된 프로그램을 데비안에서 ISO 이미지 다운로드용으로 선택한 것일 뿐이지 데비안의 산물은 아닙니다.

전통적으로 ISO파일을 구하기 위해서는 공식/비공식 사이트에서 ISO 파일들을 다운로드 받아야 합니다. 혹은 pseudo-image kit(PIK)을 이용할 수도 있다고 합니다. - 전 이 툴을 모릅니다.

사실 영어가 부족한 저와 같은 사람이나 데비안을 처음 접하시는 분들은 ISO 파일을 구하는 것도 장난이 아닌 일이더군요.

자 그럼 이제부터 Jigdo가 뭔지 좀 더 알아볼까요?


1.2. Jigdo의 장점

사실 ISO 이미지를 다운로드 받는 것은 오로지 1개의 파일을 받으면 되는 일이기 때문에 편하다고 생각될지도 모릅니다. 하지만 데비안의 경우 너무나 잦은 업데이트가 있기 때문에 지금 받아둔 ISO파일은 금새 최신의 내용이 아니게 되고 이것을 다시 다운로드를 하게 된다면 전체 CD를 다시 받는 시간과 노력을 투자해야 합니다. 이것은 다운로드를 제공하는 서버에도 무리를 주고 시간도 소모를 하게 되겠지요.

Jigdo는 처음부터 모든 것들을 다운로드 받아서 ISO를 만들 수도 있고 이전 버전의 CD나 ISO로부터 업데이트 된 것들만 받아서 새로운 ISO를 만들 수도 있습니다. 결국 지속적으로 ISO를 새로운 것으로 유지하기 위해서는 Jigdo를 사용하는 것이 서버의 자원과 여러분의 시간을 절약해 주는 길이 될 것입니다.

PIK의 경우는 rsync를 사용한다고 합니다. 이 역시 업데이트 된 것만을 다운로드 받기는 하지만 서버의 CPU자원을 소모하며 firewall이 존재하는 경우는 올바르게 작동하지 않을 수도 있다고 합니다. 하지만 Jigdo는 기본적으로 HTTP를 이용하고 FTP도 지원하기 때문에 이러한 걱정을 덜 수 있습니다.


2. Jigdo를 사용해 보자

2.1. Jigdo로 ISO를 다운로드하자

Jigdo를 이용해서 ISO파일을 다운로드 하는 것은 매우 쉽습니다. 먼저 Jigdo를 사용하기 위해서는 Jigdo를 설치해야겠지요? Debian에서 Jigdo의 설치는 다음과 같습니다.

		# apt-get install jigdo-file
		

다른 배포판에서는 어떻게 되는지 모르겠군요. ^^

자! 이제 Jigdo를 사용할 준비가 되었습니다. 사용하기 전에 간략히 말씀드리자면 Jigdo는 2개의 구성요소가 있습니다. jigdo-file와 jigdo-lite입니다. 각 프로그램의 역할은 다음과 같습니다.

jigdo-file

jigdo-file은 ISO파일을 배포하는 사람이 사용하는 프로그램입니다. 이미 만들어진 CD로부터 ISO를 배포하기 위해 필요한 *.jigdo와 *.template파일을 만들기 위한 프로그램이지요.

다운로드를 하기 위한 우리가 알아야 할 프로그램은 아니므로 더이상 언급하지 않겠습니다. 관심 있으신 분은 jigdo의 문서를 참고하시면 되겠죠?

jogdo-lite

jigdo-file로 만들어진 *.jigdo와 *.template 파일을 이용하여 ISO파일을 만들기 위해서 사용하는 프로그램입니다. 이녀석이 바로 우리가 사용할 프로그램이랍니다.

jigdo-lite를 사용하기 위해서는 *.jigdo와 *.template가 필요한데 이 파일들은 어디서 얻을 수가 있을까요? 이 파일은 그다지 크지 않으므로 Debian 공식 사이트에서 다운로드 하셔도 그다지 불편함이 없을 것입니다. 공식 사이트의 주소는 http://www.debian.org/CD/jigdo-cd/입니다. 여기에서 woody-i386-1.jigdo와 woody-i386-1.template와 같은 파일을 받으시면 됩니다. Debian의 배포판 이름에 대해서는 XXXX에서 간략히 소개 하도록 하겠습니다.

위의 두개의 파일을 다운로드 하셨다면 다음과 같이 명령을 내리면 다운로드를 시작합니다.

		# jigdo-lite woody-i386-1.iso.jigdo
		

혹은 다운로드 받지 않고 다음과 같이 실행 할 수도 있답니다.

		# jigdo-lite http://사이트주소 혹은 미러사이트 주소/woody-i386-1.iso.jigdo
		

상당히 간단하지요? 사실 그냥 실행해서 파일명을 적어주거나 사이트의 주소를 적어주어도 되지만 우리는 일단 위와 같이 실행합시다. :-)

		-----------------------------------------------------------------
		Jigsaw Download "lite"
		Copyright 2001-2002 by Richard Atterer (jigdo@atterer.net)
		Loading settings from `/home/jonga/.jigdo-lite'

		-----------------------------------------------------------------
		Images offered by `woody-i386-1.jigdo':
		  1: Debian GNU/Linux 3.0 r0 Woody - Official i386 Binary-1 CD
		  (debian-30r0-i386-binary-1.iso)

		Further information about `debian-30r0-i386-binary-1.iso':
		Generated on Thu, 18 Jul 2002 14:34:12 +0100
		

이제 실행을 하면 "당신이 가진 이전 버전의 CD가 있으면 경로를 입력하세요"와 같은 요구를 합니다. 여기서는 새로운 ISO를 다운로드 받는 것이므로 그냥 엔터만 입력합니다.

	-----------------------------------------------------------------
	If you already have a previous version of the CD you are
	downloading, jigdo can re-use files on the old CD that are also
	present on the new image, and you do not need to download them
	again. Mount the old CD ROM and enter the path it is mounted under
	(e.g. `/mnt/cdrom'). Alternatively, just press enter if you want
	to start the download of any remaining files.
	Files to scan:
		

이제는 다운로드를 받을 사이트 주소를 요구합니다. Jigdo는 똑똑하게도 여러분의 /etc/apt/sources.list 파일에서 미러 사이트를 찾아내서 보여준답니다. Jigdo가 보여주는 사이트가 마음에 든다면 그저 엔터만 입력하시면 됩니다. 그렇지 않다면 정확한 주소를 직접 입력하시면 됩니다. 국가 코드인 'kr'나 국가 이름 혹은 서버의 이름만 간략하게 입력해도 된다고 합니다만 해보지 않아서 모르겠군요. 호기심 강한분은 한번 해 보시고 제게 알려주시길 바랍니다. :-)

여기서 입력한 서버 혹은 미러 서버의 주소는 $HOME/.jigdo-lite 파일에 기록이 됩니다. 이는 다음에 다시 이용하기 위함이지요

이제 실제로 다운로드가 시작됩니다. 여러분은 RedHat 설치시 나오는 메시지처럼 잠시 냉장고로 가셔서 먹을 것을 가져 오셔도 좋고 Gentoo 설치 문서에서 말하듯이 오락을 한판 즐기셔도 좋을 것입니다. :-)

참고로 알아두시자면 이때 woody-i386-1.iso.tmp와 같은 파일이 생성되고 이 파일은 처음에 모두 0으로 채워져 있습니다. 이 파일이 나중에 ISO파일이 될 것입니다. 그러니 오락하시거나 음식 드시다가 지우지 마시길 ;-)

		FINISHED --07:11:17--
		Downloaded: 819,201 bytes in 5 files
		Found 5 of the 5 files required by the template
		Successfully created `debian-30r0-i386-binary-1.iso'

		-----------------------------------------------------------------
		Finished!
		The fact that you got this far is a strong indication that
		`debian-30r0-i386-binary-1.iso'
		was generated correctly. I will perform an additional, final check,
		which you can interrupt safely with Ctrl-C if you do not want to
		wait.

		OK: Checksums match, image is good!
		

다운로드가 모두 끝나면 올바르게 다운로드가 수행되었는지 확인하고 모든 과정이 끝나게 됩니다. 이제 CD를 구워서 사용하시면 됩니다!


2.2. 당신의 ISO를 업데이트하라

하루가 다르게 변해가는 리눅스와 오픈 소스 진영의 소프트웨어들은 그리 멀지 않은 시간 내에 데비안의 ISO를 만들어 낼겁니다. 여러분의 ISO를 새롭게 유지하기 위해서는 어떻게 해야할까요?

CD로 만들어 두었거나 ISO파일로 있거나 둘 중 하나를 가지고 있다면 이로부터 변경된 내용만 다운로드 받아서 최신의 ISO로 만들 수 있습니다. 방법은 간단합니다. 다시 한번 *.jigdo와 *.template파일을 다운로드 받습니다. 그리고 CD나 ISO이미지를 /mnt/cdrom과 같이 적절한 위치에 mount합니다. 만약 ISO 파일을 갖고 있다면 다음과 같이 하세요.

		# mount -o loop -t iso9660 woody-i386-1.iso /mnt/cdrom
		

한가지 명심해야 할 것은 이 ISO파일이 jigdo를 통해서 다운로드 받은 것이라면 다른 위치로 파일을 옮기거나 파일명을 바꾼다음에 mount하세요. 같은 파일명으로 새로운 최신의 ISO파일을 만들어야 하니까요. 덮어쓰는건 곤란하니까요.

처음 실행하는 방법은 다들 아시죠? 실행을 하면 아까 건너 뛰었던 부분인 기존의 CD에 대해서 묻는 부분이 나옵니다. 여기서 CD-ROM을 mount한 위치를 적어주면 여러분의 CD 혹은 ISO 파일로부터 정보를 수집하고 이와 새로 받은 *.jigdo와 *.template 파일의 정보와 비교하여 새로 추가되거나 변경된 파일들만을 다운로드 받아서 최신의 ISO를 만들어 줍니다. 시간이 절약되겠죠? 서버도 덜 괴롭히고요. :-)


3. 몇 가지 궁금한 점

3.1. 데비안 배포판 이름

데비안은 3가지의 배포판이 존재합니다. Stable, Testing, Unstable. 이 글을 쓰는 시점에서는 Stable = Woody, Testing = Sarge, Unstable = Sid 입니다. Sid는 항상 Unstable 버전, 즉 개발버전이며 Woody는 테스트였다가 Potato를 밀어버리고 안정판이 되었습니다.

더 자세한 정보를 원하시는 분은 http://www.debian.org/releases/를 참고하세요.


3.2. 다른 플랫폼

Debian이 아닌 다른 플랫폼에서 Jigdo를 사용하기를 원하시는 분은 http://cdimage.debian.org/~costar/jigdo를 참고하세요.

현재 제가 MS Windows에서 다운로드를 해 보고 있는 중인데 잘 되고 있습니다. 다만 현재는 Woody와 Sarge의 ISO만 다운로드가 가능하다는군요.


3.3. 다운로드 하다가 멈추면?

혹시 다운로드를 하시다가 멈추어 버렸다면 걱정하지 마십시오. *.iso.tmp 파일을 적절한 위치에 mount한 뒤에 오래된 CD나 ISO로부터 업데이트 하는 방법과 같이 하시면 됩니다.

2.2절 를 참고하세요


3.4. DVD로도 만들 수 있나?

물론 가능합니다. 다만 *.jigdo와 *.template 파일을 DVD용으로 받기만 하면 됩니다. 다른 과정들은 동일합니다!


3.5. 왜 FTP가 아니라 HTTP를 쓰나?

FTP는 대용량의 작은 수의 파일을 전송하는 데에는 적합한 프로토콜이지만 작은 용량의 수많은 파일들을 전송하기에는 부적합한 프로토콜입니다. 이러한 경우에는 HTTP가 더 나은 선택입니다.


3.6. 너무 많은 메시지들은 보기가 싫다.

jigdo는 패키지들을 다운로드 받아서 ISO 파일을 만들어줍니다. 이때 패키지를 다운로드 하는 역할은 wget라는 프로그램의 몫입니다.

$HOME/.jigdo-lite 파일의 wgetOpts= 부분에 wget의 옵션을 추가해 주면 됩니다. 조금 조용하게 하려면 --non-verbose을, 아예 wget의 메시지를 보고 싶지 않다면 --quiet옵션을 적어주면 됩니다.


3.7. *.iso.tmp 파일을 CD로 구울 수 있나?

왜 다운로드 중 생긴 임시적인 파일을 CD로 구우려고 하는지 의문스럽습니다. 이 파일은 용량은 CD와 같아 보이지만 실제로는 0으로 채워진 파일입니다. 나중에 다운로드가 모두 끝이나면 완전한 ISO파일이 되겠지만 그때는 *.iso.tmp라는 이름을 가지고 있지 않을 것입니다. 그러므로 이 파일을 CD로 만드는 무모한 행위는 자제합시다.


3.8. jigdo-file-cache.db는 뭔가?

오래된 CD나 ISO 등으로 부터 얻은 이전 패키지들에 대한 정보를 갖고 있는 파일입니다. 이 파일은 각각의 패키지 파일들에 대한 정보와 hash값(MD5)을 가지고 있습니다. 이들 정보를 기초로 새로 추가된 파일과 업데이트 된 파일들에 대한 정보를 얻어서 새로운 ISO 파일을 만드는데 도움이 줍니다.


4. 참고 자료

다음의 자료를 참고하면 더 많은 정보를 얻을 수 있을 거라고 하네요. 전 졸려서 잘 모르겠어요. 아~ 벌써 2시간이나 이 글을 쓰는군요. DocBook은 정말 힘들군요.

http://atterer.net/jigdo

Jigdo의 공식 사이트입니다.

http://cdimage.debian.org/~costar/jigdo

다른 플랫폼용 jigdo인 jigdo-easy

http://www.debian.org/CD/jigdo-cd

Debian의 jigdo 페이지

http://lists.debian.org/search.html

debian-cd의 메일링 리스트 아카이브 검색

http://www.debian.org/MailingLists/subscribe

debian-cd 메일링 리스트의 가입 페이지

http://dirac.org/linux/debian/jigdo/debian-jigdo-mini-howto.html

이 문서를 작성하기 전에 읽은 jigdo mini-HOWTO


5. 맺음말

사실 이 글을 쓰게 된 이유는 새벽에 프로그램을 만들다가 갑자기 하기가 싫어져서 debianusers에서 글을 읽다가 jigdo에 대해 언급하는 글을 보게 되었고 이것이 무엇인가 궁금해서 찾아보다가 mini HOWTO를 읽게 되었습니다. 결국 졸린상태에서 이걸 읽었더니 구구절절 옳은 말만 적혀있다고 생각해서 글을 한번 써 봤습니다. 아.. 글을 쓰는 도중에는 '내가 이걸 왜..?'라는 생각이 들었고 다 끝나가는 지금은 '이왕 시작한거 어찌되건 끝을 한번 보자'라는 심정으로 글을 쓰고 있습니다. 아!! 닥질(DocBook)은 너무나 힘들군요.

이 문서의 잘못된 점에 대해서 제게 연락을 주시면 혹시나 있을지도 모르는 다음 버전의 문서에서 고려해 보겠습니다. :-)




sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2008-06-11 13:16:33
Processing time 0.0200 sec