BitTorrent プロトコル デーモン
btpd
、BitTorrent ネットワーク プロトコル経由でファイルを共有するためのユーティリティです。デーモン モードで実行されるため、制御端末や GUI は必要ありません。代わりに、デーモンは、btcli、そのコマンド ライン ユーティリティ、または制御ソケット上でコマンドやクエリを送信できるその他のプログラムによって制御されます。
btpd
次のプログラムで構成されます。
btpd
- bittorrent クライアント。btcli
- btpd へのコマンド ライン インターフェイス。btinfo
- torrent ファイルからの情報を表示します。すべてのプログラムは--help
オプションを受け入れます。
btcli
ユーティリティには、いくつかの異なる動作モードがあります。 btcli
実行する場合は、次のコマンドのいずれかを指定する必要があります。
add
- btpd に torrent を追加します。del
- btpd から torrent を削除します。kill
- btpd をシャットダウンします。list
- トレントをリストします。rate
- グローバルなアップおよびダウンロード速度を KB/秒単位で設定します。start
- トレントをアクティブ化します。stat
- アクティブな torrent の統計を表示します。stop
- torrent を非アクティブ化します。 btpd で torrent の共有を開始するには、torrent を btpd に追加する必要があります。これはbtcli add
を使用して行われます。トレントを追加すると、btpd は自動的に (特に指定しなかった場合) トレントの共有を開始し、不足しているデータをダウンロードします。 torrent を追加するときに指定するコンテンツ ディレクトリは存在する必要はありません。 btpd によって作成されます。
btcli list
を使用すると、どの torrent が btpd に追加されたかを確認できます。 list コマンドは、追加された各 torrent の番号も表示します。この番号は、btcli コマンドのターゲット トレントを指定するために使用できるため、トレント ファイルを追加したら保存する必要はありません。
アップおよびダウンロードの進行状況は、 btcli stat
コマンドを使用して追跡できます。 list コマンドと stat コマンドは両方とも、次のインジケーターを使用して torrent の状態を表示します。
+
- トレントが始まります。 btpd がこの torrent またはその前に開始された torrent のコンテンツをテストする必要がある場合、これには時間がかかることがあります。-
- torrent は停止中です。I
- トレントは非アクティブです。S
- btpd は torrent をシードしています。L
- btpd が torrent に侵入しています。 btcli stop
を使用してアクティブな torrent を停止でき、もちろん、 btcli start
使用して非アクティブな torrent を開始できます。
btcli del
コマンドは、Torrent の共有が完全に完了した場合にのみ使用してください。このコマンドは、Torrent とそれに関連するデータを btpd から削除します。 btpd は完全にダウンロードされていない部分に関する情報を失っており、データを再度ダウンロードする必要があるため、完全にダウンロードされていない torrent を削除してから再度追加することは特に悪い考えです。
btpd をシャットダウンするにはbtcli kill
使用します。 btcli の各コマンドのヘルプを必ず読んでください。
注: 共有する torrent の数に関係なく、btpd のインスタンスは 1 つだけ必要です。
デフォルト設定で btpd を開始するには、それを実行するだけです。ただし、使用すると便利なオプションがたくさんあります。完全なリストを表示するには、 btpd --help
を実行します。特に指定しなかった場合、btpd は、最後にシャットダウンされたときと同じアクティブな torrent のセットで起動します。
btdp は情報を保存し、そのログを$HOME/.btpd
に書き込みます。したがって、実行中にそこに書き込むことができる必要があります。 -d
オプションまたは$BTPD_HOME
変数を使用して別のディレクトリを指定できます。
アップロードの最大数を指定することをお勧めします。 Bittorrent は報復アルゴリズムを採用しているため、適切なレートでアップロードするとダウンロードが可能になります。アップロード/送信帯域幅とアクティブな torrent の数の間のバランスを見つけるようにしてください。
すべてのオプションをデフォルト値に設定して btpd を開始します。
# btpd
btpd を起動してポート 12345 でリッスンし、送信帯域幅を 200kB/s に制限し、ピア数を 40 に制限し、最後に btpd がシャットダウンされたときにアクティブだった torrent は開始しません。
# btpd -p 12345 --bw-out 200 --max-peers 40 --empty-start
btpd の torrent とその数、サイズ、ステータスなどのリストを表示します。
# btcli list
上記と同じですが、torrent 12 と my.little.torrent のみが対象です。
# btcli list 12 my.little.torrent
上記と同じですが、アクティブな torrent のみが対象です。
# btcli list -a
上記と同じですが、カスタム形式を使用して印刷します。
# btcli list -a -f "btcli list -f "%nt%#t%p%st%rn"
foo.torrent をコンテンツディレクトリ foo.torrent.d とともに追加し、起動します。
# btcli add -d foo.torrent.d foo.torrent
起動しなくても上記と同じです。
# btcli add --no-start -d foo.torrent.d foo.torrent
bar.torrent と torrent 番号 7 を開始します。
# btcli start bar.torrent 7
トレント番号 7 を停止します。
# btcli stop 7
アクティブなトレントをすべて停止します。
# btcli stop -a
bar.torrent とそれに関連する情報を btpd から削除します。
# btcli del bar.torrent
アクティブな torrent のアップ/ダウンロード統計の概要を表示します。
# btcli stat
5 秒ごとに概要を表示します。
# btcli stat -w 5
上記と同じですが、アクティブなトレントごとに個別の統計も表示します。
# btcli stat -w 5 -i
グローバルアップロード速度を 20KB/s に設定し、ダウンロード速度を 1MB/s に設定します。
# btcli rate 20K 1M
btpd をシャットダウンします。
# btcli kill
btpd が何らかの不明な理由でシャットダウンした場合は、ログファイルに手がかりがないか確認してください。
BSD、Linux、または同様のシステムが必要です。
次のソフトウェアの最新バージョンがあることを確認してください。
c99 コンパイラも必要です。アンティークではない GCC で十分です。
doc
にあるマニュアルを開くには、 man-pages
をインストールする必要があります。
# ./configure
# make
# make install
上記が失敗した場合に利用可能なビルド オプションについては、 ./configure --help
を参照してください。
btpd ディレクトリ内の torrent ディレクトリのレイアウトは、btpd 0.11 から変更されました。新しいバージョンを実行する前に、torrent ディレクトリを削除してください。
btpd がシャットダウンする前にトラッカーに停止メッセージを送信する必要がある場合、終了前モードに入ります。このモードの btpd プロセスは無視しても安全であり、同じディレクトリで開始される新しい btpd に干渉することはありません。
残念ながら、btpd で IPv6 と IPv4 の両方を有効にすることは、本来よりも役に立ちません。問題は、一部のサイトには両方のバージョンのトラッカーがあり、おそらくピア数が少ない IPv6 バージョンが IPv4 バージョンを優先して使用される可能性が高いことです。
この問題を解決するには、btpd の将来のバージョンで、IP バージョンのオプションを torrent ごとに変更する必要があります。
助けを得たい、貢献したい、または単に挨拶したい場合は、遠慮なく freenode の IRC チャネル #btpd に来てください。