03.09.12

Помилки rtorrent

#summary Детальное описание сообщений об ошибках.
== Детальное описание сообщений об ошибках ==

 * *Ошибка добавления закачки.*

 Ошибка может возникнуть при попытке добавления нового торрента на скачку. Означает она то, что ruTorrent не смог корректно обработать ссылку на торрент файл, или сам торрент файл. Причины могут быть разнообразные - например, Вы попытались добавить ссылку на торрент с трекера, который требует авторизации. Или торрент файл побился в процессе скачки.   

 * *PHP модуль PCRE не установлен. ruTorrent не будет работать.*

 Ошибка специфична для систем на базе BSD, в части которых модуль PCRE не поставляется вместе с php по умолчанию. Способ решения очевиден - доставьте необходимый модуль.

 * *Веб сервер должен иметь доступ на чтение к директории session rTorrent.*

 Ну таки да, должен, но не имеет. Либо проблемы с правами пользователя веб-сервера, либо у php ограничен набор директорий для доступа (см. переменную open_basedir в php.ini). Возможный (но, мягко говоря, не самый лучший) вариант решения - перенести директорию session rTorrent (поправив его конф. файл) непосредственно в директорию установки ruTorrent, и сказать ей chmod -R 0777. Что, скорее всего, обеспечит работоспособность (попутно организовав дырку в системе безопасности).
 
 * *rTorrent должен иметь доступ на чтение/запись/выполнение к директории settings.*
 * *rTorrent должен иметь доступ на чтение/выполнение к файлу ./test.sh*
 * *rTorrent должен иметь доступ на чтение/выполнение к директории torrents. Вы не сможете добавлять закачки через ruTorrent.*
 * *Веб сервер не имеет доступа к директории settings на чтение/запись/выполнение. ruTorrent не сможет сохранять свои настройки.*
 * *Веб сервер не имеет доступа к директории torrents на чтение/запись/выполнение. Вы не сможете добавлять закачки через ruTorrent.*

 Данная группа ошибок связана, скорее всего, с тем, что Вы некорректно провели процедуру установки ruTorrent. Например, развернули архив не из под пользователя веб-сервера.

 * *Нет связи с rTorrent. Проверьте, запущен ли он. Проверьте, что параметры $scgi_port и $scgi_host в файле config.php совпадают со значением переменной scgi_port в файле конфигурации rTorrent.*

 Чаще всего это означает, что rTorrent упал или не запущен. Если же несмотря на выдачу данной ошибки Вы видите список закачек в ruTorrent - самое время прислушаться к совету, данному в сообщении об ошибке. Что-то не так с конфигурационным файлом ruTorrent, да.

 * *rTorrent скомпилирован с некорректной версией библиотеки xmlrpc-c, без поддержки 8-байтовых целых. Версия библиотеки должна быть >= 1.11. Часть функциональности будет недоступна.*

 Собственно, в самом сообщении об ошибке все уже рассказано. Ну не имеют старые версии xmlrpc-c поддержки длинных целых. Как результат - числа, большие 2Г будут показываться как отрицательные. Ну и диалог "Настройки" корректно работать не будет. Замечу - *недостаточно* простого наличия в системе библиотеки xmlrpc-c версии >= 1.11. Нужно, чтобы rtorrent был именно с ней *скомпилирован*.

 * *Плагин ххх: веб-серверу не доступна внешняя программа (имя программы)*

 Упомянутая программа требуется для работы данному плагину, но недоступна пользователю, из под которого работает веб-сервер. Либо данной программы вообще нет (и надо ее поставить), либо путь к программе отсутствует в переменной окружения PATH пользователя веб-сервера (в этом случае нужно либо поменять PATH, либо обратиться к файлу конфигурации плагина, как правило, там есть возможность явно указать полный путь к данной программе). Особняком стоит ситуация, когда программа в системе вообще-то есть, но веб-сервер выполняется в chroot окружении, и программа ему, понятно, недоступна.

 * *Плагин ххх: пользователю rTorrent не доступен интерпретатор php. Плагин не будет работать.*

 Причины в целом аналогичны предыдущей ошибке, за исключением того, что речь идет не о пользователе веб-сервера, а о пользователе, из под которого выполняется rTorrent. Добавлю - не стоит думать, что раз у Вас вообще php работает, то и php интерпретатор автоматом в системе есть. Необходимо наличие пакета php-cli, веб-сервер же может использовать php-fcgi, например, в состав которого собственно интерпретатор не входит.