Перейти к содержанию
Форум русской поддержки продукции Synology

Рекомендованные сообщения

Доброго времени суток всем!

 

Я не смог нормально заставить работать Transmission, чтобы он "не отваливался" и сегодня установил rtorent + веб интрефейс ruTorrent.

 

Вкратце о веб-интерфейсе:

ruTorrent был разработан на базе WebUI к uTorrent, соответственно, его внешний вид очень напоминает «родителя». Собственно, своим названием ruTorrent тоже обязан этому самому родителю – uTorrent + rTorrent = ruTorrent.

 

Часть функциональности ruTorrent реализуется плагинами, что дает пользователю возможность собрать «свой собственный теремок» без ненужных лично ему частей.

 

Выглядит он вот так:

 

http://i.piccy.info/i5/05/54/305405/rutorrent_800.jpg

 

Вот список плагинов, которые можно установить:

 

1. rpc – плагин, осуществляющий связь между rtorrent и веб-сервером. Чтобы не заморачиваться с настройкой scgi-модуля последнего. Для роутера не рекомендую.

2. erasedata – добавляет в контекстное меню закачки пункт «Удалить вместе с данными». Замечу – для многофайловых торрентов удалятся будут только собственно файлы, директории торрента удалены не будут. Может, потом починю.

3. darkpal – просто другая раскраска веб-морды, может, кому понравится. Выглядит так: http://vif2ne.ru/nvk/stuff/novik/rtorrent/darkpal.jpg [300K]

4. choose – добавляет в диалог добавления закачки листбокс для более комфортной навигации по файловой системе хоста. Показывает только те директории, в которые rtorrent может писать. Ну и само собой, только те, которые php может показать.

5. create – добавляет команду создания нового торрента. Из известных ошибок – файлы более 2Г размером не обрабатываются.

6. trafic – подсистема учета трафика. Сбор данных начинается в момент первой загрузки веб-морды с установленным плагином. Выглядит так: http://vif2ne.ru/nvk/stuff/novik/rtorrent/trafic.jpg [300K]

7. rss – работа с rss фидами. Подробней про плагин тут – http://wl500g.info/showpost.php?p=141009&postcount=1872

8. edit – редактирование параметров торрента.

9. throttle – позволяет устанавливать отдельные ограничения скорости для группы закачек. Подробнее см. http://wl500g.info/showpost.php?p=148587&postcount=2204

10. retrackers – автоматически дописывает в добавляемые (любым способом) закачки необходимые ретрекеры. Подробнее см. http://wl500g.info/showpost.php?p=148587&postcount=2204

11. cookies- позволяет задавать набор cookies для трекеров, использующих соотв. авторизацию. a’la wTorrent.

12. search – позволяет задавать собственный набор поисковых сайтов.

13. autotools – автоматизация, автор dmrom, читать тут – http://wl500g.info/showpost.php?p=150335&postcount=2312

14. datadir – замена текущего каталога данных торрента на другой, автор dmrom.

 

Процесс установки занимает не много времени, не нужно танцев с бубном и самое главное - он работает. Добавил в него 21 торрент, разных размеров от 1-2Гб до 65Гб.

Все работает.

 

Очень порадовал веб-интерфейс, после обычного "виндового" uTorrent - в ruTorrent все интуитивно понятно и видно. Установил плагин который показывает загрузку процессора. Также еще два плагина - один позволяет удалять торрент + сам файл , второй позволяет переносить файлы торрента из одного места в другое.

 

Установка проверена на Synology DS710+ с последней прошивкой.

 

Если будет интерес у пользователей - могу написать подробную инструкцию по установке.

 

Использование системных ресурсов:

1) Модель DS710+

всего торрентов: 42

активных: 17

скачивание: 2

размер торрентов: от 300 Мб до 67 Гб

скорость загрузки: 2,8 Мб/сек

скорость выгрузки: 2,9 Мб/сек

загрузка процессора: 10-15%

использование памяти: 6% (всего 1Гб)

 

Система стабильно работает уже 3 дня в нагруженном режиме, при это уже раздал 251Гб, скачал 253Гб. Канал 100Мбит, максимальная скорость скачивания/раздач 11,2 Мбайт/сек.

