Как я могу «исправить» состояние передачи-gtk после перемещения каталога загрузки?

Предположим, вы используете BitTorrent-клиент transfer-gtk (v2.94) в системе Linux для заполнения некоторых файлов, например ISO-образов дистрибутива Linux и версий LibreOffice. Предположим, что базовая функция «Сохранить в местоположение»: /path1/torrents а неполный путь торрентов — /path1/torrents/incomplete.

Теперь предположим, что вы закрыли Transmission-gtk и переименовали /path1 к /path2 (и не связывайте старый путь символическим с новым).

Изменить местоположение будущих торрентов просто с помощью диалогового окна конфигурации приложения или в $HOME/.config/transmission. Однако, когда это делается, все ранее активные торренты теперь помечаются красным, а данные предположительно отсутствуют.

Что делать, чтобы исправить расположение существующих торрентов (полных и неполных)? И — можно ли это как-то автоматизировать, чтобы это можно было сделать из командной строки (например, для файлов в $HOME/.config/transmission/resume)?

2 ответа
2

Щелкните торрент правой кнопкой мыши, нажмите «Установить местоположение» и выберите новый родительский каталог (/path2/torrents в таком случае). Вы можете сделать это для всех торрентов сразу, если все они были перемещены в один каталог.

После обновления местоположения щелкните правой кнопкой мыши еще раз и выберите «Проверить локальные данные», чтобы позволить Transmission повторно проверить, какие файлы / части уже были загружены.


Это можно автоматизировать из интерфейса командной строки, но сначала включите функцию «веб-интерфейс» в Transmission, которая также позволяет использовать transmission-remote.

Для каждого торрента запустите transmission-remote --find с новым родительским каталогом.


Файлы в ~ / .config / Transmission / resume / находятся в том же формате «Bencode», что и сами файлы .torrent, и их, вероятно, можно изменить, например, с помощью Perl Convert :: Bencode или очень осторожного sed’ing, но я не уверен, что рекомендую этот метод.

Вы хотите обновить элемент «назначение» в слове верхнего уровня:

$ bencode2json < 16a3968b347a81845384394e7f1b38656aeee97a.resume | head
{
    "activity-date": "1619012434",
    "added-date": "1619011497",
    "bandwidth-priority": "0",
    "corrupt": "0",
    "destination": "/home/xxx/Downloads",
    "dnd": [
    ...

(Если вы идете с прямым двоичным редактированием, обратите внимание, что строки Bencoded имеют префикс с их длиной, которая также должна быть обновлена, например 19:/home/xxx/Downloads в таком случае.)

  • Когда торренты содержат несколько файлов, они помещаются в подкаталог в torrents/. Должен ли я или не должен включать специфичный для торрента подкаталог при выборе нового корня?

    — эйнпоклум
    11 часов назад

  • 1

    Нет, во всех случаях следует выбирать только родительский каталог. Подкаталог является частью «содержимого» торрента.

    — user1686
    11 часов назад

Дополнение к отличному ответу @ user1686: вы можете обновить расположение всех торрентов сразу:

  • Выберите «Все» и «Все» на панели «Показать:» (чтобы были видны все торренты).
  • Нажмите Ctrl + A, чтобы выбрать все видимые торренты.
  • Щелкните правой кнопкой мыши любой из выбранных торрентов.
  • Выберите «Установить местоположение».
  • Выберите «Другое».
  • Перейдите в новую папку для торрентов (в вашем случае «/ path2 / torrents»).
  • Выберите «Локальные данные уже есть».
  • Нажмите «Применить».
  • Подождите, пока обновятся торренты.
  • Когда диалоговое окно исчезнет, ​​перезапустите Transmission-gtk.

Все ваши торренты должны быть признаны возобновляемыми. Однако вам все равно нужно возобновить их — они автоматически приостанавливаются, если данные не могут быть найдены.

  • Большинство списков, включая Transmission, поддерживают Ctrl + A (и, если на то пошло, Shift + End) …

    — user1686
    3 часа назад

  • @ user1686: А … спасибо. Фиксированный.

    — эйнпоклум
    2 часа назад

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *