На сегодняшний день торренты являются одним из основных способов получения контента. Как же создать торрент Linux-пользователям? Опишу один из способов.
Как клиент я использовал Тransmission, который может работать в качестве службы и по моему мнению лучше всего подходит для работы на сервере.
Главное различие между web- и настольными версиями Transmission - то, что в первых нет графических средств для создания собственного торрента. Для этого нужно пользоваться утилитой командной строки transmission-create, которая входит в состав transmission-daemon. Чтобы создать торрент, кроме файлов, которые будут включены в раздачу, вам понадобится трекер BitTorrent. Это сервер, который помогает подключиться друг к другу пользователям, или пирам, которые раздают содержимое торрента. Для этого воспользуемся трекером с LinuxTracker.org, популярного сайта для выкладывания дистрибутивов: http://linuxtracker.org:2710/announce.
$ sudo transmission-create -o somelinux.torrent -t http://linuxtracker.org:2710/announce/path/to/somedistro.iso
Эта команда создаст файл somelinux.torrent, который организует раздачу файла somedistro.iso. Чтобы раздать несколько файлов, при создании торрента укажите на каталог, а не на отдельный файл. Создав файл.torrent, передайте его клиенту Transmission с web-интерфейсом, чтобы начать раздачу.
Установим торрент-сервер
Торренты - предпочтительный способ распространения контента с открытым исходным кодом. Таким образом распространяются большинство дистрибутивов Linux: либо на собственных трекерах, либо на linuxtracker.org. В Linux есть множество торрент-клиентов. Transmission отличается от других (на мой взгляд) удобным web-интерфейсом, который по интерфейсу напоминает рабочий стол. Рекомендую установить Transmission в Raspbian, таким образом, вы сможете открыть его через браузер на любом компьютере сети для добавления, мониторинга и управления торрентами. Для установки Transmission подключитесь к RPi через SSH и дайте команду:
$ sudo apt-get install transmission-daemon
Этой командой вы установите и запустите демона Transmission. Но прежде чем вы сможете загружать торренты, демона нужно настроить. Перед внесением любых изменений в файл настройки Transmission проследите за тем, чтобы демон не был запущен:
$ sudo service transmission-daemon stop
Также добавьте пользователя Transmission (debian-transmission), debian-transmission создается автоматически при установке демона, в нашу группу users:
$ sudo usermod -a -G users debian-transmission
После этого создайте на USB-диске публичный каталог, в который мы загрузим торренты. Сначала создайте на USB-диске каталог и назначьте его владельцем пользователя Transmission:
$ sudo mkdir /mnt/usb/public $ sudo chown debian-tranmission /mnt/usb/public
Теперь добавьте этот ресурс в файл настройки Samba:
[Public] comment=Public share for torrents browseable=yes path=/mnt/usb/public public=yes writeable=yes guest ok=yes
Теперь нужно перезапустить Samba, после чего каталог будет доступен всем. Общий ресурс создан, теперь пора настроить демона Transmission. Параметры этого демона задаются в файле /etc/transmission-daemon/settings.json. Нам необходимо открыть этот файл в nano и в строке
"rpc-whitelist-enabled": true
измените параметр на
"rpc-whitelist-enabled": false
для того чтобы могли подключаться пользователи со всех компьютеров. После этого укажите каталог загрузки:
"download-dir": "/mnt/usb/public/downloads/Complete"
Незавершенные закачки можно отделить от остальных файлов, разместив их в отдельном каталоге. Включите эту возможность, изменив в строке
"incomplete-dir-enabled": false
параметр false на true и задайте каталог, где будут размещаться незавершенные закачки:
"incomplete-dir": "/mnt/usb/public/downloads/Incomplete"
Проверка подлинности пользователей
Раз мы сделали владельцем каталога /mnt/usb/public пользователя Transmission, то он и будет автоматически создавать все новые каталоги. По умолчанию все загружаемые торренты являются публичными, однако можно сделать так, чтобы не все пользователи могли выкладывать торренты для загрузки. Как это сделать? Очень просто - необходимо заставить пользователей пройти процедуру аутентификации для доступа в Transmission. Для этого необходимо cтроку
"rpc-authentication-required": false
заменить на
"rpc-authentication-required": true
Затем задайте пароль в
"rpc-password": "<password>"
Введенный в этом параметре пароль Transmission автоматически зашифрует. Теперь сохраните файл и запустите демона Transmission командой
$ sudo service transmission-daemon start
Александр БОБРОВ
Горячие темы