Как запустить, остановить и перезапустить rtorrent?

22

Я только что установил rtorrentна свой компьютер Ubuntu Server 12.04 через apt-get.

Как мне начать | остановить | перезапустить службу?

Lindhe
источник
ты пробовал sudo service start rtorrent?
BiggJJ
sudo service rtorrent startто есть, но да, я пробовал это. Это просто вывод rtorrent: unrecognized service. Если я пишу sudo service rtoи нажимаю вкладку, он завершает rtorrentInit.sh. Я не знаю, что это такое, но я помню (из руководства, которое давно ушло в межплетение), которое я написал rtorrentи stop, но не в каком порядке, и есть ли другое слово между ними. Я не писал rtorrentInit.shэто в первый раз.
Линде
Да, вот что я имел в виду. Посмотрите здесь: Ubuntu 12.04 LTS Выделенный сервер rTorrent . Последние 7-8 шагов касаются установки и запуска rtorrent. Может быть, это может пролить свет.
BiggJJ
Я уже прочитал это сверху вниз. Но все равно спасибо. На данный момент я могу обойтись с экраном и просто перейти в rtorrent и выйти из него, но я оставлю эту ветку открытой, если кто-нибудь узнает ответ.
Линде

Ответы:

22

Чтобы запустить rtorrent, просто нажмите Ctrl+ Alt+ Tна клавиатуре, чтобы открыть терминал. Когда он откроется, выполните команду (ы) ниже:

rtorrent

Остановиться Ctrl+ D Выйти Ctrl+q

Вышеуказанные команды вы делаете после нажатия Enter, в окне rtorrent.

Для получения дополнительной информации см. Вывод:

rtorrent -h

и / или смотрите Использование rtorrent как профессионала

Митч
источник
Это правильный ответ. Боюсь, что я мог бы перепутать инструкции для этой программы с какой-то другой программой, поэтому, вероятно, того, что я искал, не существует. Я прошу прощения за неприятности, но надеюсь, что кто-то еще будет использовать эту тему.
Линде
Стоит отметить, что может потребоваться некоторое время, rtorrentчтобы закрыть все файлы и выйти после Ctrl+ q- это не значит, что это была неправильная комбинация.
Скиппи ле Гран Гуру
4

Принятый ответ является правильным, но не указывает, как выполнить «безопасное» отключение rtorrentслужбы с помощьюsystemctl служебного сценария.

Большинство существующих ответов или сценариев «убивают» либо сеанс экрана, либо сам rtorrentпроцесс. При этом они посылают SIGINT (2)или SIGQUIT (3)сигнал, который останавливает / убивает rtorrentпроцесс. Недостатком является то, что обычно файл блокировки rtorrentне удаляется, потому что rtorrentон не был закрыт должным образом. Следовательно, следующий стартrtorrent не будет выполнен из-за постоянной блокировки файла.

Взглянув на исходный кодrtorrent показывает, что он ожидает SIGTERM (15). Следовательно, с учетом systemctlслужебного скрипта команда stop может выглядеть так:

ExecStop=/usr/bin/kill -s 15 \`pidof rtorrent`

Если pidofнет в наличии, вы также можете использовать что-то вроде:

ps -A | grep "rtorrent" | awk '{print $1}'
  • ps список текущих процессов
  • grep извлекает подробные сведения о процессе
  • awk выбирает pid и выводит его на стандартный вывод

В случае, если вам нужно дождаться завершения выключения, вы можете использовать killall -w. Обратите внимание, что:

killallможет ждать вечно, если сигнал был проигнорирован, не имел никакого эффекта, или если процесс остается в состоянии зомби (source:) man killall.

YuTendo
источник
1
kill -s 15 `pidof rtorrent`может быть проще killall rtorrent(15 или SIGTERMэто сигнал по умолчанию, отправляемый killи killall).
Дэвид Фёрстер
1
Кроме того, где signal_handler.ccвы видите, что rtorrent ожидает, что SIGTERM завершит себя изящно? Я вижу только код управления сигналом общего обработчика сигнала, но никаких реальных обработчиков сигнала.
Дэвид Фёрстер
Не должно ли это быть: /usr/bin/kill -n 15 `pidof rtorrent` или /usr/bin/kill -s SIGTERM \$(pidof rtorrent)? Вы смешиваете названия сигналов и номера. - От man kill, на kill -lсамом деле даст вам список имен сигналов и соответствующих кодов сигналов. - Также обратите внимание, что хотя обратные тики, как и в `cmd`, официально не устарели, я прочитал, что $(cmd)на самом деле предпочтение отдается ясности.
Cbhihe
Не забывайте о pgrep:) Команда pgrep rtorrentвозвращает только PID, так что нет необходимости в конвейере или разборе
Zanna