SDB:メタリンク

移動先: 案内, 検索

メタリンクについて

メタリンク は、ダウンロードするファイルの形式を統一して、ダウンロードを簡単にしようという目的で標準化された形式で、その内容は誰もが使えるように公開されています(オープンスタンダード)。ファイルのダウンロードにはFTP, HTTP, P2Pなどさまざまな形式がありますが、これをひとまとめにしようというのです。これだと、ISOファイルをダウンロードするときに大変楽になるはずです。特に、インターネットプロバイダの制約や、学校などの決まりで、P2P方式が使えない場合に役にたちます。ほとんどの通信クライアントは複数ミラーへの複数接続を自動的に行うようになっているので、メタリンクの利用により、ダウンロード速度は非常に高速になるはずです。

メタリンクを使うと、通常のP2PやBittrorrentによるダウンロードを行いながら、メインサーバーへの接続は中止したり、そのアクセス優先度を下げておいて他のミラーサイトにも接続を広げることができます。メタリンクでは、torrentやed2k、マグネットリンクによる接続先と並行してミラーやチェックサム(修復情報)を一覧できます。ミラーにはその場所と優先度の情報がありますから、もしローカルサーバの場所を設定できるのであればそこからのダウンロードもできることになります。

openSUSE のメタリンクの場所

openSUSEの全メタリンクの一覧は、http://download.packages.ro/metalink/opensuse/
にあります。 また、付加情報として、CD形式も全てダウンロードできるように指定したメタリンクもあります。http://download.packages.ro/metalink/opensuse/collections/ (基本的には、同様のものをダウンロードできる 「.torrent」ファイルのようなものです。).

メタリンクの使い方; メタリンククライアント

Unix系コマンドラインクライアントとしては、「aria2」 (「aria2」を使うと、openSUSEの and you won't have checksum errors, packages for openSUSE ココでopenSUSEのパッケージをダウンロードするときのチェックサムエラーを回避できます) がオススメです。 GUIクライアントなら 「wxDownload Fast」 があります。MacOSバイナリはありませんが、他のプラットフォームのバイナリはあります。また、openSUSE用のパッケージならココで入手できます。
MacOSなら「Speed Download」 があります。 Windowsなら 「Free Download Manager」 (GPL), 「Orbit Downloader」「GetRight」 があります。
ベータ版ソフトで構わなければメタリンクをサポートするFirefoxの拡張機能「DownThemAll!」があります。
他にMacOSやWindows, Unix系で使えるクライアントは ココを探すとよいでしょう。

「aria2」の使用例

openSUSE 10.3 i386 のDVD用 isoイメージをダウンロードするとします。この場合は

aria2c http://download.packages.ro/metalink/opensuse/openSUSE-10_3-GM-DVD-i386_iso.metalink


あるいはメタリンクファイルをすでにダウンロードで入手している場合、「-M」オプションを用いて以下のようにします。

aria2c -M openSUSE-10_3-GM-DVD-i386_iso.metalink


ファイルシステムが ReiserFS の場合、ファイルの断片化を回避するには '--file-allocation=prealloc' を使うとよいでしょう。これなら、ダウンロード開始前に1-2分、スペースの作成に時間をとるかも知れませんが、のちのちの時間の節約になります。

md5sum エラーについての説明

メタリンクは全てのチェックサム情報を含んでいます。これは自動的にメタリンククライアントにより照合されます。 aria2, Free Download Manager, GetRight, wxDownload Fast, Orbit, and Speed Download はいずれもこれをしてくれます。メタリンクによってはダウンロード中に起こりうるエラーを修正するための情報も含みますが、これを利用できるのは今のところ aria2 の0.10.1 以降のバージョンのみです。ですから aria2 0.10.1 以降を使うと、MD5エラーは回避できるでしょう。

メタリンクによりダウンロードしたISOにエラーがなく、もとのISOと合致することを確かめるには、このチェックサム番号をダウンロード元にあるチェックサム番号と照合する必要があります。このための無償のmd5サムチェックツールが 「md5deep.sourceforge.net」にあります。 Linuxなら以下のコマンドで利用します。

md5sum boot.iso

もしこの結果がダウンロード元のものと違っていれば、ダウンロードデータは壊れているので、もう一度やり直すかなんらかの方法で修復する必要があるのです。

Linux での操作なら修復は rsync で可能です。このやり方は、rsyncのプロトコルを使用できるミラーを探しておいて、まず以下のように打ちます。

rsync rsync://<name-of-mirror>/<opensuse-directory>/ 

これで、サーバのディレクトリの内容が表示されます。そこで該当するサブディレクトリ名を加えて再びコマンドを打つと、最終的にISOイメージが置かれている場所が見つかるでしょう。そうしたら以下のように打ちます。

rsync -avvP rsync://<name-of-mirror>/<opensuse-directory>/<path-to-iso>/<name-of-ISO> <path-to-your-local-ISO-file>

これで、修正すべきデータだけがダウンロードされてファイルが修復されるでしょう。この方法の詳細はrsync のmanページを見てください。それにはシェル中で

man rsync

と打ちます。

rsynkの使用例

Factory_Mirror_List] のミラーの多くはrsyncが使えます。この例では mirrors.kernel.org を使うことにしましょう。 ダウンロードファイルは openSUSE-10.2-GM-DVD-i386.iso で、メタリンクを使うと仮定します。ある場所(たぶん最後の部分でしょう) でエラーが生じたとします。欠落部分を補完ダウンロードするには以下のように rsyncを用います。


cd /directory/ofthe/iso
rsync -avvP rsync://mirrors.kernel.org/opensuse/distribution/10.2/iso/dvd/openSUSE-10.2-GM-DVD-i386.iso .

注意: カレントディレクトリにある同じファイル名のISOを修復したい場合、ドット (".") を打てばすみます.