Maintainers Guide - torrents.gentoo.org
1.
Torrent Tracker
Warning:
This document is mostly outdated, and remains only for reference. The torrents are created differently now.
|
Gentoo offers iso's of our release media and other files via BitTorrent. We host
our own torrent tracker at http://torrents.gentoo.org/. The website uses
PHPBTTracker+ to track
the torrents.
Initial Setup
Requirements:
- Apache2
- mySQL
- php (requires USE="session")
The tracker resides on sparrow.gentoo.org and is administered by the Infrastructure
Project. The administrator assigned to the box will assist you by keeping the
software up to date and advising you of any changes. Close coordination with the
assigned administrator is very important.
The tracker runs inside a webserver owned by a special user $TORRENT (the server
administrator has the details of the actual account). su to this user when adding
or changing any files to the web server. Apache user has group write access to
torrents/ in order to upload the .torrent files for storage. All other files and
directories are owned by the $TORRENT user.
Untar the tracker software in htdocs and edit config_example.php and
move it to config.php. The php scripts expect config.php to be in the
parent directory. Edit the necessary php files to reflect this. Move
index_samples/index_sample.php to ../index.php. Edit
this file and insert the Gentoo header and make any other formatting changes necessary.
Move index_samples/tracker.css to ../tracker.css and
insert the Gentoo header information and any other formatting changes. Use
main.css as a reference.
The php scripts are heavily commented. Read the INSTALL and README docs for
information for other configuration information.
Administration
Logon to the administrative
panel for reports, adding and deleting torrents and grouping functions.
Create all of the categories first and then add the torrents. Make sure to fill
in the category information on the add torrent panel.
New Releases and Upgrades
Because the release media is retired at each release the torrent database will
simply be cleared and the tracker software reinstalled. The install process is
much easier and less time consuming than retiring each individual torrent. Use
mysql to drop all the tables in the database and the install process will
automatically recreate it.
2.
Torrent Client
The torrent client is BitTornado.
Use the various scripts it comes with to create the torrents and seed them.
The actual release media is stored in /mnt/torrents/. The mirror
admin will copy the release/ directory directly to this partition.
Create a directory for the release, example /mnt/torrents/2006.0.
Move the files for the individual torrents into a seperate directory in
/mnt/torrents/2006.0/*. For instance:
/mnt/torrents/2006.0/x86-installcd-2006.0/. Each .iso should be a
seperate torrent file. Include the .contents, .digests and .asc files for the .iso.
in the directory with the .iso.
Once you have all of the files sorted use btcompletedir.py to mass create
the .torrent files:
$ btcompletedir.py http://torrents.gentoo.org/tracker.php/announce /mnt/torrents/2006.0/
The torrent client is hosted on the same machine. Once you have created the torrents
use links to logon
to the tracker and add the torrents.
Now start a screen session named bittorando and then su to the $TORRENT user.
Change to /mnt/torrents/2006.0 and start the torrent client.
/usr/bin/btlaunchmany.py --display_interval 100 --minport 6881 --maxport 6999 --ip 38.99.80.68 ./
3.
Resources
For details of the #TORRENT account and the database account please contact the
server admin.
|