Difficulty: 4/10
Time: <30 minutes
Requirements: Two private trackers with the same content, a torrent client, and a POSIX-compliant operating system
Supplies: Two torrent files for the same torrent from separate trackers

INTRODUCTION

For those of you that are not familiar with this topic, cross-seeding is where you seed the same torrent on two or more trackers. This is a very useful way to help increase your ratio. The problem involved with cross-seeding is that the entire file structure, including file names need to be identical. You also need to seed the full and complete torrent to make sure you get those handy bonus points.

The technique I am going to show you will allow you to have the file stored wherever you want and named in any convention you wish, whether it be scene or something entirely different. This technique solely relies on the use of hard links. Hard links allow you to have multiple pointers all directed to the same file. This means that if you change the file from one pointer, the original source is also changed. On the plus side, if you delete the hard linked “file,” your source file will rename unharmed. You can also name the link to be something entirely different from the source. The only downside of hard links is that they require the file and link to be on the same partition. Hard links are supported in all POSIX and partially POSIX compliant operating systems, this includes Linux, Mac, and all Windows NT operating systems and later. The actual way to use them will be different, obviously, so for the purposes of this tutorial I will be demonstrating how to do this in Windows 7. The torrent client I will be using will be µTorrent.

PROCEDURE

Step 1:

Find a file that has a torrent on at least two trackers. For fun, rename the file to something else (this is only for demonstration purposes). If you were currently seeding the torrent, remove it from your client. You can alternatively tell it to “move,” but I’ve had varying degrees of success with that and found it to be slower than just removing it and adding it again.

Make sure to write down the full path to the file, including the file’s name and extension.

Step 2:

On the same partition as the drive where the file is stored, create a directory to store your links and whatever remaining files the torrent requires, such as pictures, .nfo files, samples, etc…

Step 3:

Configure your client to be in upload only mode. This is a good idea, because if it turns out that the file is not the same across both trackers then you won’t accidentally start to download it and overwrite the file. Once it passes the check you can turn on downloading again, you might need to download some remaining bits, but this will be fine, as usually they are small amounts.

There are a couple of ways to do this in µTorrent. My favorite way is to do it through the scheduler. The quickest way to access the scheduler is to right click on the bar at the bottom of the window, to the left of the download speed and click on “Enable Scheduler”.

After you’ve done that you should see it say something like limited by scheduler or seeding only or something similar. Double click on that text to open up the scheduler. In the window that pops up, make all of the squares pink by clicking on one square until it becomes pink and dragging across all the others. It should look like this when you’re done:

Click on “OK” and make sure that your bar now says, “Seeding only”. At this point you will only be able to seed files. To undo this process, simply right click on the “Seeding only” text and click on “Enable Scheduler”. The label at the bottom of the screen should disappear.

Step 4:

NOTE: Before doing this step, if you have enabled some sort of default – do ___ when torrents are added, turn it off. The Add New Torrent screen needs to come up when you add a torrent.

Open up one of your torrents. You should see a screen like the following, if you don’t see the above note:

In this picture you need to take notice of a couple of important things. First off, at the top where it says “Save As” you will see the directory structure. For this example it should be obvious that there are no subdirectories or additional files included. I just so happened to get lucky with this torrent, as these are the easiest to demonstrate. If the directory structure does not end in a file extension, i.e. “.mkv” then you are not pointing directly to the file, but rather a directory that contains the file. The second thing to pay attention to is the file you are wishing to cross-seeds name, as well as any other files that need to be included. It will make more sense how to deal with different directory structures and what to do with other files once I finish this example.

Open up command prompt. This is done by clicking on the start orb and typing “cmd” and pressing enter. Note, it may be easier to first type the text into a text editor and then paste it into command prompt. At this point, we are now going to create a hard link. To create a hard link the command “mklink” is used. It should be used in the following format:

mklink /H “Path\To\Link Directory\Linked File Name” “Path\To\Source File\Source file Name”

The switch “/H” tells the command that you wish to create a hard link. To learn more about the command you can type “mklink /?”. It is very important to include double quotes around both of your path names, this ensures that spaces and special characters are dealt with appropriately. The path to the link directory will be the directory created in Step 2 followed by whatever directory is needed to get to the file. For example, if your link directory was C:\Link and in your “Save As” prompt it pointed to the directory “Animal House”, then the link directory will be C:\Link\Animal House. The linked file name will be the file name as the torrent requires. For this example, the full path and file name will be “C:\Link\Animal House.1978.mkv”. Similarly, the path to the source file will point to your source file (the already downloaded torrent) in Step 1. The name of my file is “Animal House [1978] (720p).mkv”.

The full command for this example is:

Code:

mklink /H “C:\Link\Animal House.1978.mkv” “C:\HD Movies\Animal House [1978] (720p).mkv”

If you executed the command correctly, you will now see the file in the directory that you created in Step 2. At this point, you should copy over any of the other relevant files to the same exact location that are shown in the torrent.

Click on the ellipsis in the “Save As” field and navigate to either the file or the directory (this is completely dependent upon the torrent). In this example, I will navigate directly to the file, had it been in a directory, I would navigate to the directory. Click on “OK”.

If all has worked out correctly, you will see your client checking to make sure that the file is the same as the torrent, as shown below. If it finishes the check and fails, meaning that the files are not the same, you should remove the torrent. If the torrents are the same then it will either go straight to seeding or will be stopped at 99% because you may be missing some small pieces. If you are, disable the scheduler and download them.

Repeat this step (Step 4) for the other torrent. If the file names and structure are the same you will not need to create links, if the names are different than you will have to make another hard link. Remember that by just making links you are not using any disk space, whatsoever. Also, if you have to download extra bits it will be worth it in the bonus points alone, if not the seeding that you will be doing.

CONCLUSION

By following this tutorial you should be able to cross-seed successfully without consuming any extra disk space.

Hopefully this will help you get that extra ratio boost that you need.