Мой домашний сервер включен 24х7. А по ночам он простаивает, захотелось его чем нибудь нагрузить. Чем можно нагрузить домашний сервер с безлимитным интернетом — понятное дело торрентами. А поскольку сервер на линуксе, то и торрент клиент нужно искать консольный и с Web интерфейсом

И мой взгляд упал на rTorrent + wTorrent. Долго гугля в различных интернетах понял, что большинство пытается поднять эту связку на вебсервере Лайти (lighttpd), а вот под апач к сожалению нет толковых мануалов.
Чтож, попробую написать свой мануал

итак начнем

ставим необходимые пакеты

apt-get install rtorrent screen apache2 php5-cgi php5-common php5-sqlite php5-xmlrpc sqlite unzip php5-curl

тут следует отметить что пакет rtorrent для Ubuntu идет уже скомпилирован с xmlrpc для Debian Etch придется собирать самому, либо использовать версию пакета из тестинга

итак займемся настройкой пакета rTorrent. следует отметить что rTorrent нужно запускать от учетки пользователя. в моем случае это была учетная запись randomtoy

в папке /home/denis создаем файл .rtorrent.rc со следующим содержанием

scgi_port = localhost:5000
min_peers = 40
max_peers = 100
min_peers_seed = 10
max_peers_seed = 50
max_uploads = 15
#upload_rate = 50
directory = /home/denis/torrents/doing
session = /home/denis/torrents/.rtsession/
schedule = watch_directory,5,5,load_start=/home/denis/torrents/watch/*.torrent
schedule = tied_directory,5,5,start_tied=
schedule = untied_directory,5,5,close_untied=
on_finished = move_complete,"execute=mv,-u,$d.get_base_path=,/home/denis/torrents/done/ ;d.set_directory=/home/denis/torrents/done/"
on_start = link1,"create_link=tied,,.started"
on_stop = link1,"delete_link=tied,,.started"
on_finished = link1,"create_link=tied,,.finished"
on_erase = link1,"delete_link=tied,,.finished"
schedule = low_diskspace,5,60,close_low_diskspace=100M
#schedule = ratio,60,60,"stop_on_ratio=120,200M,2000"
port_range = 10000-10001
port_random = no
check_hash = yes
use_udp_trackers = yes
encryption = allow_incoming,try_outgoing,enable_retry
dht = auto
dht_port = 63982

тут же создаем следующие директории

mkdir torrents

запускаем rtorrent, если нет ошибок, продолжаем. Следующая проблема. как запускать рторрент от пользователя при запуске системы?

создаем скрипт rtorrent со следующим содержимым

#!/bin/bash

### BEGIN INIT INFO
# Provides: rtorrent
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start rtorrent as a daemon
### END INIT INFO

#!/bin/sh
#############
######
#############
# 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
##############
######
##############

#######################
##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)
#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="denis"

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

# the full path to the filename where you store your rtorrent configuration
config="/home/denis/.rtorrent.rc"

# set of options to run with
options=""

# default directory for screen, needs to be an absolute path
#base="/home/${user}"
base="/home/denis"

# name of screen session
srnname="rtorrent"

# file to log to (makes for easier debugging if something goes wrong)
logfile="/var/log/rtorrentInit.log"
#######################
PATH=/usr/bin:/usr/local/bin:/usr/local/sbin:/sbin:/bin:/usr/sbin
DESC="rtorrent"
NAME=rtorrent
DAEMON=$NAME
SCRIPTNAME=/etc/init.d/$NAME

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 "$log$
# 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$
su -c "screen -S "${srnname}" -X screen rtorrent ${options} 2>&1 1>/dev/null" ${user} | tee -a "$logfile" >&2
}

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 -A | 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

копируем скрипт, делаем его выполняемым и добавляем в автозагрузку

cp rtorrent /etc/init.d

chmod a+x /etc/init.d/rtorrent

update-rc.d rtorrent defaults 25

Теперь rtorrent будет запускаться в screen при запуске системы

ну и теперь приступаем к самому вкусному, к Web-интерфейсу. из различных вебморд я выбрал, основанную на аяксе wTorrent

скачиваем wTorrent

cd /var/www

rm -f index.html

svn co svn://canbruixa.homelinux.net/repos/trunk/wtorrent/

cd wtorrent

mv * ..

mv .* ..

cd ..

rmdir wtorrent

touch ./db/database.db

chown -R www-data:www-data /var/www/wtorrents

редактируем файл /var/www/wtorrent/conf/user.conf.php

<?php
/* wTorrent autoconfiguration file. Created 17/5/2010 */
define ('LANGUAGE', 'ru_RU');
define ('DB_FILE', 'db/database.db');
define ('RT_HOST', 'localhost');
define ('RT_PORT', 80);
define ('RT_DIR', '/RPC2');
define ('RT_AUTH', false);
define ('RT_USER', '');
define ('RT_PASSWD', '');
define ('NO_MULTICALL', true);
define ('EFFECTS', true);
define ('DIR_TORRENTS', 'torrents/');
define ('DIR_EXEC', '/var/wtorrent/');
define ('DIR_DOWNLOAD', '/home/denis/torrents/');
?>