Ссылка на сообщение
Поделиться на другие сайты
  • Ответов 273
  • Создано
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Итак поехали. Процесс установки:

 

0. Отключаем Download Station.

 

1. Установить программу Putty.

 

2. Включить поддержку SSH в Synology Disk Station Manager (Админка -> Management -> Сетевые службы -> Терминал)

 

3. Необходимо, чтобы у Вас был установлен IPKG. Если Вы до этого устанавливали Midnight Commander, то он у Вас уже точно установлен. Процесс установки описан здесь.

 

4. Заходим через putty по протоколу SSH на Ваш сетевой накопитель, вводим логин root и пароль администратора.

 

5. Для начала на всякий случай обновим пакеты:

ipkg update
ipkg upgrade

 

6. Устанавливаем xmlrpc-c.

 

Прошивка Synology уже включает в себя xmlrpc-c - 1.11.00-3 , но он не работает с rtorrent. Поэтому мы скачаем его и скомпилируем.

 

Удалите текущую версию xmlrpc-c, если она установлена:

ipkg remove xmlrpc-c

 

Установите пакеты для компилирования xmlrpc-c:

 

Перед установкой пакетов необходимо удалить wget и установить wget-ssl.

Делаем следующее:

ipkg remove wget
ipkg install wget-ssl

 

Теперь можно устанавливать пакеты:

 

ipkg install gcc svn optware-devel libcurl-dev

 

Теперь скачиваем новый xmlrpc-c и компилируем его:

svn checkout http://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable xmlrpc-c
cd xmlrpc-c
./configure --prefix=/opt
make
make install

 

7. Устанавливаем rTorrent и необходимые пакеты для него.

 

ipkg install rtorrent screen

 

Создаем каталог session:

mkdir -p /opt/share/torrent/session/

 

Создаем каталог logs:

mkdir /opt/var/log/

 

Редактируем конфигурационный файл rtorrent (он расположен в /opt/etc/rtorrent.conf)

Для редактирования можно воспользоваться возможностями Midnight Commander или сделать это встроенным редактором VI.

Хочу напомнить, что встроенный редактор работает не так как обычный на ПК.

Открываем файл для редактирования:

vi /opt/etc/rtorrent.conf

Стрелками переходим на последнюю строчку в ее конец справа и нажимаем один раз на кнопку "i" на английской раскладке. Мы перешли в режим редактирования.

Теперь нажимаем один раз стрелку вправо и Enter. Перешли на следующую строчку. Теперь вставляем эту сточку:

scgi_port = 127.0.0.1:5050

Теперь находим строчку с диапазоном портов, с которым будет работать rTorrent. Выглядит она так:

# Port range for listening

port_range = 6881-6889 (меняем порты на те, которые у Вас проброшены в роутере. ).

После окончания редактирования нажимаем один раз кнопку ESC , набираем :wq и жмем Enter для сохранения файла.

 

Редактируем файл S99rtorrent, который расположен в /opt/etc/init.d/S99rtorrent.

Пишем:

vi /opt/etc/init.d/S99rtorrent

Находим строчку #dirlayout="RTORRENT_DEFAULT" (7-я строчка сверху) и после нее ставим с новой строки:

dirlayout=CUSTOM

 

Теперь в этом же файле нужно изменить функцию checkcnfg() . Она находится на 89 строчке.

