Comments 79
Ну и по традиции — спрашивайте, критикуйте… :)
Первой частью статьи вы уменьшили количество потенциальных дебианщиков и убунтовщиков, да и линуксоидов в принципе. С глюками через пару недель после make install справятся далеко не все из них, спасибо Вам огромное за продвижение винды в массы.
НИКОГДА, МЛЯ, НИКОГДА НЕ СИДИТЕ ПОД РУТОМ И НЕ ЮЗАЙТЕ MAKE INSTALL В ПАКЕТНЫХ ДИСТРИБУТИВАХ! НЕУЖЕЛИ ЭТО СЛОЖНО 1!!! РАЗ ЗАПОМНИТЬ!?
ну а по поводу статьи:
sudo apt-get -t sid install transmission, не думаю что 1.91-1 прям таки сильно устаревшая версия, требующая сборки.
НИКОГДА, МЛЯ, НИКОГДА НЕ СИДИТЕ ПОД РУТОМ И НЕ ЮЗАЙТЕ MAKE INSTALL В ПАКЕТНЫХ ДИСТРИБУТИВАХ! НЕУЖЕЛИ ЭТО СЛОЖНО 1!!! РАЗ ЗАПОМНИТЬ!?
ну а по поводу статьи:
sudo apt-get -t sid install transmission, не думаю что 1.91-1 прям таки сильно устаревшая версия, требующая сборки.
Скажу больше — даже в testing сейчас уже 1.91. А если прямо по самое немогу хочется собрать из исходников — может лучше посмотреть в сторону Gentoo???
Gentoo надо еще умудрится поставить…
В генту тоже софт малёха запоздавший. Тогда уж лучше ArchLinux, популярные свежие пакеты появляются там буквально спустя пару часов после выхода. Ядро обновляется спустя пару недель.
Ну а в генту сейчас ядро 2.6.31 (вчера ставил), когда в арче, если не ошибаюсь месяц, может больше уже 2.6.32.
Ну а в генту сейчас ядро 2.6.31 (вчера ставил), когда в арче, если не ошибаюсь месяц, может больше уже 2.6.32.
Жду от вас инструкцию идеологически верного способа установки последней версии Transmission в стабильной версии Debian.
Может я что-то и не так делал, но серия команд:
мало того что понакачала зависимостей на больше чем 50 МБ и порядка 200 пакетов, так еще и не привела к желаемому результату.
Нет, я не отрицаю, возможно я где-то ошибся, ну так научите. А громко говорить каждый может.
Может я что-то и не так делал, но серия команд:
# apt-get install devscripts
# apt-get build-dep transmission
$ apt-get source transmission
$ cd transmission-*
$ uupdate --upstream-version 1.92 ../transmission-1.92.tar.bz2
$ cd ../transmission-1.92
$ debuild -i -us -uc
$ cd ../
# dpkg -i transmission-*.deb
мало того что понакачала зависимостей на больше чем 50 МБ и порядка 200 пакетов, так еще и не привела к желаемому результату.
Нет, я не отрицаю, возможно я где-то ошибся, ну так научите. А громко говорить каждый может.
Превращаете файловую систему в неуправляемое нечто, чреватое конфликтами при обновлениях.
А можно подробнее?
Я не стебусь, просто я всегда считал
$ ./configure
$ make
# make install
стандартом де-факто установки из исходников.
Если не make install, то как тогда устанавливать софт не включенный в репозитории?
Я не стебусь, просто я всегда считал
$ ./configure
$ make
# make install
стандартом де-факто установки из исходников.
Если не make install, то как тогда устанавливать софт не включенный в репозитории?
это один из методов установки из исходников и приводится в качестве примера типа Hello World в статьях для начинающих, ибо работает везде и не требует вдавания в подробности RPM/DEB, но это вовсе не значит что метод корректный, так же как и Hello World во многих языках просто мешает понять идеологию и философию парадигмы программирования, но тем не менее это единственный вариант, знакомый всем и который можно стартануть «сразу».
make install годится для сорцовых дистрибутивов без контроля зависимостей, в которых вы давно варитесь и знаете каждую библиотеку.
1) весь собираемый софт в бинарных дистрибутивах надо собирать с префиксом /usr/local, так как /usr/bin находится под контролем пакетного менеджера и изменение любого файла тут может повлиять на работу системы. К примеру удалите или перезапишете какую-нибудь библиотеку и менеджер не сможет ее обновить сказав «не могу поставить, так как файл уже имеется в таком пакете» или «не совпадает контрольная сумма, хз что делать, попробуйте --force на свой страх и риск». /usr/local создан специально для ваших попыток изменить систему в обход апстрима
2) далеко не все разработчики заботятся о правильной настройке мейкфайлов и make install в итоге может нафигачить много мусора, а make uninstall его не удалит и до хвостов Вы уже никак не доберетесь. К тому же для make uninstall придется либо хранить исходники, либо помнить все ключи с которыми собирали, иначене удалить, согласитесь — банально неудобно.
3) поискать уже собранный пакет, можно от ubuntu, системы в большинстве случаев совместимы, иногда можно поправить имена зависимостей в пакете просто, если вдруг либа та же, но переименована. — Это самый «безболезненный» метод, пакет, как правило, протестирован и грамотно собран. О том как это сделать смотрите у меня в блоге, там был пост на тему сборки пакета из собственных исходников, в нем есть полная структура и описание что где править.
4) можно собрать пакет с помощью checkinstall, самый просто способ. Он запускает make install в темп папку, запоминает что куда поставилось, как настроилось и т.д. и создает на основе полученных данных deb пакет, после чего зачищает все что сделал при временной установке. Тут совместимость собранных исходников с версиями библиотек в системе на вашей совести, это именно вариант make install только «корректный» для пакетного менеджера.
5) взять руководство по сборке deb/rpm пакета для своего дистрибутива, как правило оно довольно толстое и на первых порах вызовет вопросы и непонимания, но после нескольких собранных пакетов вольетесь и сможете рулить ими как родными.
от себя могу варианты 3 и 4 рекомендовать как самые быстрые и простые.
make install годится для сорцовых дистрибутивов без контроля зависимостей, в которых вы давно варитесь и знаете каждую библиотеку.
1) весь собираемый софт в бинарных дистрибутивах надо собирать с префиксом /usr/local, так как /usr/bin находится под контролем пакетного менеджера и изменение любого файла тут может повлиять на работу системы. К примеру удалите или перезапишете какую-нибудь библиотеку и менеджер не сможет ее обновить сказав «не могу поставить, так как файл уже имеется в таком пакете» или «не совпадает контрольная сумма, хз что делать, попробуйте --force на свой страх и риск». /usr/local создан специально для ваших попыток изменить систему в обход апстрима
2) далеко не все разработчики заботятся о правильной настройке мейкфайлов и make install в итоге может нафигачить много мусора, а make uninstall его не удалит и до хвостов Вы уже никак не доберетесь. К тому же для make uninstall придется либо хранить исходники, либо помнить все ключи с которыми собирали, иначене удалить, согласитесь — банально неудобно.
3) поискать уже собранный пакет, можно от ubuntu, системы в большинстве случаев совместимы, иногда можно поправить имена зависимостей в пакете просто, если вдруг либа та же, но переименована. — Это самый «безболезненный» метод, пакет, как правило, протестирован и грамотно собран. О том как это сделать смотрите у меня в блоге, там был пост на тему сборки пакета из собственных исходников, в нем есть полная структура и описание что где править.
4) можно собрать пакет с помощью checkinstall, самый просто способ. Он запускает make install в темп папку, запоминает что куда поставилось, как настроилось и т.д. и создает на основе полученных данных deb пакет, после чего зачищает все что сделал при временной установке. Тут совместимость собранных исходников с версиями библиотек в системе на вашей совести, это именно вариант make install только «корректный» для пакетного менеджера.
5) взять руководство по сборке deb/rpm пакета для своего дистрибутива, как правило оно довольно толстое и на первых порах вызовет вопросы и непонимания, но после нескольких собранных пакетов вольетесь и сможете рулить ими как родными.
от себя могу варианты 3 и 4 рекомендовать как самые быстрые и простые.
в пункте 1 не /usr/bin, а /usr/* кроме /usr/local, описка. В мейнстриме нету пакетов, ставящих что-то в локал, это юзерский каталог.
Пожалуй да, 4 вариант — наиболее удобен.
Т.к. все же попадается софт, отсутствующий в репозиториях. Например code.google.com/p/madwimax/ я так и не нашел.
Т.к. все же попадается софт, отсутствующий в репозиториях. Например code.google.com/p/madwimax/ я так и не нашел.
facepalm.jpg
apt-cache search молчит как рыба=\
apt-cache search молчит как рыба=\
babl@localhost:~$ apt-cache search madwimax
madwimax — драйвер для оборудования mWiMAX на основе чипа Samsung CMC-730
о_О
madwimax — драйвер для оборудования mWiMAX на основе чипа Samsung CMC-730
о_О
$ apt-cache search wimax
firmware-intelwimax — Binary firmware for Intel WiMAX Connection
И все.
А что у вас выводит cat /etc/apt/sources.list.d/*?
У меня вот это:
$ cat /etc/apt/sources.list.d/*
deb ftp.debian.org/debian/ stable main contrib non-free
deb-src ftp.debian.org/debian/ stable main contrib non-free
deb www.debian-multimedia.org/ sid main
deb repos.eeebuntu.org/ eb4 main non-free contrib
deb repos.eeebuntu.org/ apptesting main non-free contrib
# This file makes sure that Opera Browser is kept up-to-date
# as part of regular system upgrades
deb deb.opera.com/opera/ stable non-free
# The line above will make sure you get all final public releases.
# Uncomment the following line if you want to get alpha and beta
# releases, too.
# deb deb.opera.com/opera-beta/ stable non-free
firmware-intelwimax — Binary firmware for Intel WiMAX Connection
И все.
А что у вас выводит cat /etc/apt/sources.list.d/*?
У меня вот это:
$ cat /etc/apt/sources.list.d/*
deb ftp.debian.org/debian/ stable main contrib non-free
deb-src ftp.debian.org/debian/ stable main contrib non-free
deb www.debian-multimedia.org/ sid main
deb repos.eeebuntu.org/ eb4 main non-free contrib
deb repos.eeebuntu.org/ apptesting main non-free contrib
# This file makes sure that Opera Browser is kept up-to-date
# as part of regular system upgrades
deb deb.opera.com/opera/ stable non-free
# The line above will make sure you get all final public releases.
# Uncomment the following line if you want to get alpha and beta
# releases, too.
# deb deb.opera.com/opera-beta/ stable non-free
странный набор зеркал у Вас, если честно.
1) зачем eeebuntu? крайне не советую так смешивать ветки, деба и убунты, конфилкты будут неизбежны. Отключите их и подключайте только если надо установить какой-нибудь единичный пакет именно из них.
2) lenny вышел больше года назад, естественно в нем этого пакета нету. Только секьюрити апдейты. Если хотите использовать его в
lenny — подключите ветку lenny-backports (http://packages.debian.org/lenny-backports/madwimax) там он есть
3) не советую дома сидеть на lenny, он к моменту выхода уже устаревает. Как правило народ сидит либо на testing, либо на sid (unstable), тестинг стабильнее многих релизов других дистрибутивов, так как пакеты доходя до него проходят полный цикл в анстейбл, а иногда и экспериментал.
можете смело убить все в этом файле и сделать, к примеру:
1) зачем eeebuntu? крайне не советую так смешивать ветки, деба и убунты, конфилкты будут неизбежны. Отключите их и подключайте только если надо установить какой-нибудь единичный пакет именно из них.
2) lenny вышел больше года назад, естественно в нем этого пакета нету. Только секьюрити апдейты. Если хотите использовать его в
lenny — подключите ветку lenny-backports (http://packages.debian.org/lenny-backports/madwimax) там он есть
3) не советую дома сидеть на lenny, он к моменту выхода уже устаревает. Как правило народ сидит либо на testing, либо на sid (unstable), тестинг стабильнее многих релизов других дистрибутивов, так как пакеты доходя до него проходят полный цикл в анстейбл, а иногда и экспериментал.
можете смело убить все в этом файле и сделать, к примеру:
deb http://mirror.yandex.ru/debian testing main contrib non-free
deb http://mirror.yandex.ru/debian-multimedia/ testing main
случайно отправил, третий:
deb http://deb.opera.com/opera/ testing non-free
хватит с головой для всего
deb http://deb.opera.com/opera/ testing non-free
хватит с головой для всего
> странный набор зеркал у Вас
Какой был по дефолту, ничего не менял. Разве что оперу добавил.
> не советую дома сидеть на lenny
Вообще это у меня не совсем debian lenny. Это eeebuntu.org, конкретно 4 версии (beta), и хотя в названии стоит *buntu, основана она на дебиане. Прошлые версии (до 3 включительно) основывались на убунте, отсюда и название.
И рискну предположить, что в репозитории repos.eeebuntu.org какие-нибудь спец.пакеты для поддержки оборудования eeepc.
Какой был по дефолту, ничего не менял. Разве что оперу добавил.
> не советую дома сидеть на lenny
Вообще это у меня не совсем debian lenny. Это eeebuntu.org, конкретно 4 версии (beta), и хотя в названии стоит *buntu, основана она на дебиане. Прошлые версии (до 3 включительно) основывались на убунте, отсюда и название.
И рискну предположить, что в репозитории repos.eeebuntu.org какие-нибудь спец.пакеты для поддержки оборудования eeepc.
использование ./configure && make && make install превращает любой нормальный дистрибутив в помойку аля Slackware.
Ой, зря вы так про слаку. В ней тоже есть хорошие стороны ;)
А что будет при 300 и более торрентов? У меня гуи отваливалось по таймауту, что привело меня в итоге к rtorrent.
К сожалению, с такими нагрузками еще не сталкивался. Но, возможно, имеет смысл запустить несколько копий Transmission и распределить нагрузку между ними?
Хотя, лично я, с трудом представляю зачем может понадобиться такое число активных раздач.
Кстати, о устрановке и настройке rTorrent я тоже планирую написать подобную статью.
Хотя, лично я, с трудом представляю зачем может понадобиться такое число активных раздач.
Кстати, о устрановке и настройке rTorrent я тоже планирую написать подобную статью.
Обычно число активных раздач увеличивается для того чтобы честно заработать рейтинг, и в дальнейшем не испытывать трудности со скачиванием. Средним показателем считаю 100GB отдачи в сутки при 1ТБ данных.
Несколько копий — этот вариант отбросим — сложно кормить торрентами, вспоминая степень загрузки копии.
Несколько копий — этот вариант отбросим — сложно кормить торрентами, вспоминая степень загрузки копии.
У меня запущено порядка 20 популярных радач которые стабильно приносят рейтинг… Не вижу смысла в трехстах раздачах если канал все равно делится межу всеми.
Раздаем 17 тысяч раздач, общим объемом подярка 11ТБ, рТоррент. Трансмишн не потянет и 5000 раздач.
Вот уж удивили. Нет, правда ) Если не секрет, где понадобились такие нагрузки?
внутрисетевой торрент-сервер одного из провайдеров с огромным количеством своего контента. раньше отдавали по http, но перешли на торренты, в т.ч. и из-за расшрения сети на соседние города. от проксирования локальными серверами (в соседних городах) отказались в пользу p2p.
Ух ты, здорово! И это все у вас крутиться на одном экземпляре rTorrent'а или их несколько запущено? А еще интересуют сетевые настройки, особенно send_buffer_size, receive_buffer_size, max_open_sockets… Используете ли system.file_allocate.set?
Вначале крутилось на одном рторренте, сейчас дополнительный экземпляр сделали для новинок, чтобы быстрее подхватывал новые раздачи. Долго тюнили рторрент, несколько раз пересобирали curl, libtorrent и самого клиента.
Буферы не настраивали, file_allocate не меняли — у нас клиент раздающий, а не качающий ) фрагментация нашей reiserfs примерно 1%
Долго мучали max/min_peers, max_open_files. Пришлось ставить большое значение параметру max_open_http.
Буферы не настраивали, file_allocate не меняли — у нас клиент раздающий, а не качающий ) фрагментация нашей reiserfs примерно 1%
Долго мучали max/min_peers, max_open_files. Пришлось ставить большое значение параметру max_open_http.
>Кстати, о устрановке и настройке rTorrent я тоже планирую написать подобную статью.
Написал: habrahabr.ru/blogs/p2p/88405/
Написал: habrahabr.ru/blogs/p2p/88405/
Кстати о rTorrent, некоторое время назад (года пол примерно), когда я им пользовался, он имел привычку несколько раз в месяц вылетать с ошибкой. Вследствие чего перешел на Transmission и нисколько не жалею, мне он показался куда стабильнее.
А у вас со стабильностью rTorrent?
А у вас со стабильностью rTorrent?
*А как у вас со стабильностью rTorrent?
К сожалению, Transmission не может раздавать 17 тысяч раздач общим объемом 11ТБ. А рТоррент со скрипом, но ворочается, не вылетает.
а че это у вас за сторадж такой на 11ТБ?
hp StorageWorks, модель не помню точно. Всего 48 винтов по 750 в raid5
а что, это много? у меня несколько лет работает 16 ТБ на самосборном писюке.
хз, впринципе еще 2 года назад я думал, что мне 2 теров до конца жизни хватит, а теперь забито 3…
меня вообще-то раид удивил, а не сам объем )))
к нему я пока еще не сильно привык на «не рабочих» компах
меня вообще-то раид удивил, а не сам объем )))
к нему я пока еще не сильно привык на «не рабочих» компах
110 торрентов в раздаче скачивании, trans тормозит безбожно, открыть окно не всегда удается нормально, хотя возможно это изза того что инет лажает, но всеравно в скором времени собираюсь перелезть на rtorrent (((
ЗЫ кстати думал статья будет как раз про оптимизацию качалки
ЗЫ кстати думал статья будет как раз про оптимизацию качалки
Устроили из Debian слакварь… П-А-К-Е-Т-Ы.
Забудь про make && make install, %username%!
Человек уродовался, устанавливал 1.92, при наличии в репозитарии 1.91-1. Ну че, бывает сильно хочется свежачка, невтерпеж репоз ждать. Вот он и понастальгировал с make install, доказал что по-всякому можно в никсах работать.
apt-get source transmission
apt-get build-dep transmission
wget lalalala/transmission-super.new.version-2.2.2.tar.gz
cd transmission*
uupdate --upstream-version 2.2.2 ../transmission-super.new.version-2.2.2.tar.gz
debuild -i -us -uc
cd ../
dpkg -i *2.2.2*deb
apt-get build-dep transmission
wget lalalala/transmission-super.new.version-2.2.2.tar.gz
cd transmission*
uupdate --upstream-version 2.2.2 ../transmission-super.new.version-2.2.2.tar.gz
debuild -i -us -uc
cd ../
dpkg -i *2.2.2*deb
Вторая реинкарнация поста с учетом замечаний по способу установки.
Спрашивайте, критикуйте… :)
Спрашивайте, критикуйте… :)
Добавил описание transmission-remote-dotnet.
Спасибо за статью… Попробуем и этот клиент любопытства ради, а там уже как пойдёт =)
Кстати, никто не занимался организацией многопользовательского seedbox сервиса? Интересует любая техническая информация.
Во-первых хотелось добавить, что у вас ничего не сказано про transmission-remote — довольно удобное и простое усправление демоном на удаленном хосте. На тему remote управления: (не знаю как в версии 1.92, но в 1.75) daemon биндил remote порт на 0.0.0.0 что не хорошо при нескольких одновременно запущеных клиентах.
>А что будет при 300 и более торрентов? У меня гуи отваливалось по таймауту, что привело меня в итоге к rtorrent.
мы тестили transmission-daemon, правда версии 1.75 — у него начинаются проблемы примерно после 400 торрентов — как мы выяснили — очередь не успевает обрабатываться. при этом обрубаются все запросы от transmission-remote, видимо gui отваливался по этой же причине. Опять же не знаю как в 1.92, но в 1.75 — он личит память при хеше файлов. причем немало. выходило примерно по 2 метра на хешчек каждого торрента.
Еще у вас затрагивался rtorrent — у него тоже есть проблемы с большим количеством торрентов. консольный gui начинает тупить даже при 100 торрентах, при все при этом можно словить немало проблем с его установкой.Также он очень чувствителен к версии libcurl. При установленном libcurl из пакетов — просто отказывался соединяться с трекером. Даже с последней версией нам так и не удалось добиться от него стабильной работы. Постоянные ошибки при соединении с трекером и тд. и неудобное консольное remote управление.
В итоге мы стали пользовать enhanced ctorrent. С ним никаких проблем.
© letchik, letchik@jabber.sibnet.ru
>А что будет при 300 и более торрентов? У меня гуи отваливалось по таймауту, что привело меня в итоге к rtorrent.
мы тестили transmission-daemon, правда версии 1.75 — у него начинаются проблемы примерно после 400 торрентов — как мы выяснили — очередь не успевает обрабатываться. при этом обрубаются все запросы от transmission-remote, видимо gui отваливался по этой же причине. Опять же не знаю как в 1.92, но в 1.75 — он личит память при хеше файлов. причем немало. выходило примерно по 2 метра на хешчек каждого торрента.
Еще у вас затрагивался rtorrent — у него тоже есть проблемы с большим количеством торрентов. консольный gui начинает тупить даже при 100 торрентах, при все при этом можно словить немало проблем с его установкой.Также он очень чувствителен к версии libcurl. При установленном libcurl из пакетов — просто отказывался соединяться с трекером. Даже с последней версией нам так и не удалось добиться от него стабильной работы. Постоянные ошибки при соединении с трекером и тд. и неудобное консольное remote управление.
В итоге мы стали пользовать enhanced ctorrent. С ним никаких проблем.
© letchik, letchik@jabber.sibnet.ru
Ребята ставьте freenas на старенький комп и качайте торренты без проблем тем же transmission'ом без проблем, а при желании свежего собирате аз svn'а :))
А какой смысл компилировать? Лучше подключить сторонний репозиторий (например, https://edge.launchpad.net/~transmissionbt/+archive/nightly ). Ручная компиляция порождает кучу проблем — разрешение зависимостей, отсутствие обновлений.
Кстати, частов встречаются проблемы с кириллицей в именах файлов в торрентах (в FreeBSD c UFS). Неплохо было бы описать решения в дополнение статьи :)
А какая у вас локаль?
1251 была в свое время, не успел сменить на utf-8, и проверить поможет ли. Хотелось как-то без этого. А теперь вот и возможности нету, но в свледующий раз попробую.
Основываясь на этой инструкции, плюс с некоторыми поправками (а именно я ставил таки из стандартного репозитария (и init.d-скрипт оттуда же взялся) и правил потом в конфигах мользователя «debian-transmission» на просто «transmission»), я установил Transmission на Ubuntu 10.04 Server, и столкнулся со следующей проблемой: если запускать вручную из под пользователя «transmission», всё ok, но если пускать скриптом из init.d, то не работает, не смотря на то, что юзер в скрипте прописан «transmission».
Кроме этого, если прописать incomplete-dir и включить incomplete-dir-enabled, то скачавшись в incomplete, файлы там и остаются, в нормальный download они почему-то не перемещаются (если incomplete-dir-enabled выключить, то нормально качаются в download, т.е. папка видится как надо).
Можно ли его как-то заставить брать torrent файлы из разных каталогов и в разные каталоге закачивать файлы, ну тоесть аналог вот это из rtorrent:
#проверяет каталоги 2 и 3 на новые *.torrent файлы и сохраняет закачки в соответствующие папки
schedule = watch_directory_2,5,5,«load_start=/media/share/torrents_files/video/films/*.torrent,d.set_directory=/media/share/Video/Films»
schedule = watch_directory_3,5,5,«load_start=/media/share/torrents_files/video/serials/*.torrent,d.set_directory=/media/share/Video/Serials»
#проверяет каталоги 2 и 3 на новые *.torrent файлы и сохраняет закачки в соответствующие папки
schedule = watch_directory_2,5,5,«load_start=/media/share/torrents_files/video/films/*.torrent,d.set_directory=/media/share/Video/Films»
schedule = watch_directory_3,5,5,«load_start=/media/share/torrents_files/video/serials/*.torrent,d.set_directory=/media/share/Video/Serials»
Насколько я знаю, средствами самого Transmission можно следить только за одной папкой. Но вашу задачу можно решить используя FlexGet и его плагины Find и Transmission.
Sign up to leave a comment.
Сборка и настройка Transmission в Debian или все что вы хотели знать о Transmission но боялись спросить