前回に引き続いて、UbuntuのCDイメージをダウンロードする方法を紹介していきます。
zsync
zsyncは、すでにダウンロード済みのCDイメージを最新の状態にアップデートするのに最適です。通常のダウンロードと違い、ダウンロード済みのCDイメージと最新版の間にどれぐらいの違いがあるのかをクライアント側で計算し、不足している部分をサーバからダウンロードします。
Ubuntuには開発版のテスト用に、日々CDイメージを作成し配布しているサーバがあります。このサーバは地域ごとにミラーされておらず[1]、帯域にも余裕がありません。CDイメージを一からダウンロードしていては、かなりの時間がかかってしまいます。このような場合にzsyncを使うと、毎日更新している場合は全体の10%ほどをダウンロードするだけで済むため、10分の1の時間でダウンロードを終えられます。
まずは次のコマンドでzsyncをインストールします。
$ sudo apt-get install zsync
すでにダウンロードしてあるCDイメージがあるディレクトリに移動して、次のようにzsyncファイルのURLを指定します。
$ zsync http://cdimage.ubuntu.com/daily-live/current/maverick-desktop-i386.iso.zsync
zsyncファイルをダウンロードした後、ディレクトリ内のファイルを調べて同期対象のファイルとどれだけ合致しているかを表示し、残りの部分をダウンロードします。端末には次のように出力されます。
#################### 100.0% 113.5 kBps DONE
reading seed file maverick-desktop-i386.iso: ***********************************
********************************************************************************
maverick-desktop-i386.iso. Target 91.8% complete.
downloading from http://cdimage.ubuntu.com/daily-live/current/maverick-desktop-i386.iso:
#################### 100.0% 408.1 kBps DONE
verifying download...checksum matches OK
used 667021312 local, fetched 60215396
出力からもわかるようにチェックサム(SHA-1)でダウンロードを検証しているため、ダウンロード後に手動で確認する必要はありません。また、更新に使った古いCDイメージは末尾に.zs-oldが付いたファイル名に変更されます。
Daily Build版のcurrentはダウンロードに使用するURLや、ファイル名が変わらないため、毎回同じコマンドで問題ありません。しかし、RC版からリリース版へ更新する際などにはファイル名も変わります。このような場合に、次のコマンドのように、すでにダウンロードしてあるファイルの名前を指定できます。
$ zsync -i ubuntu-10.10-rc-desktop-i386.iso http://RELEASE_MIRROR_SERVER/10.10/ubuntu-10.10-desktop-i386.iso
もちろん現時点では10.10はリリースされていないため、ubuntu-announceメーリングリストを購読してリリースのお知らせを待ってください[2]。ただし、リリース直後はサーバが混み合うため、BitTorrentの方が速い可能性が高いです。
余談ですが、Ubuntu Desktop版とNetbook版はパッケージ構成で共通している部分も多いため、zsyncが少し役に立ちます。Ubuntu 10.04.1の場合は、zsyncが表示する両者の合致率は62.8%なので、Desktop版をダウンロードしてあるけれども、ネットブック用にNetbook版も欲しいという場合に、一からダウンロードする場合に比べ、およそ半分の時間で済みます。
jigdo
jigdoはAlternate版やServer版をダウンロードする際に使える方法です。CDの配布サーバを使わず、通常のアーカイブサーバからパッケージを取得し、最後にCDイメージとしてまとめてくれます。
まずは次のコマンドでダウンローダをインストールします。
$ sudo apt-get install jigdo-file
次のコマンドを実行します。
$ jigdo-lite
jigdoファイルの場所を聞かれるので、次のようにして入力します。
jigdo: http://cdimage.ubuntu.com/daily/current/maverick-alternate-i386.jigdo
続いて、次のように古いCDイメージの場所を聞かれるので、存在する場合は指定します。古いイメージ内に取得先と同一のパッケージが存在する場合はそれを使用し、無駄なダウンロードを省いてくれます。古いCDイメージがない場合は空白のままエンターキーを押します。
Files to scan:
次に、パッケージをダウンロードするアーカイブミラーサーバを指定します。現在使用しているサーバが表示されるので、それを使用する場合はそのままエンターを、変更する場合はURLを入力してエンターを押します。
Ubuntu mirror [http://ARCHIVE_MIRROR_SERVER/ubuntu/]:
パッケージのダウンロードが完了すると、CDイメージが作成されます。
CDイメージ配布サーバが混み合っていても、アーカイブサーバが空いているという状況であれば、jigdoで高速にダウンロードできるでしょう。しかし、リリース直後はCDイメージ配布サーバだけでなく、アーカイブサーバもアップグレードに使うパッケージのリクエストで混み合っているため、結局のところBitTorrentの方が速い可能性が高いです。
また、パッケージに対してセキュリティアップデートがかかり、アーカイブサーバ上のパッケージが上書きされている場合には、ダウンロードできないファイルがあるというエラーが出て、CDイメージを作成できません。そのためjigdoはリリース版のダウンロードではなく、Daily BuildのAlternate版やServer版をダウンロードするのに使うのがいいでしょう。
ダウンロード方法の優先順位
このように、CDイメージをダウンロードするにはさまざまな方法がありますが、次のような優先順位で使うといいでしょう。
- BitTorrentが使える場合はBitTorrent
- BitTorrentが用意されていないDaily BuildのDesktop/Netbook版ではzsync、Alternate/Server版ではzsyncかjigdo
- HTTPでのダウンロード
Ubuntu 10.10のリリースは10月10日に予定されているため、今回がリリース直前のRecipeです。Ubuntu 10.10は、BitTorrentを使って快適にダウンロードし、楽しんでください[3]。