Настраиваем rtorrent как сервис

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

FreeBSDНедавно мы установили консольный торрент клиент для FreeBSD - rtorrent. Сегодня займёмся настройкой rtorrent как сервиса. Не будем же мы заходить каждый раз при перезагрузке нашего домашнего сервера и запускать вручную. Для меня необходимые требования:

  • автозапуск rtorrent при старте системы
  • возможность зайти с консоли в ncurses интерфейс

Для реализации этих фич нам потребуется ещё одна программа - screen. Это менеджер консольных сессий. Нужен он для возможности просмотреть интерфейс rtorrent из консоли, мало ли потребуется. Итак, устанавливаем screen:

  • cd /usr/ports/sysutils/screen && make install clean

Следущий шаг - пишем скрипт запуска rtorrent из screen:

#!/bin/sh

user="maf"
fpid="/usr/home/maf/.session_rtorrent/rtorrent.pid"
pid="`ps auxc | grep rtorrent | grep $user| awk '{print $2}'`"

case "$1" in
start)
echo "Starting rtorrent & screen..."
su - $user -c '/usr/local/bin/screen -S rt -d -m /usr/local/bin/rtorrent'
ps auxc | grep rtorrent | grep $user | awk '{print $2}' > $fpid
;;
stop)
echo "Stopping rtorrent & screen..."
/bin/kill -9 $pid
rm -f $fpid
;;
restart)
echo "Restarting rtorrent & screen..."
/bin/kill -9 $pid
rm -f $fpid
sleep 3
echo "Starting rtorrent & screen..."
su - $user -c '/usr/local/bin/screen -S rt -d -m /usr/local/bin/rtorrent'
ps axc | grep rtorrent | awk '{print $1}' > $fpid
;;
status)
echo "rtorrent running with pid $pid"
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
exit 64
;;
esac

exit 0

Это мой рабочий скрипт. Работает уже давно, сбоев я не замечал. Сохраняем его /usr/local/etc/rc.d/rt. Не забываем сделать скрипт исполняемым:

  • chmod +x /usr/local/etc/rc.d/rt

И запихиваем в автозагрузку:

  • /etc/rc.local

Добавив строку:

[...]
/usr/local/etc/rc.d/rt start

После этих действий забываем про rtorrent вообще. Теперь он будет запущен всегда.


Обмениваться, хранить, передавать Ваши файлы стало просто как никогда.
yandex-disk
Читать подробнее: для чего Yandex-Диск проекту Mini-Server. Практика установки, настройки и использования сетевого хранилища на Ubuntu server LTS 12.04 в статье Резервное копирование сервера Ubuntu на Яндекс Диск.

>> Ubuntu 12.04 + Nginx Скачать сервер
>> Fedora 15 Скачать сервер
>> Простой Debian 6.0.6 Скачать сервер
>> CentOS 6.0 и
+ (5.6) другой
Скачать сервер
>> OpenSUSE 11.4
MAX
Скачать сервер

Вход на сайт

ВНИМАНИЕ!

Регистрация на сайте только по согласованию с администратором ресурса. Обращаться через форму обратной связи.