【3/18〜】Amazon、VMwareが語る『クラウドの未来』 スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷

 

Linux Tips

BitTorrentでファイル交換を行うには

北浦訓行
2004/11/25

 最近は、BitTorrent(ビットトレント)でも配布を行うディストリビューションが増えてきた。BitTorrentは、配布者の負担をできるだけ軽くしつつ、素早くファイルを配布すること目的に開発されたP2Pソフトだ。

 BitTorrentは、ファイルを「Piece(ピース)」という単位に分割して、クライアント間でやりとりする。あるクライアントにダウンロードされたPieceは、すぐに別のクライアントに送信される。つまり、あるファイルをダウンロードしている間は、そのファイルの配布者でもあるのだ。従って、そのファイルを求めているユーザーが多いければ多いほどそのファイルの配布者も多いことになり、結果的にダウンロードが高速になる。

 BitTorrentのプロトコルは公開されており、公式クライアント以外にも多くのクライアントが開発・公開されている。Linux用のクライアントもいくつかあるが、ここではJavaアプリケーションのAzureusを紹介する。

 Azureusを実行するには、Javaのランタイムが必要となる。原稿執筆時点での最新版は1.4.2_03だ。JavaのWebサイト(http://www.java.com/ja/)からダウンロードしたj2re-1_4_2_03-linux-i586-rpm.binに実行権を与えて実行すると、RPMファイルが生成される。

$ chmod +x j2re-1_4_2_03-linux-i586-rpm.bin
$ ./j2re-1_4_2_03-linux-i586-rpm.bin

 j2re-1_4_2_03-linux-i586.rpmが生成されたら、rootになってインストールする。

# rpm -ihv j2re-1_4_2_03-linux-i586.rpm

 インストールが完了したら、以下の環境変数を設定する。必要に応じて、~/.bash_profileに追加しておくといいだろう。

export JAVA_HOME=/usr/java/j2re1.4.2_03
export PATH=$PATH:/usr/java/j2re1.4.2_03/bin

 次に、AzureusのWebサイト(http://azureus.sourceforge.net/)からダウンロードページに移動して、適当なミラーサーバからtarボールをダウンロードする。原稿執筆時点での最新版はAzureus_2.2.0.0_linux.GTK.tar.bz2だ。

 ダウンロードしたらX Window Systemのターミナルエミュレータで展開・実行する。

$ tar jxf Azureus_2.2.0.0_linux.GTK.tar.bz2
$ cd azureus
$ ./azureus

 初めてAzureusを実行すると、[Azureus設定ウイザード]が起動する。最初の設定は接続回線だ。リストボックスで回線の速度を選択(実際の回線速度よりも少し遅い値を選択)する。筆者の環境では、画面が切れてしまってボックス右に表示されるはずのボタンが表示されなかった。その場合は、ボックス内をクリックして、[↑]キーと[↓]キーで候補を切り替えればよい。設定が終わったら[次へ]ボタンをクリックする。

[回線とコネクションの設定]画面

 次にポートの設定を行う。デフォルトでは、待ち受けポートが6881に設定されている。[テスト]ボタンをクリックすると、そのポートでテストが行われる。テストの結果がOKならば、[次へ]ボタンをクリックする。

[NAT/P2Pポート]画面

注:BitTorrentは、ポート6881〜6999(Ver. 3.2以前は6889まで)を使用する。各種ファイアウォールやルータの設定を変更して、これらのポートを空けておく必要がある。
http://www.dessent.net/btfaq/#ports

 トレントファイルの保存場所などを指定する画面が表示される。トレントファイルとは、共有するファイルの情報が記述されたファイルで、これがないとファイルをダウンロードできない。ここは、デフォルトのままでよい。[完了]ボタンをクリックすると、設定作業は終了だ。[閉じる]ボタンをクリックすると、[Azureus設定ウイザード]が終了する。

[トレント/ファイル]画面

 ファイルをダウンロードするには、トレントファイルを入手しなければならない。BitTorrentでファイルを配布しているサイトの場合、Webページでトレントファイルを入手できる場合が多い。Fedora Projectの場合、ダウンロードページ(http://fedora.redhat.com/download/)に[join the torrent]というリンクがあり、そこをクリックするとトレントファイルの一覧が表示される。

 例として、Fedora Core 3 Test3をダウンロードしてみる。[FC3-test3-binary-i386.torrent]のURLをコピーして、Azureusの[ファイル]メニューから[開く]−[URL]を選択すると[URLを開く]ダイアログボックスが開き、自動的にコピーしたURLが表示される。

コピーしたURLが表示された[URLを開く]ダイアログボックス

 [OK]ボタンをクリックすると、(Pieceを持ったノードがあれば)ファイルのダウンロードが始まる。終了すると、ファイルの一覧が画面下に表示される。BitTorrentの場合、この状態から自分がファイルの配布者となる。自分がダウンロードした後は、ダウンロードしようとしているユーザーのために、可能な限りそのままの状態(ダウンロードしたファイルを移動したり、削除したりしない)にしておくといいだろう。

 Fedora Projectのように、Webサイトでトレントファイルを公開していればよいが、そうでない場合もある。その際は、トレントファイルの検索サイトを利用するか、「torrent」というキーワードを含めてGoogleなどで検索してみるといいだろう。

  トレントファイルの検索サイト(一例)
    TORRENTSEARCH(http://www.torrentsearch.us/
    yotoshi(http://yotoshi.com/
    BTbot(http://www.btbot.com/
    N4P.COM(http://www.n4p.com/

 なお、当然のことながら法律に反するファイルの共有を行ってはならない。

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します

ホワイトペーパーTechTargetジャパン

Linux Square フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

スキルアップ/キャリアアップ(JOB@IT)



- PR -
- PR -

お勧め求人情報

キャリアアップ 〜JOB@IT
@IT Special -PR-
  TomcatやJBossなどAPサーバ環境に関する
情報を集約! “業務”用APサーバ大百科

New!
  一気に解説! 最新のクラスタストレージ
「RAIDを超えたストレージ基準」……など

New!
  クラウド的ユーザー体験の変化は脅威か?
仮想化技術を使いこなす運用管理術を紹介

New!

  上司や部下、部署内メンバーとの情報共有
を“ガラッ”と変えるコラボツールとは?

New!
  おばかアプリ選手権、第4弾開催中!!
ムダにカッコよくてくだらない作品求ム!

  社内ファイルサーバを“クラウド”に統合
VPN直結「クラウド型ストレージ」を紹介

  Twitterのアカウントはなぜ突破された?
メールによる新手の攻撃手法とその対策

  もう仮想化のお試しフェイズは終わりだ!
Hyper-V 2.0が基幹システムも仮想化

  美人!? まあまあ? 気になる いやし系!!
PV急増で「美人時計」がとった手段とは?

  クライアント企業から求められる人材
⇒IT技術と経営戦略を併せ持つ「戦略家」

  .NET編集長が実践する「技術情報検索術」
サンプル・コードを簡単に探す“技”は?

  業務効率と情報セキュリティ対策を両立!
手間なく確実に機密情報を守る方法とは?

  進化を続ける富士通ストレージETERNUS DX
製品開発者の自信を裏付けるものとは何か

  運用管理の課題を“2つの観点”から分析
ユーザー満足度の高い「仮想環境」とは?

  【CTC事例】約30の基幹システムを統合!
膨大なバッジジョブを制御した方法は?

  仮想化すればコストは削減できるか?
仮想化に必要な「3つの視点」を解説する

  その数、なんと400台以上! グループ内
サーバの「統合管理」によるメリットは?