Gentoo Logo

Maintainers Guide - torrents.gentoo.org

Content:

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.



Print

Page updated March- 6-2006

Summary: Maintainers Guide for torrents.gentoo.org

Curtis Napier
Author

Donate to support our development efforts.

Copyright 2001-2013 Gentoo Foundation, Inc. Questions, Comments? Contact us.