Вот теперь мы дошли до настройки Apache.

в файл апача /etc/apache2/httpd.conf добавляем

SCGIMount /RPC2 127.0.0.1:5000

перезапускаем rtorrent и Апач

/etc/init.d/rtorrent restart
/etc/init.d/apache2 restart

заходим на страницуlocalhost/install.php

создаем аккаунт администраторатора

заходим по адресу localhost

wTorrent работает

Добавляем модуль

a2enmod info

Дописуем алиас:

/etc/apache2/apache2.conf:1

1
ExtendedStatus On

<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from .your_domain.com
</Location>

Перезагружаем настройки apache2

/etc/init.d/apache2 force-reload

Канікули, маленька відпустка на роботі, я так цього чекав. Просто хотів полежати, подивитись в стелю, переглянути якусь тупу комедію. Хаха ) Наївний хіба ж таке буває? Вчитися все одно потрібно так як скоро сесія а здавати ще багато всього, на роботі все рівно потрібно відписувати клієнтам, читати пошту. Та і погода тільки щоб спати.

269316 neuzheli tyi dumaesh Ситий, виспаний, щасливий

Відійшовши від ниття, можна сказати, що це все дурниця порівняно, я на даний момент дійсно відпочиваю. Їжі вдосталь, спати можна скільки завгодно. Чого ще потрібно. Здається навіть і настрій хороший. А чого ж нема? 0_о

Сидів, читав, лежав і тут думка так як у Кепа) Щастя! А що ж це таке? Я не полінувався зайшов на Wikipedia і те що я там прочитав дуже зацікавило мене. «Ща́стя — стан цілковитого задоволення життям, відчуття глибокого вдоволення та безмежної радості.» Хм… ОТ так просто виявляється) Виявляється я щасливий, адже я вряд не задоволений своїм життям та і радий теж в досталь) Я ж відпочиваю. Виходить я щасливий а до цього моменту не знав. Дивно то що ж не так? Чого ж все-таки не вистачає?

6306 Ситий, виспаний, щасливий

А ще так просто для свого літопису. Я тут 30 числа був на Pirate Station Network скажімо так. Мені сподобалося. Якщо не брати до уваги що був жахливий звук. То там було просто чудово) Звучало те що мені подобається, компанія теж хороша.

З.І. Я сьогодні дізнався про термін «Позитивна психологія» так от головне попадати тільки в цей розділ психології) Щастя всім. Це ж так просто.

З.З.І Фото з Pirate Station
З.З.З.І. А вони класні)

1215971105 parcete conscienteam v Ситий, виспаний, щасливий

Установка Nagios3

nagios logo Nagios3 and Nagiosgrapher howto Debian/Ubuntu

apt-get install autoconf rrdtool perl perl-base perl-modules libcalendar-simple-perl \
libgd-gd2-perl perlmagick librrds-perl liburi-perl

Настройка Nagios3

Редактируем файл /etc/nagios3/naigos.cfg (Как оказалось очень важно)

check_external_command=1

Установка и настройка NRPE

NRPE – модуль для системы мониторинга Nagios, позволяющий запускать plugin’ы на удаленных серверах. Основная задача данного модуля – получить информацию о локальных данных удаленных серверов (check_load, check_users). Но с таким же успехом его можно использовать для мониторинга недоступных серверов, например, находящихся в локальной сети и не имеющих внешних адресов. Для этого достаточно установить на промежуточном сервере (195.43.68.11), имеющим доступ к локальной сети (192.168.1.0), nrpe-службу и на сервере мониторинга (195.43.68.2) установить nrpe-plugin.