В "теле" функции нужно закоментировать (добавить в начале строки символ #) все строчки кроме одной. Должно получиться так:

#for i in `echo "$PATH" | tr ':' '\n'`; do
#    if [ -f $i/$NAME ]; then
        exists=1
#        break
#    fi
#done

 

Файл не закрываем, это еще не все. Переходим к фнукции d_start() - 114 строчка.

В "теле" функции несколько строчек, нам нужны только те которые начинаются со слов "su -c". Ставим значок # в начале каждой строки. Тоесть закоменируем их.

Теперь в этой функции добавляем новую строчку:

su -c "screen -dmS ${srnname} rtorrent ${options} 2>$logfile"

 

Должно получиться примерно так:

d_start() {
  [ -d "${base}" ] && cd "${base}"

  stty stop undef && stty start undef
#  su -c "screen -ls | grep -sq "\.${srnname}[[:space:]]" " ${user} || su -c "sc
  # this works for the screen command, but starting rtorrent below adopts screen
  # even if it is not the screen session we started (e.g. running under an undes
  #su -c "screen -ls | grep -sq "\.${srnname}[[:space:]]" " ${user} || su -c "sg
#  su -c "screen -S "${srnname}" -X screen rtorrent ${options} 2>&1 1>/dev/null"
  su -c "screen -dmS ${srnname} rtorrent ${options} 2>$logfile"
}

 

С редактированием файла закончили, сохраняем изменения в файле, идем дальше.

 

Перезагружаем rTorrent:

/opt/etc/init.d/S99rtorrent restart

 

Можно проверить что rTorrent работает, набираем строчку:

screen -r

 

Если все ок, на экране будет "текстовый" вариант торрент-клиента. Чтобы из него выйти нужно нажать CTRL+A+D.

 

8. Устанавливаем и настраиваем Lighttpd.

 

Устанавливаем lighttpd сервер:

ipkg install lighttpd php-fcgi

 

Редактируем его конфигурационный файл /opt/etc/lighttpd/lighttpd.conf:

vi /opt/etc/lighttpd/lighttpd.conf

 

Переходим на 52 строчку. Там будет написано:

# server.event-handler = "freebsd-kqueue" # needed on OS X

Если значка # , нет в начале этой строчки, то его нужно добавить.

После этой строчки добавляем новую:

server.event-handler = "poll"

 

Теперь переходим на 12 строчку. Там будет написано:

Server.modules              = (

и дальше идет список модулей. Некоторые из них закоментированы (в начале строчки стоит значок #).

Нам нужно, чтобы в списках модулей точно были и без закоментирования вот эти два модуля:

"mod_cgi", "mod_scgi"

 

После редактирования у Вас должно получиться примерно так:

server.modules              = (
#                               "mod_rewrite",
#                               "mod_redirect",
#                               "mod_alias",
                                "mod_access",
#                               "mod_cml",
#                               "mod_trigger_b4_dl",
                                "mod_auth",
#                               "mod_status",
#                               "mod_setenv",
                                "mod_fastcgi",
#                               "mod_proxy",
#                               "mod_simple_vhost",
#                               "mod_evhost",
#                               "mod_userdir",
                                "mod_cgi",
                                "mod_scgi",
#                               "mod_compress",
#                               "mod_ssi",
#                               "mod_usertrack",
#                               "mod_expire",
#                               "mod_secdownload",
#                               "mod_rrdtool",
                                "mod_accesslog" )

 

Теперь переходим в конец файла и добавляем эти строчки:

scgi.server = (
    "/RPC2" =>
        ( "127.0.0.1" =>
            (
                "host" => "127.0.0.1",
                "port" => 5050,
                "check-local" => "disable"
            )
        )
    )

 

Сохраняем изменения в файле. Теперь перезагружаем этот самый сервер lighttpd:

/opt/etc/init.d/S80lighttpd restart

 

Теперь нужно проверить что сервер нормально работает. В браузере набираем:

http://diskstation:8081/ (замените слово "diskstation" на IP адрес).

Если Вы не увидите веб-странички по умолчанию, то нужно проверить лог-файлы в /opt/var/log/lighttpd/.

 

Для того чтобы сервер lighttpd сам запускался после каждой перезагрузки NAS необходимо выполнить следующую команду:

cp /opt/etc/init.d/S80lighttpd /usr/syno/etc/rc.d/S87lighttpd.sh

 

9. Устанавливаем веб-морду - ruTorrent:

 

Скачиваем ruTorrent в нужный нам каталог:

cd /opt/share/www/
svn export http://rutorrent.googlecode.com/svn/trunk/rutorrent

 

Редактируем конфигурационный файл ruTorrent - /opt/share/www/rutorrent/conf/config.php

vi /opt/share/www/rutorrent/conf/config.php

 

Там находим строчку:

$scgi_port = 5000;

Это строка номер 25 и меняем ее на:

$scgi_port = 5050;

 

Теперь сохраняем изменения в файле. Практически все.

Пример установки плагина для ruTorrent:

откройте в браузере страничку: http://rutorrent.googlecode.com/svn/trunk/plugins/

Там будет список плагинов, в первом посте темы есть описание каждого из них.

Теперь установим плагин, который показывает загрузку процессора:

cd /opt/share/www/rutorrent/plugins
svn co http://rutorrent.googlecode.com/svn/trunk/plugins/cpuload

 

Если хотите другой плагин - вместо слова cpuload пишите название другого плагина и он установится.

 

ВСЕ. Теперь переходим по адресу: http://diskstation:8081/rutorrent/ (где вместо diskstation пишите ip адрес Вашего сетевого накопителя).

 

П.С. Если Вы планируете скачивать/раздавать торренты большого размера - более 40Гб, то Вам нужно поменять параметр в настройках PHP.

Делается это так:

vi /opt/etc/php.ini

Находим строчку memory_limit=8M и меняем ее на memory_limit=16M

 

Осталось только "запаролировать" вход в ruTorrent.

 

Как запаролить вход в rutorrent:

 

1. Скачиваем и запускаем программу passwd.

В поле "User name" вводим логин, в поле "User Password" вводим пароль.

Нажимаем "Encode only". В поле "Encoded Data" видим логин и зашифрованный пароль.

Программу пока не закрываем.

 

2. Заходим на сетевой накопитель по SSH.

 

3. Создаем папку private в каталоге etc:

mkdir /etc/private/

 

4. Заходим в эту папку:

cd /etc/private/

 

5. Создаем там файл .htaccess и начинаем его редактировать:

vi .htaccess

 

6. Копируем из Программы в 1-м пункте логин и пароль в буфер обмена.

 

7.Возвращаемся к редактированию файла:

- переходим в режим редактирования (нажимаем кнопку "i" один раз)

- вставляем из буфера обмена строчку с логином-паролем (shift-ins)

- сохраняем файл (нажимаем один раз ESC и затем пишем :wq и нажимаем Enter)

 

8. Редактируем конфигурационный файл веб-сервера lighttpd:

vi /opt/etc/lighttpd/lighttpd.conf

 

Теперь переходим на 12 строчку. Там будет написано:

Server.modules              = (

и дальше идет список модулей. Некоторые из них закоментированы (в начале строчки стоит значок #).

Нам нужно, чтобы в списках модулей точно были и без закоментирования вот эти модули:

"mod_access",
"mod_accesslog",
"mod_fastcgi",
"mod_rewrite",
"mod_auth"

 

Теперь переходим в конец файла и добавляем эти строчки:

auth.debug = 2
auth.backend = "htpasswd"
auth.backend.htpasswd.userfile = "/etc/private/.htpasswd"

auth.require = ( "/rutorrent/" =>
(
"method" => "basic",
"realm" => "Private",
"require" => "valid-user"
)
)

 

Сохраняем изменения в файле.

 

9. Все готово. Теперь перезагружаем веб-сервер lighttpd:

/opt/etc/init.d/S80lighttpd restart

 

Файл .htaccess не обязательно должен находиться в /opt/private , Вы можете хранить его в другом каталоге, соответственно поменяв строчку:

auth.backend.htpasswd.userfile = "/etc/private/.htpasswd"

 

на

 

auth.backend.htpasswd.userfile = "/ПОЛНЫЙ ПУТЬ К КАТАЛОГУ/.htpasswd"

Ссылка на сообщение
Поделиться на другие сайты

На мой взгляд лучше сразу в wiki такие посты.

У меня несколько вопросов по rtorrent

1. Фрагментируются ли файлы при скачивании. Если да - есть ли способ борьбы, аналогичный этому (transmission) - http://www.synology-forum.ru/index.php?showtopic=1470

2. Насколько быстро rtorrent делает верификацию (вычисление хэша). Хорошо бы в сравнении с transmission. Сильно ли загружает cpu при этом? Возможно не прав, но читал, что проверку хэша проводит не в процессе скачивания, а после окончания. Так ли это?

3. Каким образом сделано частичное скачивание (не всех файлов) из одного торрента. Содается ли 1 дополнительный файл (как в utorrent) с недостающими кусками для вычисления хэша или скачиваются куски "соседних" файлов в эти файлы.

4. Потребление памяти и cpu при работе? Лучше в сравнении с transmission.

Ссылка на сообщение
Поделиться на другие сайты

Я бы не сказал что установка проста и очевидна. Особенно по сравнению с Трансмишен SPK пакетом. :rolleyes:

У меня правда 110j и Трансмишен никогда не падал.

Ссылка на сообщение
Поделиться на другие сайты

Информация интересная, вопрос действительно в том, как оно машинку будет загружать. Да еще бы протестить не на монстриках типа 710 и т.п., а на маленьких слабеньких модельках.

У меня после последней установки на DS107+ spk от sarav, все прекрасно раздает и качает. Тьфу-тьфу-тьфу :) У же 4-ые сутки пошли. Закачка до 1.7 МБ/с видел, раздачу до 2 МБ/с.

Но если упадет - попробую указанный тут вариант.

Ссылка на сообщение
Поделиться на другие сайты

по загрузке - при около 80 торентов на 10мбит на 409+ ~15%

про фрагментацию - это не проблема клиента а проблема ос. методы борьбы аналогичные.

Ссылка на сообщение
Поделиться на другие сайты
по загрузке - при около 80 торентов на 10мбит на 409+ ~15%

Загрузке или раздаче?

про фрагментацию - это не проблема клиента а проблема ос. методы борьбы аналогичные.

Некоторые клиенты умеют бороться с проблемами ос. Например, tansmission с preallocation=2 в настройках. rtorrent это умеет?

Ссылка на сообщение
Поделиться на другие сайты

при раздаче. 80 закачек ? а такое бывает ?

без понятия. у меня нет проблем с производительностью закачек.

Ссылка на сообщение
Поделиться на другие сайты
при раздаче. 80 закачек ? а такое бывает ?

без понятия. у меня нет проблем с производительностью закачек.

Ну написали про 80 закачек - я и спросил. Может эксперимент на 80 закачек ставили. Все одновременоо раздавались? У меня на узком канале более 60 раздач не было. Реально раздаются не более 20 торрентов. Transmission потребляет 3-5% cpu на ds110j. Трудно, конечно, такие данные сравнить.

Ссылка на сообщение
Поделиться на другие сайты

я говорил про загрузку. процессора.

я забыл, сейчас 12мбит. это около 1400KBps, около 100гиг в день. трудно, но вобщем у меня не многим менее было на 207+ и там загрузка была 20-25%. мигрировал я в том числе и потому что туда уже не умещался некий перловый скрипт.

Ссылка на сообщение
Поделиться на другие сайты

Господа, в чём может быть проблема?

Производил установку на ds110j. Старался выполнять все шаги точно, как описано. Однако, команды:

svn checkout http://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable xmlrpc-c

svn export http://rutorrent.googlecode.com/svn/trunk/rutorrent

не выполнялись (не найдены файл или папка). Пришлось загружать их через Windows и потом копировать в нужные папки. Но до конца инструкции всё же дойти удалось.

Пытался запустить через Оперу - показывает надпись Loading... и дальше не двигается.

В лисе вообще пишет, что не может загрузить страницу. Только в Сафари получилось запустить веб-интерфейс, в котором ничего не получается сделать, при этом во вкладке Logger пишет следующее:

[17.07.2010 12:20:20] WebUI started.

[17.07.2010 12:20:30] Bad response from server: (0 [null,getplugins])

[17.07.2010 12:20:30] Bad response from server: (0 [error,getplugins])

[17.07.2010 12:20:40] Bad response from server: (0 [null,getuisettings])

[17.07.2010 12:20:40] Bad response from server: (0 [error,getuisettings])

Ссылка на сообщение
Поделиться на другие сайты

Aptem

Нужную Вам библиотеку, если не ошибаюсь, для Вашей архитектуры выкладывали в теме http://www.synology-forum.ru/index.php?showtopic=273

Еще раз проверьте все внимательно.

 

На ds210j очень адекватно работает transmission.

Ссылка на сообщение
Поделиться на другие сайты

 

Спасибо большое.

Ссылка на сообщение
Поделиться на другие сайты

чет никак не хочет дружить с вебмордой. не видит она его(нет связи с rTorrent...)http://www.kolobok.us/smiles/light_skin/diablo.gif

да и авторан рторрента не пашет почему-то

 

все по инструкции делалhttp://www.kolobok.us/smiles/light_skin/unknw.gifhttp://www.kolobok.us/smiles/light_skin/dash2.gif

Ссылка на сообщение
Поделиться на другие сайты

Если веб морда запускается, то прямо в ней можно посмотреть "Лог". Там должная быть ошибка, если не все верно прописано.

Думаю проблема в файле /opt/etc/lighttpd/lighttpd.conf

Проверьте еще раз что там раскоментированны те же строчки что и указаны в инструкции.

У меня сняты значки # напротив строк:

"mod_access",

"mod_auth",

"mod_fastcgi",

"mod_cgi",

"mod_scgi",

"mod_accesslog" )

 

Да, сточки mod_scgi вообще не было, я ее добавлял.

Ссылка на сообщение
Поделиться на другие сайты
Если веб морда запускается, то прямо в ней можно посмотреть "Лог". Там должная быть ошибка, если не все верно прописано.

Думаю проблема в файле /opt/etc/lighttpd/lighttpd.conf

Проверьте еще раз что там раскоментированны те же строчки что и указаны в инструкции.

У меня сняты значки # напротив строк:

"mod_access",

"mod_auth",

"mod_fastcgi",

"mod_cgi",

"mod_scgi",

"mod_accesslog" )

 

Да, сточки mod_scgi вообще не было, я ее добавлял.

строки раскоментированы именно как у тебя

и так же добавлен вручную mod_scgi, вообщем все со скрина мануала делал

http://img687.imageshack.us/img687/5712/b1831c6ef93f4ae9a0b932a.png

а ошибку он говорит такую:

http://img687.imageshack.us/img687/3231/7277583d3bab43f2abdc7c6.png

Ссылка на сообщение
Поделиться на другие сайты

Тогда проблема была при установке и компиляции xmlrpc-c.

Проверьте чтобы при установке пакетов для сборки xmlrpc-c у Вас не было подобной надписи:

Collected errors:

ERROR: The following packages conflict with wget-ssl:

wget

 

Если она появляется, то нужно удалить wget и поставить wget-ssl. Делается это так:

ipkg remove wget

ipkg install wget-ssl

 

После этого заново установите пакет, который выдавал эту ошибку. Скорее всего эта ошибка была при установке optware-devel. Тоесть Вам нужно заново установить пакеты для компиляции xmlrpc-c и еще раз его скомпилировать. После этого все заработает.

Ссылка на сообщение
Поделиться на другие сайты
Если она появляется, то нужно удалить wget и поставить wget-ssl. Делается это так:

ipkg remove wget

ipkg install wget-ssl

wget и wget-ssl взаимозаменяемые пакеты, на сборку не влияют.

Ссылка на сообщение
Поделиться на другие сайты
Collected errors:

ERROR: The following packages conflict with wget-ssl:

wget

o_O БЫЛА! ^_^

wget и wget-ssl взаимозаменяемые пакеты, на сборку не влияют.

но без удаления wget'a wget-ssl не ставится

NAS> ipkg install wget-ssl
Installing wget-ssl (1.12-2) to root...
Nothing to be done
An error ocurred, return value: 1.
Collected errors:
ERROR: The following packages conflict with wget-ssl:
wget

NAS> ipkg remove wget
Removing package wget from root...
Successfully terminated.
NAS> ipkg install wget-ssl
Installing wget-ssl (1.12-2) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/..._1.12-2_arm.ipk
Installing libidn (1.19-1) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/..._1.19-1_arm.ipk
Configuring libidn
Configuring wget-ssl
Successfully terminated.

ЗАРАБОТАЛО! спасибо!http://www.kolobok.us/smiles/light_skin/yahoo.gif

 

ЗЫ не плохо бы было на wiki дополнить инструкцию в случае возникновения проблемы как у меня

 

а как запоролить вход на вебморду ruTirrent'a? где копать а то не встречал в конфигах поля пароля логина, только логин рута видел без пароляhttp://www.kolobok.us/smiles/light_skin/unknw.gif

Ссылка на сообщение
Поделиться на другие сайты

Запаролить вход это отдельная история. Не так просто. Постараюсь сегодня или завтра написать инструкцию для установки пароля.

Ссылка на сообщение
Поделиться на другие сайты
Запаролить вход это отдельная история. Не так просто. Постараюсь сегодня или завтра написать инструкцию для установки пароля.

спасибо! буду ждать с нетерпениемhttp://www.kolobok.us/smiles/light_skin/good.gif

Ссылка на сообщение
Поделиться на другие сайты

автозапуск по прежнему не работает

только после

/opt/etc/init.d/S99rtorrent restart

/opt/etc/init.d/S80lighttpd restart

поднимается

 

S99rtorrent:

#!/opt/bin/bash

############################################################################
#Optware package of rtorrent uses non-standard layout of directories.     ##
#Uncomment the following line to switch to the default layout of rtorrent.##
############################################################################
#dirlayout="RTORRENT_DEFAULT"
dirlayout=CUSTOM

#############
###<Notes>###
#############
# This script depends on screen.
# For the stop function to work, you must set an
# explicit session directory using ABSOLUTE paths (no, ~ is not absolute) in your rtorrent.rc.
# If you typically just start rtorrent with just "rtorrent" on the
# command line, all you need to change is the "user" option.
# Attach to the screen session as your user with 
# "screen -dr rtorrent". Change "rtorrent" with srnname option.
# Licensed under the GPLv2 by lostnihilist: lostnihilist _at_ gmail _dot_ com
##############
###</Notes>###
##############

#######################
##Start Configuration##
#######################
# You can specify your configuration in a different file 
# (so that it is saved with upgrades, saved in your home directory,
# or whateve reason you want to)
# by commenting out/deleting the configuration lines and placing them
# in a text file (say /home/user/.rtorrent.init.conf) exactly as you would
# have written them here (you can leave the comments if you desire
# and then uncommenting the following line correcting the path/filename 
# for the one you used. note the space after the ".".
# . /etc/rtorrent.init.conf

#Do not put a space on either side of the equal signs e.g.
# user = user 
# will not work
# system user to run as
user="root"

# the system group to run as, not implemented, see d_start for beginning implementation
# group=`id -ng "$user"`

prefix="/opt"

# the full path to the filename where you store your rtorrent configuration
if [ "${dirlayout}" = "RTORRENT_DEFAULT" ] ; then
 config="${prefix}/home/${user}/.rtorrent.rc"
else
 config="/opt/etc/rtorrent.conf"
fi

# set of options to run with
if [ "${dirlayout}" = "RTORRENT_DEFAULT" ] ; then
 options=""
else
 options="-n -o import=${config}"
fi

# default directory for screen, needs to be an absolute path
if [ "${dirlayout}" = "RTORRENT_DEFAULT" ] ; then
 base="${prefix}/home/${user}"
else
 base="/opt/share/torrent"
fi

# name of screen session
srnname="rtorrent"

# file to log to (makes for easier debugging if something goes wrong)
logfile="/opt/var/log/rtorrentInit.log"

#######################
###END CONFIGURATION###
#######################
PATH=/opt/bin:/opt/sbin:/usr/bin:/sbin:/bin:/usr/sbin
DESC="rtorrent"
NAME=rtorrent
DAEMON=$NAME
SCRIPTNAME=/etc/init.d/$NAME

# Do not proceed unless some apps are available.
test -x /opt/bin/screen || ( echo "screen not found." | tee -a "$logfile" >&2 ; exit 2 )
test -x /opt/bin/su -o -x /bin/su || ( echo "su not found." | tee -a "$logfile" >&2 ; exit 2 )

checkcnfg() {
#	exists=0
#	for i in `echo "$PATH" | tr ':' '\n'` ; do
#		if [ -f "$i/$NAME" ] ; then
		exists=1
#			break
#		fi
#	done
#	if [ $exists -eq 0 ] ; then
#		echo "cannot find rtorrent binary in PATH $PATH" | tee -a "$logfile" >&2
#		exit 3
#	fi
#	if ! [ -r "${config}" ] ; then 
#		echo "cannot find readable config ${config}. check that it is there and permissions are appropriate" | tee -a "$logfile" >&2
#		exit 3 
#	fi 
#	session=`getsession "$config"` 
#	if ! [ -d "${session}" ] ; then
#		echo "cannot find readable session directory ${session} from config ${config}. check permissions" | tee -a "$logfile" >&2
#		exit 3
#	fi
}

d_start() {
 [ -d "${base}" ] && cd "${base}"

 stty stop undef && stty start undef
 #su -c "screen -ls | grep -sq "\.${srnname}[[:space:]]" " ${user} || su -c "screen -dm -S ${srnname} 2>&1 1>/dev/null" ${user} | tee -a "$logfile" >&2
 # this works for the screen command, but starting rtorrent below adopts screen session gid
 # even if it is not the screen session we started (e.g. running under an undesirable gid
 #su -c "screen -ls | grep -sq "\.${srnname}[[:space:]]" " ${user} || su -c "sg \"$group\" -c \"screen -fn -dm -S ${srnname} 2>&1 1>/dev/null\"" ${user} | tee -a "$logfile" >&2
 #su -c "screen -S "${srnname}" -X screen rtorrent ${options} 2>&1 1>/dev/null" ${user} | tee -a "$logfile" >&2
  su -c "screen -dmS ${srnname} rtorrent ${options} 2>$logfile"
}

d_stop() {
session=`getsession "$config"`
if ! [ -s ${session}/rtorrent.lock ] ; then
	return
fi
pid=`cat ${session}/rtorrent.lock | awk -F: '{print($2)}' | sed "s/[^0-9]//g"`
if ps | grep -sq ${pid}.*rtorrent ; then # make sure the pid doesn't belong to another process
	kill -s INT ${pid}
fi
}

getsession() { 
session=`awk '/^[[:space:]]*session[[:space:]]*=[[:space:]]*/{print($3)}' "$config"`
echo $session
}

checkcnfg

case "$1" in
 start)
echo -n "Starting $DESC: $NAME"
d_start
echo "."
;;
 stop)
