4. 初めて ISO イメージをダウンロードするときの操作(簡単な 5 ステップで済みます)

ここでは手元に Debian ISO イメージが全く無い状態から始めると仮定しますが、一度自分用の ISO イメージを作ってしまえば、後からは jigdo-lite を使って更新が可能です。ISO イメージの更新については次のセクションで説明します。

4.1. jigdo のインストール

最初に jigdo-file パッケージをインストールします―

      # apt-get install jigdo-file
			

jigdo は今も精力的に開発が続けられていて、バグフィックスと強化が継続中です。もし 安定版か テスト版を使用しているのであれば、http://packages.debian.org/unstable/utils/jigdo-file.html の 不安定版からダウンロードしてください。2003 年 2 月 8 日の時点ではバージョンは 0.6.9 です。この HOWTO で使用しているバージョンも 0.6.9 です。

Woody ユーザーの注意事項― Woody (rev 1) に付属するバージョンの jigdo-lite では Sarge または Sid のダウンロードはできません。Section 6.12 を参照してください。jigdo 0.6.5 のバグフィックス版が、r2 リリース時に向けて提供されました。

4.2. .template ファイルと .jigdo ファイルのダウンロード

どの ISO イメージをダウンロードする場合にも、常に ダウンロード対象のイメージファイル用に作られた .jigdo と .template ファイルが必要です。.jigdo と .template は便宜上同じ約束事に沿ってファイル名をつけることになっています。

      distro-arch-n.jigdo
      distro-arch-n.template
      

ファイル名中 「distro」の部分はディストリビューション名(例えば「sarge」)を指し、「arch」の部分はアーキテクチャ名(「i386」のような」)をつけます。「n」にはディスクナンバーをつけます(例えば「1」)。

sarge を例に取ると 8 枚の ISO イメージが作成されますので .jigdo と .template ファイルを8個ずつダウンロードすることになります。全て http://www.debian.org/CD/jigdo-cd/ から入手可能です。1個目のファイルは各々 sarge-i386-1.jigdosarge-i386-1.template のようなファイル名になっています。

4.3. jigdo-lite の実行

作成しようとする ISO イメージに対応する .jigdo ファイルを指定して jigdo-lite を実行します。Woody を使った例では次のようになります―

      lucifer$ ls
      sarge-i386-1.jigdo  sarge-i386-1.template
      lucifer$ jigdo-lite sarge-i386-1.jigdo 
      
      Jigsaw Download "lite"
      Copyright 2001-2003 by Richard Atterer <jigdo@atterer.net>
      Getting mirror information from /etc/apt/sources.list
      
      -----------------------------------------------------------------
      Images offered by `sarge-i386-1.jigdo':
        1: 'Debian GNU/Linux testing "Sarge" - Official Snapshot i386 Binary-1 CD' (sarge-i386-1.iso)
      
      Further information about `sarge-i386-1.iso':
      Generated on Fri, 7 Feb 2003 20:31:28 -0700
      
      -----------------------------------------------------------------
      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 in 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 downloading
      the remaining files.
      Files to scan: 
      (日本語訳― 以前のバージョンの CD があれば、jigdo は 新しいパッ
      ケージで更新されていない CD 上のファイルを再利用するので、再ダウ
      ンロードする必要はありません。古い CD ROM をマウントしマウント位
      置のパス(例― /mnt/cdrom )を指定してください。残りのファイル全てを
      ダウンロードするのであれば、単に Enter を押してください。
      スキャン対象のファイル― )
			

jigdo-lite の実行を cntrl-z で中断して(実際にはやらないように。ここでは例として示しているだけです)、ls を実行するとディレクトリ内に woody-i386-1.iso.jigdo.unpacked という名前のファイルを確認できます。.jigdo ファイルが gzip で圧縮されていることが分かります。このファイルは単に .jigdo ファイルの gunzip 版です。

次に jigdo-lite は旧版の CD イメージが存在する場所の指定を求めてきますので、CD イメージが置かれたディレクトリへのパスを入力します。この手順は 以前ダウンロードした ISO イメージを更新する(あるいは中止したダウンロードを再開する)場合であり、今回は ISO イメージが全く無い状態から初めて作成するのであり、 Debian の ISO イメージはまだ存在しないので、探す必要はありません。何もしません(更新の場合については Section 5 で説明します)。ここでは何も指定せずに <ENTER> を押します。

4.4. ミラーサーバの指定