На стороне remote-сервера установить nrpe-сервис и базовый набор nagios-plugin’ов

apt-get install nagios-nrpe-server nagios-plugins-basic

Проверка установки nagios-nrpe-server

netstat -an | grep 5666
tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN

Изменить конфигурационный файл /etc/nagios/nrpe.cfg и перезапустить сервис с новыми параметрами

 allowed_hosts=127.0.0.1,195.43.68.2 

# разрешить использование аргументов при выхове plugin’ов
dont_blame_nrpe=1
# пример описания plugin’а
command[check_ftp]=/usr/lib/nagios/plugins/check_ftp -H $ARG1$
[/bash]

/etc/init.d/nagios-nrpe-server restart

На стороне мониторинг-сервера установить nrpe-plugin, протестировать его функциональность и добавить описания требуемых для мониторинга локальных сервисов. В приведенном ниже примере используется plugin check_ftp, для проверки работоспособности ftp-сервиса на локальном сервере 192.168.1.111.

apt-get install nagios-nrpe-plugin

Проверка

/usr/lib/nagios/plugins/check_nrpe -H 195.43.68.11

Пример описания данного сервиса в конфигурации Nagios:

define service{
use generic-service
host_name remote
service_description NRPE_FTP
check_command check_nrpe!check_ftp!192.168.1.111

Установка Nagiosgrapher

 aptitude install nagiosgrapher

Настройка Nagiosgrapher

ngraph.ncfg

Редактируем файл /etc/nagiosgrapher/ngraph.ncfg

interface          file
perffile_path     /etc/nagiosgrapher/
nagios.cfg

Редактируем файл /etc/nagios3/naigos.cfg

cfg_dir=/etc/nagiosgrapher/nagios3/serviceext
process_performance_data=1
service_perfdata_file=/etc/nagiosgrapher/service-perfdata
service_perfdata_file_template=$HOSTNAME$\t$SERVICEDESC$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$\t$TIMET$\n
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=30
service_perfdata_file_processing_command=process-service-perfdata-file
commands.cfg

Редактируем файл /etc/nagios3/commands.cfg


define command{
          command_name process-service-perfdata-file
          command_line mv /etc/nagiosgrapher/service-perfdata /etc/nagiosgraphe$
}

Перезапуск NagiosGrapher

/etc/init.d/nagiosgrapher restart

Перезагрузка Nagios

/etc/init.d/nagios restart

Grapher значок не будет отображаться в интерфейсе Nagios до проверки службы. Просто нужно подождать 5 – 10 минут.

От уже і рік… Рік як я веду цей блог. Рік, як не можу забути… Рік від того як мені виповнилось 19. Сьогодні вже другий десяток… Страшно навіть уявити, що я вже не такий маленький) А в душі то все ж постарому…

860703 26 aprelya 1986 goda +1

Підсумуючи цей рік можна сказати одне все стабільно розвивається і стає краще. Проте залишається багато речей які не змінні, спогади, мрія і самотність. Не вже так буде і завжди? Радує те, що їсти я став частіше а головне кожного дня) Веселитися також більше та і працювати теж. Все якось так максимально врівноважено. Саме так як я люблю)

День сьогодні сонячний, я на роботі. Напевно іншим не сподобалося б його так провести, але на даний момент так я проводжу більшість часу, це допомагає не думати про щось зайве, в голову не лізуть тупі думки. Напевно так краще. А взагалі тим хто не думає напевно легко жити… Та  в мене з легкістю не вийде. Все ж не так просто)

1245359289 1245291598 +1

Рік, здавалося вчора все ще було інакше…
Останнім часом часто задаю питання собі чому так? І ніколи не можу знайти відповіді…

З.І. З днем народження мене)

З.З.І. Дякую Батькам за мене…

1247344941 1247223325 08 +1

Знову зміни) Щось мене все ніяк не зупинити. Чим далі тим швидше все відбувається. Тижні проходять просто на одному диханні. Встав в понеділок ліг в п’ятницю. І так неділя за неділею.
Минула п’ятниця взагалі була довгою… Один із найдовших днів в моєму житті. Ранок в університеті Порадував я умудрився здати 8 лабораторних робіт з різних предметів) Трошки був пропустив пар і тут за день все здав та ще й на відмінно. Прийшовши додому душ, їжа, туалет. Відкрив комп попрацював. З друзями вирішили остаточно що слід йти на Pre-party PIRATE STATION NETWORK яке відбувалося в Vodka Bar. Типа о Concord Down приїде круть…

 Ритм Дня

