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

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

4.1. jigdo のインストール

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

      # apt-get install jigdo-file
			

jigdo は今も精力的に開発が続けられていて、バグフィックスと改善が継続中です。もし stable 版か testing 版を使用しているのであれば、http://packages.debian.org/unstable/utils/jigdo-file.html の unstable 版からダウンロードしてください。2002年7月19日の時点ではバージョンは 0.6.8 です。この HOWTO で使用しているバージョンは 0.6.8 です。

Woody ユーザーの注意事項― Woody (rev 0) に付属するバージョンの jigdo-lite では Sarge または Sid のダウンロードはできません。Section 6.11 を参照してください。

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

どの ISO イメージをダウンロードする場合にも、常に 2 個のファイルが必要です。

例― Woody には 8 個のイメージが必要なので、.jigdo ファイルと .template ファイルもそれぞれ 8 個ずつダウンロードしなくてはなりません。http://www.debian.org/CD/jigdo-cd/からダウンロード可能で、それぞれwoody-i386-1.iso.jigdo, woody-i386-1.iso.template から始まって woody-i386-8.iso.template に至るファイル名が付与されています。

あるいは、.jigdo ファイルと .template ファイルを各 ISO イメージ用にダウンロードする代わりに、jigdo-lite 実行時に http://a.mirror/woody-i386-1.jigdo のような .jigdo ファイルのある URL を指定するという方法もあります。jigdo-lite は処理の進行に合わせて対応する .jigdo ファイルと .template ファイルをダウンロードします。しかし、jigdo-lite を初めて使うので不安になっている人は、まずファイルをダウンロードしてください。以降の処理は私が説明します。

4.3. jigdo-lite の実行

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

      $ jigdo-lite woody-i386-1.jigdo
			

ハードディスク上の .jigdo ファイルを使わずに .jigdo の存在する URL を指定する場合は、jigdo-lite 実行時に URL を引数として指定します―

      $ jigdo-lite http://a.mirror/woody-i386-1.jigdo
			

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

      -----------------------------------------------------------------
      Jigsaw Download "lite"
      Copyright 2001-2002 by Richard Atterer <jigdo@atterer.net>
      Getting mirror information from /etc/apt/sources.list
      -----------------------------------------------------------------
      Images offered by `woody-i386-1.iso.jigdo':
        1: woody-i386-1.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: 
      (日本語訳― 以前のバージョンの CD があれば、jigdo は 新しいパッ
      ケージで更新されていない CD 上のファイルを再利用するので、再ダウ
      ンロードする必要はありません。古い CD ROM をマウントしマウント位
      置のパス(例― /mnt/cdrom )を指定してください。残りのファイル全てを
      ダウンロードするのであれば、単に Enter を押してください。
      スキャン対象のファイル― )
			

.jigdo ファイルを指定し忘れた場合は、ファイル名(あるいはファイルの存在する URL) を要求するプロンプトが表示されます。

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

次に jigdo-lite は旧版の CD イメージが存在する場所の指定を求めてきますが、今回は 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 から読み出してくれます(私が update に使っているのが、linux.csua.berkeley.edu なのは分かりますね)。別のミラーサイトを使いたいのであれば、ここで使いたいミラーサイトを指定します。このままでよければ <ENTER> を押します。jigdo-lite がホームディレクトリに .jigdo-lite を書き込みます。

次に使用する .jigdo ファイルが米国以外のサーバーからダウンロードする必要があるパッケージを参照する場合は(米国輸出規制法の制約を受けるソフトウェアの場合)、jigdo-lite が米国以外のサーバーの指定を要求します。表示されるメッセージ(と入力する内容)は前の段落のミラーサーバーの指定方法とよく似ています。唯一異なるのは米国外のサーバーを指定する(あるいはデフォルト値を確認する)点です。ダウンロードしようとしている ISO イメージが米国外ソフトウェアを含む場合は次のように表示されます―

      -----------------------------------------------------------------
      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 アーカイブの米国外セクショ
      ンも参照します。米国外ミラーサイトについて選択を繰り返してくださ
      い。先ほど入力した URL と同じものを入力しないようにしてください 
     ― サーバーのパスが異なるために上手く動作しません。
      Debian 米国外ミラー [http://linux.csua.berkeley.edu/debian-non-US//]―)
			

その後、jigdo-lite が選択した内容を $HOME/.jigdo-lite ファイルに書き込みます。ダウンロードしようとしているイメージが米国外のソフトウェアを含んでいなければこの手順は表示されません。

$HOME/.jigdo-lite ファイルに次のような内容を記述しておけば、今後のダウンロードでは指定したミラーサイトがデフォルトとして使用されます。−

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

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

ミラーサイトを指定すると、次に jigdo-lite は .template ファイルを探し、見つからなければミラーサイトから取得します。.template ファイルが見つかると(あるいはミラーサイトから取得すると)、次のように表示されます―

      -----------------------------------------------------------------
      Merging parts from `file:' URIs, if any...
      Found 0 of the 1224 files required by the template
      Will not create image or temporary file - try again with different input files
      --13:38:08--  http://linux.csua.berkeley.edu/debian/pool/main/b/bind9/
            lwresd_9.2.1-2.woody.1_i386.deb => `lwresd_9.2.1-2.woody.1_i386.deb'
      Resolving linux.csua.berkeley.edu... done.
      Connecting to linux.csua.berkeley.edu[128.32.247.238]:80... connected.
      HTTP request sent, awaiting response... 200 OK
      Length: 157,318 [application/x-debian-package]
      
      30% [==========>                          ] 47,418       113.22K/s    ETA 00:00
      ...
      

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

woody-i386-1.iso.tmp はすぐには現れません。このファイルは 一時的な保存用の ISO ファイルであり、ときどき書き込まれます。

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

tmp/ ディレクトリにはダウンロードした Debian のパッケージ群があります。例えば、この HOWTO を執筆する際に使った例では、次のファイルがあります―

      $ ls tmp/
      alsa-headers-0.5_0.5.12a-2_all.deb  tkdiff_3.08-3_all.deb
      alsa-utils-0.4_0.4.1-9.1_i386.deb   xfonts-intl-chinese-big_1.2-2.1_all.deb
      gnuserv_3.12.4-3_i386.deb           xmanpages-ja_4.1.0.20011224-1_all.deb
      pilot-link_0.9.5.0-8_i386.deb       xscreensaver_3.34-3_i386.deb
      smpeg-plaympeg_0.4.4-8_i386.deb
			

ときどき tmp/ ディレクトリの内容は消去されて、woody-i386-1.iso.tmp にファイルが追加されます。

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

      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: チェックサムは一致し、イメージは正常に作成されています。)