次のような画面が表示されます―

      -----------------------------------------------------------------
      The jigdo file refers to files stored on Debian mirrors. Please
      choose a Debian mirror as follows: Either enter a complete URL
      pointing to a mirror (in the form
      `ftp://ftp.debian.org/debian/'), or enter any regular expression
      for searching through the list of mirrors: Try a two-letter
      country code such as `de', or a country name like `United
      States', or a server name like `sunsite'.
      Debian mirror [http://linux.csua.berkeley.edu/debian/]: 
      (日本語訳― jigdo ファイルは Debian のミラーサイトに格納済みの
      ファイルを参照します。次の形式で Debian のミラーサイトを選択して
      ください― ミラーサイトの完全な URL (ftp://ftp.debian.org/debian/ 
      のような形式)、あるいはミラーサイトのリストを検索する正規表現であれ
      ばどんな形式でも (「de 」のような 2 文字の国コード、または「 United 
      States 」のような国名か「 sunsite 」のようなサーバ名)―
      Debian ミラーサイト [http://linux.csua.berkeley.edu/debian//]― )
			

便利なことに jigdo-lite は、Debian の update に使うミラーサイトを /etc/apt/sources.list から読み出してくれます(画面出力結果内に jigdo-lite が /etc/apt/sources.list を参照している部分があるのにお気づきでしょう)。別のミラーサイトを使いたいのであれば、ここで使いたいミラーサイトを指定します。このままでよければ <ENTER> を押します。jigdo-lite がホームディレクトリに .jigdo-lite を書き込みます。

次に、使用する .jigdo ファイルが米国以外のサーバからダウンロードする必要があるパッケージを参照する場合は、jigdo-lite が米国以外のサーバの指定を要求します。表示されるメッセージ(と入力する内容)は前の段落のミラーサーバ(Non-US でないミラーサーバ (-: の指定方法とよく似ています。

      -----------------------------------------------------------------
      The jigdo file also refers to the Non-US section of the Debian
      archive. Please repeat the mirror selection for Non-US. Do not
      simply copy the URL you entered above; this does not work because
      the path on the servers differs!
      Debian non-US mirror [http://linux.csua.berkeley.edu/debian-non-US//]: 
      (日本語訳― jigdo ファイルは Debian アーカイブの Non-US セクショ
      ンも参照します。Non-US ミラーサイトについて選択を繰り返してくださ
      い。先ほど入力した URL と同じものを入力しないようにしてください 
     ― サーバのパスが異なるために上手く動作しません。
      Debian Non-US ミラー [http://linux.csua.berkeley.edu/debian-non-US//]―)
			

jigdo-lite が選択した内容を ~/.jigdo-lite ファイルに書き込みます。ダウンロードしようとしているイメージが Non-US セクションのソフトウェアを含んでいなければこの手順は表示されません。

デフォルト設定されたミラーサーバを変更したいときは、 ~/.jigdo-lite の次の2行を書き換えれば変更可能です―

      debianMirror='http://some-mirror-to-use/debian/'
      nonusMirror='http://some-other-mirror/debian-non-US/'
      

4.5. ISO イメージのダウンロード

ミラーサイトを指定すると、jigdo-lite は ISO イメージに必要なファイルをダウンロードし始めます―

      Not downloading .template file - `sarge-i386-1.template' already present
      
      -----------------------------------------------------------------
      Merging parts from `file:' URIs, if any...
      Found 0 of the 826 files required by the template
      Will not create image or temporary file - try again with different input files
      --09:35:12--  http://linux.csua.berkeley.edu/debian/pool/main/b/binutils/binutils_2.13.90.0.10-1_i386.deb
          => `sarge-i386-1.iso.tmpdir/linux.csua.berkeley.edu/debian/pool/main/b/binutils/binutils_2.13.90.0.10-1_i386.deb'
      Resolving linux.csua.berkeley.edu... done.
      Connecting to linux.csua.berkeley.edu[128.32.112.231]:80... connected.
      HTTP request sent, awaiting response... 200 OK
      Length: 1,911,624 [application/x-debian-package]
      
      19% [======>                              ] 378,304      149.87K/s    ETA 00:09
      

画面には大量のメッセージが流れていきますが、それが煩わしければ Section 6.13 を参照してください。jigdo-lite がパッケージをダウンロードしている間に、コンソールを切り替えて(または xterm をもう一つ立ち上げて) jigdo-lite を実行したディレクトリで ls を実行してみてください。ディレクトリ上には 6 個のファイルがあるはずです―

sarge-i386-1.iso.tmpdir/ ディレクトリには jigdo がダウンロードする Debian パッケージ全てがあります。ディレクトリ内ファイルの消去と sarge-i386-1.iso.tmp への書き込みは間断なく行われていて、取得対象の ISO イメージの完成前のファイルになります。sarge-i386-1.iso.tmp は、sarge-i386-1.iso.tmpdir/ ディレクトリが一度消去されるまでは姿を現さないので、無いからといって慌てないでください。

jigdo-file-cache.db は Berekeley DB ファイルであり、Files to scan: 表示の後に指定したディレクトリから読み込まれたファイル全ての md5sum を保持しています。Section 7.3 で詳述しています。

ここではかなり処理時間がかかりますから、Quake III でもやりながら待っていてください(なるべく別のマシンでゲームをやった方がよいでしょう。jigdo では、 .iso.tmp への書き込み中はかなりディスクアクセスが多くなります)。ある時点でダウンロードが終了し、次のような表示が出ます―

      FINISHED --13:32:58--
      Downloaded: 7,469,872 bytes in 9 files
      Found 9 of the 9 files required by the template                              
      Successfully created `woody-i386-3.raw'
      
      -----------------------------------------------------------------
      Finished!
      The fact that you got this far is a strong indication that `woody-i386-3.raw'
      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!   
      (日本語訳― 処理終了!
      この表示が出力されれば「 woody-i386-3.raw 」の作成は正常に終了し
      ています。続いて最終チェック処理を実行しますが、必要が無ければ
      Ctrl-Cで キャンセルしてください。
      OK: チェックサムは一致し、イメージは正常に作成されています。)
			

4.6. 嘘、場合によってはひどい嘘も含まれている場合があります。

全て嘘ばっかりというわけではありません。残念ながら HOWTO についてしっかり統計を取っているわけではないですから。あえて言うなら簡潔さを保つために省略した項目もいくつかあるということです。