Началось всё со сборки маленького домашнего сервера. Собрал коробку, поставил систему, поставил нужные программы и начал перетаскивать туда данные с Cubietruck. С файлами проблем не возникло, с большинством торрент-раздач в Transmission тоже, споткнулся только об раздачи, в которых были выбраны не все файлы. Откладывал их перенос очень долго, но всё же сделал его с минимальными трудозатратами.
Способ местами костыльный, полностью ручной, но всё равно действенный.
Раздача в Transmission состоит из трех основных частей:
- Файлы, которые хранятся в указанном месте;
- torrent-файл в каталоге с данных программы;
- resume-файл, которых тоже хранится в каталоге данных программы.
Сначала я примонтировал расшаренный через NFS ресурс и скопировал файлы раздачи с помощью rsync, добавив ключ "--sparse", чтобы частично загруженные файлы занимали минимум дискового пространства.
Далее необходимо скопировать torrent-файл и resume-файл в доступное место. Найти их можно по пути из параметра "--config-dir", который передаётся при запуске Transmission. У меня путь равен "/var/lib/transmission-daemon/info", а нужные файлы лежат в подкаталогах "torrents" и "resume".
Если на новом месте файлы раздачи будут лежать по другому пути, то необходимо отредактировать resume-файл. Сам файл имеет формат bencode. Я для этого использую программу BEncode Editor. Есть ещё кроссплатформенная программа Torrent File Editor, но ей я ни разу не пользовался.
Открываем файл в программе и смотрим на список значений в нём:
Надо изменить параметр "destination" на путь, по которому будет лежать переносимая раздача. Если раздача многофайловая и представляет собой каталог с файлами, то имя этого каталога в пути указывать не надо.
Ещё можно сбросить в ноль параметр "uploaded", если хочется измерять объем розданного на другой машине с нуля.
Осталось сохранить файл, перенести его и torrent-файл в соответствующие каталоги, проверить права и запустить клиент заново. Перенесённая раздача должна подхватиться.
UPD:
В новых версиях программы torrent- и resume-файлы именуются не по названию раздачи, а по хэшу. Сам принцип переноса не изменился, но искать нужные файлы стало сложнее.
Посмотреть значение хэша нужного торрента можно через web-интерфейс или с помощью клиента, например, Transmission Remote GUI.