echo -n "Stopping $DESC: $NAME"
d_stop
echo "."
;;
 restart|force-reload)
echo -n "Restarting $DESC: $NAME"
d_stop
sleep 1
d_start
echo "."
;;
 *)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 1
;;
esac

exit 0 

S80lighttpd:

#!/bin/sh

prefix="/opt"
PATH=${prefix}/bin:${prefix}/sbin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=lighttpd
DAEMON=${prefix}/sbin/${NAME}
DAEMON_OPTS="-f ${prefix}/etc/lighttpd/lighttpd.conf"

test -x $DAEMON || exit 0

if [ -z "$1" ] ; then
   case `echo "$0" | sed 's:^.*/\(.*\):\1:g'` in
       S??*) rc="start" ;;
       K??*) rc="stop" ;;
       *) rc="usage" ;;
   esac
else
   rc="$1"
fi

case "$rc" in
   start)
echo "Starting web server: $NAME"
$DAEMON $DAEMON_OPTS
       ;;
   stop)
       if [ -n "`pidof $NAME`" ]; then
           echo "Stopping web server: $NAME"
           killall $NAME 2> /dev/null
       fi
       ;;
   restart)
       "$0" stop
       sleep 1
       "$0" start
       ;;
   *)  
       echo "Usage: $0 (start|stop|restart|usage)"
       ;;
esac

exit 0 

 

где копать?http://www.kolobok.us/smiles/light_skin/unknw.gif

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в этой теме...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

×
×
  • Создать...