<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Блог Александра Руденко aka ras. &#187; torrent</title>
	<atom:link href="http://ras.pl.ua/tag/torrent/feed/" rel="self" type="application/rss+xml" />
	<link>http://ras.pl.ua</link>
	<description>Заметки о себе, семье, городе, профессиональной деятельности...</description>
	<lastBuildDate>Fri, 30 Mar 2012 08:25:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Установка и настройка transmission-daemon в CentOS 6</title>
		<link>http://ras.pl.ua/install_and_configure_transmission-daemon_in_centos_6/</link>
		<comments>http://ras.pl.ua/install_and_configure_transmission-daemon_in_centos_6/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 14:30:35 +0000</pubDate>
		<dc:creator>ras</dc:creator>
				<category><![CDATA[Администрирование]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[torrent]]></category>
		<category><![CDATA[transmission]]></category>
		<category><![CDATA[transmission-daemon]]></category>

		<guid isPermaLink="false">http://ras.pl.ua/?p=272</guid>
		<description><![CDATA[По мотивам прошлой статьи &#171;Установка и настройка transmission-daemon в CentOS 5&#187;, решил написать ещё одну статью. CentOS хоть и с большим опозданием от RedHat Enterprise Linux и Scientific Linux, но всё-таки появился, пришлось переустановить дистрибутив, и адаптировать уже работавший софт к новой версии дистрибутива. Transmission, как и раньше, в CentOS с дистрибутива не поставишь&#8230; Сборка [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">По мотивам прошлой статьи &laquo;<a href="/install_and_configure_transmission-daemon_in_centos">Установка и настройка transmission-daemon в CentOS 5</a>&raquo;, решил написать ещё одну статью. CentOS хоть и с большим опозданием от RedHat Enterprise Linux и Scientific Linux, но всё-таки появился, пришлось переустановить дистрибутив, и адаптировать уже работавший софт к новой версии дистрибутива. Transmission, как и раньше, в CentOS с дистрибутива не поставишь&#8230;<span id="more-272"></span></p>
<p><strong>Сборка</strong></p>
<p style="text-align: justify;">Собирать я решил в данном случае rpm-ки из srpm-ки Fedora 14. Процесс описывать не буду, приведу ссылки на оригинал и собранные пакеты для архитектуры x86_64:</p>
<ul>
<li><a href="/pub/linux/centos/6/x86_64/transmission/transmission-2.11-2.fc14.src.rpm">transmission-2.11-2.fc14.src.rpm</a></li>
<li><a href="/pub/linux/centos/6/x86_64/transmission/transmission-2.11-2.el6.x86_64.rpm">transmission-2.11-2.el6.x86_64.rpm</a></li>
<li><a href="/pub/linux/centos/6/x86_64/transmission/transmission-cli-2.11-2.el6.x86_64.rpm">transmission-cli-2.11-2.el6.x86_64.rpm</a></li>
<li><a href="/pub/linux/centos/6/x86_64/transmission/transmission-common-2.11-2.el6.x86_64.rpm">transmission-common-2.11-2.el6.x86_64.rpm</a></li>
<li><a href="/pub/linux/centos/6/x86_64/transmission/transmission-daemon-2.11-2.el6.x86_64.rpm">transmission-daemon-2.11-2.el6.x86_64.rpm</a></li>
<li><a href="/pub/linux/centos/6/x86_64/transmission/transmission-gtk-2.11-2.el6.x86_64.rpm">transmission-gtk-2.11-2.el6.x86_64.rpm</a></li>
<li><a href="/pub/linux/centos/6/x86_64/transmission/transmission-qt-2.11-2.el6.x86_64.rpm">transmission-qt-2.11-2.el6.x86_64.rpm</a></li>
</ul>
<p><strong>Установка</strong></p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">rpm <span style="color: #660033;">-i</span> http:<span style="color: #000000; font-weight: bold;">//</span>ras.pl.ua<span style="color: #000000; font-weight: bold;">/</span>pub<span style="color: #000000; font-weight: bold;">/</span>linux<span style="color: #000000; font-weight: bold;">/</span>centos<span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">6</span><span style="color: #000000; font-weight: bold;">/</span>x86_64<span style="color: #000000; font-weight: bold;">/</span>transmission<span style="color: #000000; font-weight: bold;">/</span>transmission-common-<span style="color: #000000;">2.11</span>-<span style="color: #000000;">2</span>.el6.x86_64.rpm http:<span style="color: #000000; font-weight: bold;">//</span>ras.pl.ua<span style="color: #000000; font-weight: bold;">/</span>pub<span style="color: #000000; font-weight: bold;">/</span>linux<span style="color: #000000; font-weight: bold;">/</span>centos<span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">6</span><span style="color: #000000; font-weight: bold;">/</span>x86_64<span style="color: #000000; font-weight: bold;">/</span>transmission<span style="color: #000000; font-weight: bold;">/</span>transmission-daemon-<span style="color: #000000;">2.11</span>-<span style="color: #000000;">2</span>.el6.x86_64.rpm</div></div>
<p>Настройка web-интерфейса для httpd, файл <u>/etc/httpd/conf/httpd.conf</u>:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Alias /transmission/web /usr/share/transmission/web<br />
RewriteEngine on<br />
RewriteRule /transmission[/]?$ /transmission/web [R=permanent]<br />
ProxyPass /transmission http://127.0.0.1:9091/transmission<br />
ProxyPassReverse /transmission http://127.0.0.1:9091/transmission<br />
&lt;Location /transmission&gt;<br />
&nbsp; Options None<br />
&nbsp; Order allow,deny<br />
&nbsp; Allow from 127.0.0.1<br />
&nbsp; &lt;IfModule expires_module&gt;<br />
&nbsp; &nbsp; ExpiresActive On<br />
&nbsp; &nbsp; ExpiresByType image/gif A43200<br />
&nbsp; &nbsp; ExpiresByType image/png A43200<br />
&nbsp; &nbsp; ExpiresByType application/javascript A43200<br />
&nbsp; &nbsp; ExpiresByType text/css A43200<br />
&nbsp; &lt;/IfModule&gt;<br />
&lt;/Location&gt;</div></div>
<p style="text-align: justify;">В &#171;Allow from&#187; укажите IP, с которого вы хотите получить доступ, в своём случае, я использовал &#171;Authtype Basic&#187;, т. е. захожу по паролю. Перезапуск httpd (если возникли ошибки, смотрим каких модулей не хватает, подправляем файл конфигурации):</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">service httpd restart</div></div>
<p>Настройка параметров запуска, файл <u>/etc/sysconfig/transmission-daemon</u>:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">TRANSMISSION_HOME=&quot;/var/lib/transmission&quot; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
DAEMON_USER=&quot;root&quot; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
DAEMON_ARGS=&quot;--no-auth --allowed 127.0.0.1 --config-dir $TRANSMISSION_HOME/.config/transmission-daemon&quot;</div></div>
<p>Добавление в автозапуск:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">chkconfig transmission-daemon on</div></div>
<p>Запуск:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">service transmission-daemon start</div></div>
<p>Если всё выполнено правильно, демон запущен и работает.</p>
<p><strong>Настройка</strong></p>
<p style="text-align: justify;">Теперь нужно настроить демон, основные настройки доступны с web-интерфейса. Нужно открыть в браузере <u>http://ваш-web-сервер/transmission</u>, слева внизу есть кнопка настроек, выбрать Preferences. Указать путь куда будут сохраняться файлы, номер порта и не забыть открыть его в фаерволле для входящих соединений. На второй вкладке указать ограничение скорости. Всё, можно работать, добавлять torrent-файлы, наблюдать процесс скачивания.</p>
<p style="text-align: justify;">Все настройки сохраняются в каталоге <u>/var/lib/transmission/.config/transmission-daemon</u>. Там же хранятся torrent-файлы и информация о текущих загрузках.</p>
<p><strong>Ссылки</strong></p>
<ul>
<li><a href="http://www.transmissionbt.com/" target="_blank">www.transmissionbt.com</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://ras.pl.ua/install_and_configure_transmission-daemon_in_centos_6/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Установка и настройка transmission-daemon в CentOS 5</title>
		<link>http://ras.pl.ua/install_and_configure_transmission-daemon_in_centos/</link>
		<comments>http://ras.pl.ua/install_and_configure_transmission-daemon_in_centos/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 11:57:59 +0000</pubDate>
		<dc:creator>ras</dc:creator>
				<category><![CDATA[Программное обеспечение]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[torrent]]></category>
		<category><![CDATA[transmission]]></category>
		<category><![CDATA[transmission-daemon]]></category>

		<guid isPermaLink="false">http://ras.pl.ua/?p=150</guid>
		<description><![CDATA[Есть у меня домашний Linux-сервер под CentOS, выполняющий роль шлюза в сеть Интернет, файлового хранилища с FTP и Samba, и другие функции, необходимые системному администратору, которые проблематично реализовать на базе аппаратного маршрутизатора. Вот появилась идея установить и демон torrent-клиент на данный сервер, чтобы качал себе и раздавал необходимые мне файлы. Раньше у меня был опыт [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Есть у меня домашний Linux-сервер под CentOS, выполняющий роль шлюза в сеть Интернет, файлового хранилища с FTP и Samba, и другие функции, необходимые системному администратору, которые проблематично реализовать на базе аппаратного маршрутизатора. Вот появилась идея установить и демон torrent-клиент на данный сервер, чтобы качал себе и раздавал необходимые мне файлы.<span id="more-150"></span></p>
<p style="text-align: justify;">Раньше у меня был опыт работы с <a href="http://mldonkey.sourceforge.net/" target="_blank">MLDonkey</a>, но вспоминая его ужасный web-интерфейс и монстроидальность &#8212; отказался сразу. Далее взгляд пал на <a href="http://libtorrent.rakshasa.no/" target="_blank">rTorrent</a>, знакомый его использовал на маршрутизаторе D-Link DIR-320 с модифицированной прошивкой от Олега. Очень порадовал красивый web-интерфейс, похожий на <a href="http://www.utorrent.com/" target="_blank">µTorrent</a>. Но, т. к. это всё-таки не демон, а консольное приложение, глянув на метод его запуска и связывания с web-интерфейсом &#8212; решено было отказаться и от него.</p>
<p style="text-align: justify;">В итоге выбор пал на <a href="http://www.transmissionbt.com/" target="_blank">Transmission</a>, опять же, тот же знакомый уже его успешно использовал, так же выяснилось, что данный клиент имеет демон для запуска без GUI. Сначала была установлена и настроена старая версия из репозитария EPEL transmission-1.34-1.el5.x86_64, но работать с данной версией было крайне неприятно, многое не поддерживалось, GUI-клиент не совсем корректно работал с данной версией, не была доступна часть функций. Собрать новую версию обычным способом не получалось из-за того, что в CentOS используются более старые версии нужных для сборки transmission библиотек. Ещё одним фактором использования новой версии является поддержка ей списка трекеров. На этом заканчивается лирическое отступление, опишу сборку и настройку.</p>
<p><strong>Сборка</strong></p>
<p>Установка необходимых для сборки пакетов:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #c20cb9; font-weight: bold;">yum install</span> <span style="color: #c20cb9; font-weight: bold;">gcc</span> gcc-c++ <span style="color: #c20cb9; font-weight: bold;">m4</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">automake</span> libtool <span style="color: #c20cb9; font-weight: bold;">gettext</span> openssl-devel</div></div>
<p>Подготовка каталога, получение исходного кода:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>local<span style="color: #000000; font-weight: bold;">/</span>src<br />
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> transmission<br />
<span style="color: #7a0874; font-weight: bold;">cd</span> transmission<br />
<br />
<span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>pkgconfig.freedesktop.org<span style="color: #000000; font-weight: bold;">/</span>releases<span style="color: #000000; font-weight: bold;">/</span>pkg-config-<span style="color: #000000;">0.23</span>.tar.gz<br />
<span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>ftp.gnome.org<span style="color: #000000; font-weight: bold;">/</span>pub<span style="color: #000000; font-weight: bold;">/</span>gnome<span style="color: #000000; font-weight: bold;">/</span>sources<span style="color: #000000; font-weight: bold;">/</span>intltool<span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">0.40</span><span style="color: #000000; font-weight: bold;">/</span>intltool-0.40.6.tar.gz<br />
<span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>curl.haxx.se<span style="color: #000000; font-weight: bold;">/</span>download<span style="color: #000000; font-weight: bold;">/</span>curl-7.19.7.tar.gz<br />
<span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>mirrors.m0k.org<span style="color: #000000; font-weight: bold;">/</span>transmission<span style="color: #000000; font-weight: bold;">/</span>files<span style="color: #000000; font-weight: bold;">/</span>transmission-<span style="color: #000000;">1.80</span>.tar.bz2<br />
<br />
<span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-xzfv</span> pkg-config-<span style="color: #000000;">0.23</span>.tar.gz<br />
<span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-xzfv</span> intltool-0.40.6.tar.gz<br />
<span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-xzfv</span> curl-7.19.7.tar.gz<br />
<span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-xjfv</span> transmission-<span style="color: #000000;">1.80</span>.tar.bz2</div></div>
<p>Сборка:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">cd</span> pkg-config-<span style="color: #000000;">0.23</span><br />
.<span style="color: #000000; font-weight: bold;">/</span>configure<br />
<span style="color: #c20cb9; font-weight: bold;">make</span><br />
<span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span><br />
<br />
<span style="color: #7a0874; font-weight: bold;">cd</span> ..<span style="color: #000000; font-weight: bold;">/</span>intltool-0.40.6<br />
.<span style="color: #000000; font-weight: bold;">/</span>configure<br />
<span style="color: #c20cb9; font-weight: bold;">make</span><br />
<span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span><br />
<br />
<span style="color: #7a0874; font-weight: bold;">cd</span> ..<span style="color: #000000; font-weight: bold;">/</span>curl-7.19.7<br />
.<span style="color: #000000; font-weight: bold;">/</span>configure<br />
<span style="color: #c20cb9; font-weight: bold;">make</span><br />
<span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span><br />
<br />
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">PKG_CONFIG_PATH</span>=<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>local<span style="color: #000000; font-weight: bold;">/</span>lib<span style="color: #000000; font-weight: bold;">/</span>pkgconfig<br />
<span style="color: #7a0874; font-weight: bold;">cd</span> ..<span style="color: #000000; font-weight: bold;">/</span>transmission-<span style="color: #000000;">1.80</span><br />
.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--enable-daemon</span><br />
<span style="color: #c20cb9; font-weight: bold;">make</span><br />
<span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></div></div>
<p>Настройка web-интерфейса для httpd, файл <u>/etc/httpd/conf/httpd.conf</u>:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Alias /transmission/web /usr/local/share/transmission/web<br />
RewriteEngine on<br />
RewriteRule /transmission[/]?$ /transmission/web [R=permanent]<br />
ProxyPass /transmission http://127.0.0.1:9091/transmission<br />
ProxyPassReverse /transmission http://127.0.0.1:9091/transmission<br />
&lt;Location /transmission&gt;<br />
&nbsp; Options None<br />
&nbsp; Order allow,deny<br />
&nbsp; Allow from 127.0.0.1<br />
&nbsp; &lt;IfModule expires_module&gt;<br />
&nbsp; &nbsp; ExpiresActive On<br />
&nbsp; &nbsp; ExpiresByType image/gif A43200<br />
&nbsp; &nbsp; ExpiresByType image/png A43200<br />
&nbsp; &nbsp; ExpiresByType application/javascript A43200<br />
&nbsp; &nbsp; ExpiresByType text/css A43200<br />
&nbsp; &lt;/IfModule&gt;<br />
&lt;/Location&gt;</div></div>
<p>В &#171;Allow from&#187; укажите IP, с которого вы хотите получить доступ, в своём случае, я использовал &#171;Authtype Basic&#187;, т. е. захожу по паролю. Перезапуск httpd (если возникли ошибки, смотрим каких модулей не хватает, подправляем файл конфигурации):</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">service httpd restart</div></div>
<p>Далее я столкнулся с тем, что не нашёл нормального init-скрипта, написал свой. Он ещё находится в стадии тестирования, но как показала практика работает нормально, запуск демона будет от пользователя root. Да, знаю что это не правильно, но пока так <u>/etc/rc.d/init.d/transmission</u>:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">#!/bin/sh</span><br />
<span style="color: #666666; font-style: italic;">#</span><br />
<span style="color: #666666; font-style: italic;"># transmission Start/Stop the transmission-daemon daemon.</span><br />
<span style="color: #666666; font-style: italic;">#</span><br />
<span style="color: #666666; font-style: italic;"># chkconfig: 2345 99 01</span><br />
<span style="color: #666666; font-style: italic;"># description: transmission-daemon is a daemon-based Transmission session</span><br />
<span style="color: #666666; font-style: italic;">#              that can be controlled via RPC commands from</span><br />
<span style="color: #666666; font-style: italic;">#              transmission’s web interface or transmission-remote</span><br />
<span style="color: #666666; font-style: italic;"># processname: transmission-daemon</span><br />
<span style="color: #666666; font-style: italic;"># pidfile: /var/run/transmission.pid</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Source function library.</span><br />
. <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>functions<br />
<br />
<span style="color: #007800;">options</span>=<span style="color: #ff0000;">'--allowed 127.0.0.1 --no-auth'</span><br />
<br />
<span style="color: #007800;">processname</span>=<span style="color: #ff0000;">'/usr/local/bin/transmission-daemon'</span><br />
<span style="color: #007800;">lockfile</span>=<span style="color: #ff0000;">'/var/lock/subsys/transmission'</span><br />
<span style="color: #007800;">pidfile</span>=<span style="color: #ff0000;">'/var/run/transmission.pid'</span><br />
<span style="color: #007800;">user</span>=<span style="color: #ff0000;">'root'</span><br />
<span style="color: #007800;">home</span>=<span style="color: #000000; font-weight: bold;">`/</span>bin<span style="color: #000000; font-weight: bold;">/</span><span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #660033;">-E</span> <span style="color: #ff0000;">&quot;^<span style="color: #007800;">$user</span>:&quot;</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span><span style="color: #c20cb9; font-weight: bold;">passwd</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span><span style="color: #c20cb9; font-weight: bold;">cut</span> <span style="color: #660033;">-d</span> : <span style="color: #660033;">-f</span> <span style="color: #000000;">6</span><span style="color: #000000; font-weight: bold;">`</span><br />
<br />
start<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">HOME</span>=<span style="color: #007800;">$home</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-n</span> $<span style="color: #ff0000;">&quot;Starting <span style="color: #007800;">$processname</span>: &quot;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-e</span> <span style="color: #007800;">$lockfile</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-e</span> <span style="color: #007800;">$pidfile</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-e</span> <span style="color: #000000; font-weight: bold;">/</span>proc<span style="color: #000000; font-weight: bold;">/`</span><span style="color: #c20cb9; font-weight: bold;">cat</span> <span style="color: #007800;">$pidfile</span><span style="color: #000000; font-weight: bold;">`</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-n</span> $<span style="color: #ff0000;">&quot;cannot start <span style="color: #007800;">$processname</span>: <span style="color: #007800;">$processname</span> is already running.&quot;</span><br />
&nbsp; &nbsp; &nbsp; failure $<span style="color: #ff0000;">&quot;cannot start <span style="color: #007800;">$processname</span>: <span style="color: #007800;">$processname</span> already running.&quot;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">return</span> <span style="color: #000000;">1</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">fi</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">fi</span><br />
&nbsp; daemon <span style="color: #007800;">$processname</span> <span style="color: #007800;">$options</span><br />
&nbsp; <span style="color: #007800;">RETVAL</span>=<span style="color: #007800;">$?</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$RETVAL</span> <span style="color: #660033;">-eq</span> <span style="color: #000000;">0</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">touch</span> <span style="color: #007800;">$lockfile</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$RETVAL</span> <span style="color: #660033;">-eq</span> <span style="color: #000000;">0</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">ps</span> ax <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #660033;">-w</span> <span style="color: #007800;">$processname</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #660033;">-v</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">awk</span> <span style="color: #ff0000;">'{print($1)}'</span> <span style="color: #000000; font-weight: bold;">&gt;</span> <span style="color: #007800;">$pidfile</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">return</span> <span style="color: #007800;">$RETVAL</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
<br />
stop<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">HOME</span>=<span style="color: #007800;">$home</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-n</span> $<span style="color: #ff0000;">&quot;Stopping <span style="color: #007800;">$processname</span>: &quot;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #000000; font-weight: bold;">!</span> <span style="color: #660033;">-e</span> <span style="color: #007800;">$lockfile</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-n</span> $<span style="color: #ff0000;">&quot;cannot stop <span style="color: #007800;">$processname</span>: <span style="color: #007800;">$processname</span> is not running.&quot;</span><br />
&nbsp; &nbsp; failure $<span style="color: #ff0000;">&quot;cannot stop <span style="color: #007800;">$processname</span>: <span style="color: #007800;">$processname</span> is not running.&quot;</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">return</span> <span style="color: #000000;">1</span>;<br />
&nbsp; <span style="color: #000000; font-weight: bold;">fi</span><br />
&nbsp; killproc <span style="color: #007800;">$processname</span><br />
&nbsp; <span style="color: #007800;">RETVAL</span>=<span style="color: #007800;">$?</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$RETVAL</span> <span style="color: #660033;">-eq</span> <span style="color: #000000;">0</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-f</span> <span style="color: #007800;">$lockfile</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$RETVAL</span> <span style="color: #660033;">-eq</span> <span style="color: #000000;">0</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-f</span> <span style="color: #007800;">$pidfile</span><br />
&nbsp; <span style="color: #7a0874; font-weight: bold;">return</span> <span style="color: #007800;">$RETVAL</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">case</span> <span style="color: #007800;">$1</span> <span style="color: #000000; font-weight: bold;">in</span><br />
&nbsp; start<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; start<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
&nbsp; stop<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; stop<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
&nbsp; restart<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; stop<br />
&nbsp; &nbsp; start<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
&nbsp; status<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; status <span style="color: #007800;">$processname</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Usage: $0 start|stop|restart|status&quot;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
<span style="color: #000000; font-weight: bold;">esac</span></div></div>
<p>Установка прав на запуск:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #c20cb9; font-weight: bold;">chmod</span> <span style="color: #000000;">755</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>rc.d<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>transmission</div></div>
<p>Добавление в автозапуск:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">chkconfig transmission on</div></div>
<p>Запуск:</p>
<div class="codecolorer-container bash default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">service transmission start</div></div>
<p>Если всё выполнено правильно, демон запущен и работает.</p>
<p><strong>Настройка</strong></p>
<p style="text-align: justify;">Теперь нужно настроить демон, основные настройки доступны с web-интерфейса. Нужно открыть в браузере <u>http://ваш-web-сервер/transmission</u>, слева внизу есть кнопка настроек, выбрать Preferences. Указать путь куда будут сохраняться файлы, номер порта и не забыть открыть его в фаерволле для входящих соединений. На второй вкладке указать ограничение скорости. Всё, можно работать, добавлять torrent-файлы, наблюдать процесс скачивания.</p>
<p style="text-align: justify;">Все настройки сохраняются в каталоге <u>/root/.config/transmission-daemon</u>. Там же хранятся torrent-файлы и информация о текущих загрузках.</p>
<p style="text-align: justify;">Ещё я столкнулся с тем, что со временем демон начинает отъедать много ресурсов процессора, ест память, перезапуск помогает. Поэтому небольшой костыль в <u>/etc/crontab</u>:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">05 3 * * * root /etc/rc.d/init.d/transmission restart &gt;/dev/null 2&gt;&amp;1</div></div>
<p><strong>GUI</strong></p>
<p style="text-align: justify;">Есть неплохой GUI-интерфейс для transmission-daemon кроме родного &#8212; <a href="http://code.google.com/p/transmisson-remote-gui/" target="_blank">Transmission Remote GUI</a>. Данный клиент является кроссплатформенным, есть сборки как под Linux, так и под Windows, написан на <a href="http://www.lazarus.freepascal.org/" target="_blank">Lazarus</a>. Для того, чтобы данный клиент мог подключиться к демону &#8212; я добавил в скрипт запуска, строку параметров после 127.0.0.1, через запятую &#8212; IP-адрес домашнего компьютера.</p>
<p><strong>Итог</strong></p>
<p style="text-align: justify;">В результате проделанной работы я получил довольно удобную систему: демон качает, по самбе получаю доступ к скачанным файлам. При работе с загрузками используется довольно удобный GUI.</p>
<p style="text-align: justify;">Готов выслушать замечания, ваши рекомендации по улучшению скрипта запуска, дополнения, уточнения материала данной статьи.</p>
<p><strong>Ссылки</strong></p>
<ul>
<li><a href="http://www.transmissionbt.com/" target="_blank">www.transmissionbt.com</a></li>
<li><a href="http://trac.transmissionbt.com/wiki/Building" target="_blank">trac.transmissionbt.com/wiki/Building</a></li>
<li><a href="http://code.google.com/p/transmisson-remote-gui/" target="_blank">code.google.com/p/transmisson-remote-gui</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://ras.pl.ua/install_and_configure_transmission-daemon_in_centos/feed/</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
	</channel>
</rss>

