2022-01-16 18:20:39 +00:00
---
title: "transmission"
2022-12-21 22:30:20 +00:00
tags: [ "Documentation", "Networking", "Torrenting" ]
2022-01-16 18:20:39 +00:00
---
2020-01-05 20:05:42 +00:00
# Torrench
2023-05-05 17:24:52 +00:00
Search for a torrent, e.g. 'sita sings the blues'.
2020-01-05 20:05:42 +00:00
Copy the magnet link.
It looks like this:
2023-06-17 19:28:20 +00:00
> magnet:?xt=urn:btih:05547db7c0c5fbbe50f00212ee43e9cec5b006fa&dn=Sita+Sings+the+Blues+%281080P+official+release%29&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Fopen.demonii.com%3A1337&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Fexodus.desync.com%3A6969
2020-01-05 20:05:42 +00:00
2022-12-21 22:30:20 +00:00
But you only need this bit (up until the `&` character):
2023-05-05 17:24:52 +00:00
> magnet:?xt=urn:btih:05547db7c0c5fbbe50f00212ee43e9cec5b006fa
2022-12-21 22:30:20 +00:00
2020-01-05 20:05:42 +00:00
# Transmission
The package is often called `transmission-cli` .
Install it then start the service.
Arch Linux:
2023-06-17 19:28:20 +00:00
```bash
sudo systemctl start transmission
```
2020-01-05 20:05:42 +00:00
Debian:
2023-06-17 19:28:20 +00:00
```bash
sudo systemctl start transmission-daemon
```
2020-01-05 20:05:42 +00:00
Add a torrent by the .torrent file, or a magnet link, like this:
2023-06-17 19:28:20 +00:00
```bash
transmission-remote -a 'magnet:?xt=urn:btih:05547db7c0c5fbbe50f00212ee43e9cec5b006fa& dn=Sita+Sings+the+Blues+%281080P+official+release%29& tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969& tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80& tr=udp%3A%2F%2Fopen.demonii.com%3A1337& tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969& tr=udp%3A%2F%2Fexodus.desync.com%3A6969'
```
2020-01-05 20:05:42 +00:00
2023-06-17 19:28:20 +00:00
```bash
transmission-remote -a sita.torrent
```
2020-01-05 20:05:42 +00:00
Now let's check that the torrent's been added successfully.
2023-06-17 19:28:20 +00:00
```bash
transmission-remote -l
```
2020-01-05 20:05:42 +00:00
To see the torrents, go to /var/lib/transmission/Downloads
If you don't have permission, either add the directory to the group made for your username, or add yourself to the `:transmission` group, or otherwise make sure that you can read that directory, and the user `transmission` can read, write and execute.
E.g.:
2023-06-17 19:28:20 +00:00
```bash
sudo usermod -aG transmission $USER
```
2020-01-05 20:05:42 +00:00
2022-12-21 22:30:20 +00:00
Log in again for the changes to take effect (or open a new TTY with `Ctrl+Alt+F2` ).
2020-01-05 20:05:42 +00:00
## Removing Torrents
If you don't want to have a file active as a torrent, get it's number with `transmission-remote -l` , then, if it were number '4', do:
2023-06-17 19:28:20 +00:00
```bash
transmission-remote -t 4 -r
```
2020-01-05 20:05:42 +00:00
You can now move the file, and the torrent will not be confused.
To both **r**emove **a**nd **d**elete a file, use `-rad` :
2023-06-17 19:28:20 +00:00
```bash
transmission-remote -t 4 -rad
```
2020-01-05 20:05:42 +00:00
# Moving Torrents
First, make sure that the user 'transmission' has permission to move the file.
If the file is in your home - `~` - but `transmission` is not allowed in your home, the file will not move there.
Next, find the torrent's number. You can use multiple numbers, separated with a comma:
2023-06-17 19:28:20 +00:00
```bash
transmission-remote -t 3,5,8 --move /home/alice/music
```
2020-01-05 20:05:42 +00:00
2023-05-05 17:24:52 +00:00
## Change Default Location
The `transmission` user has a home configuration file, like any other user, with all the transmission settings.
```bash
cd /var/lib/transmission/.config/transmission-daemon/
$EDITOR settings.json
```
Change the `download-dir` value to wherever you want the torrents to go.
# Creating Torrents
2023-07-15 00:36:50 +00:00
Transmission always needs the full path to every file, and the daemon will need permission to view the file.
When it doubt, just place the files in `transmission` 's home directory.
2023-05-05 17:24:52 +00:00
Create a torrent of file or directory `Memes` with:
2023-07-15 00:36:50 +00:00
```bash
sudo chown -R :transmission Memes
transmission-create $(pwd)/Memes
```
2023-05-05 17:24:52 +00:00
Add a tracker to the torrent, to make sure others can find you easily:
2023-07-15 00:36:50 +00:00
```bash
transmission-create --comment 'My Memes collection' -t 'udp://tracker.publicbt.com:80' -t 'udp://tracker.openbittorrent.com:80' --anonymize Memes
```
2023-05-05 17:24:52 +00:00
Without the `--anonymize` flag, the torrent file output will have a 'created by' and 'created date'.
## Open Trackers
- udp://tracker.opentrackr.org:1337/announce
- udp://opentracker.i2p.rocks:6969/announce
- https://opentracker.i2p.rocks:443/announce
- udp://tracker.openbittorrent.com:6969/announce
- http://tracker.openbittorrent.com:80/announce
- udp://9.rarbg.com:2810/announce
- udp://open.demonii.com:1337/announce
- udp://exodus.desync.com:6969/announce
- udp://tracker.moeking.me:6969/announce
- https://tracker.tamersunion.org:443/announce
- udp://tracker1.bt.moack.co.kr:80/announce
- udp://tracker.bitsearch.to:1337/announce
- udp://p4p.arenabg.com:1337/announce
- udp://explodie.org:6969/announce
- https://tracker.gbitt.info:443/announce
- http://tracker.gbitt.info:80/announce
2024-05-29 15:09:10 +00:00
## Verify
Add your torrent and notes its number:
```bash
transmission-remote -a "$file".torrent
transmission-remote -l
transmission-remote -t "$number" -i
```
The information in the last command shows that it's not verified, so you can verify with `-v` .
```bash
transmission-remote -t "$number" -v
```
If transmission cannot find it, then tell it where to find the torrent:
```bash
transmission-remote -t "$number" --find "$(pwd)"
```
...and of course, make sure the permissions allow transmission to see the target.
```bash
ls -ld "$file"
```