А насправді було все не так) Приїхали ми в «Мега клуб» А там просто ужас. Ні розвернутися ні просунутися. Місця мало не тому, що людей було багато, а тому, що це Бар не розрахований на такі заходи. В залі було 2 типа людей Мажори, які доводили шмар до необхідного стану, та ті хто прийшов на Послухати хорошу музику, якої так і не дочекалися. Purple unit – молодцом. Concord – так і не приїхав. А Tapolsky став нариком( Взагалі вся фішка в том, що та частина, яка прийшла потанцювати була просто в шоці) Особливо ті які приїхали з інших міст. Тематична музика була до 02.30 після чого вийшов один із резидентів і настала ера Техно. Всі школярі і люди розстроїлись і пішли гуляти по нічному Києву не винятком були і ми. Залишивши по заду жахливі нарікання на організаторів та безмізкових шмар. Ми просто пішли… Пройшли багато. Вернувшись додому о 7 ранку я приліг на 30 хвилин так, як будильник бачив новий день вже о 7.30.

 Ритм Дня

Дивно, але я таки не зміг заснути і вже о 8.00 я був в формі одягу №2 в дорозі у місто Українку. Там було засідання людей) Чесно кажучи я і досі не зрозумів що відбувалося тоді, в ті хвилини я просто існував))) Десь о 13.00 я був на станції метро КПІ з думкою їжа. Дуже схожий на зомбі. В голові їжа, думок 0% я іду) Попоївши в якісь будівлі я дістався ліжка… Це було незабутньо) Зняти шкарпетки… Ааа… Інколи це така насолода)

Проснувшись було темно. Я сів попрацював… Підготовив кучу планів роботи на сьогодні. На даний момент половину уже виконав інша чекає ночі…

А завтра новий ранок… Робота, університет, новий заказ на сайт – все як завжди… Все добре.
Я все більше переконуюсь, що не погано то навкруги. Потрібно лиш всіх вбити і по прибирати ) І світ стане саме таким, яким бачу його я.

 9863681 ojml4 Ритм Дня

А взагалі я запарився працювати.

З.І. Світ був би жорстоким навіть без людей, просто ми б цього не бачили.
З.З.І Добави багато нових фото в свій альбом… http://photo.bukashk0zzz.org.ua/

В вушах Netsky Eyes Closed

Get the Flash Player to see this content.

Get the Flash Player to see this content.

Get the Flash Player to see this content.

Get the Flash Player to see this content.

Get the Flash Player to see this content.

Инструкция для клиентов Hosting.ua по восстановлению данных

Всяческий перепост,ретвит, ссылка на эту статью максимально приветствуется. Это реальная информация о том как можно действовать сейчас.

Уважаемые друзья. Статья писалась в авральном режиме.Приносим свои извинения за орфографию и грамматику.

Нужно понимать, что произошедшее с коллегами из Hosting.ua это огромная беда как для их клиентов так и для хозяев в первую очередь. Помимо огромных потерь хозяевам сейчас надо восстанавливать или срочно искать помещение для  организации коммуникаций с клиентами.

На данный момент большинство хостингов в Украине начало предлагать клиентам hosting.ua скидки на свои услуги, не понимая, что у клиентов сейчас нет сайтов, доменов, почты и других сервисов. Подобное поведение никак не повлияет на ситуацию, а тем более не поможет ни самой компании ни ее клиентам.

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

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

Никаких оплат с клиентов мы не брали. Мы просто работали в выходной день и предоставили клиентам возможностью быстро поменять name сервера и продолжить работу своих сайтов.

Есть категория клиентов, которым сайты делали разработчики, разработчиков не найти, остались доступы для каких-то панелек и куча файлов непонятного содержания. Таким клиентам мы самостоятельно загружали файлы, импортировали базы и меняли name-сервера для отображения сайта с нашей площадки. Причем абсолютно бесплатно. Люди нормально вышли в понедельник на работу и у них продолжилось их дело. Continue reading »

Get the Flash Player to see this content.

В мультике мудрость)

Get the Flash Player to see this content.

© 2011 Записи о настройке Debian, Ubuntu
Украина онлайн Rambler's Top100 Каталог MyList.com.ua каталог сайтів