При использовании дебиана/убунту на нескольких машинах в одной локальной сети возникает проблема – неоптимально используется трафик, каждый из компьютеров скачивает по разу все обновления. С другой стороны – настройка локального репозитория означает финансовые затраты (большой обьем самого репозитория). Но есть весьма оптимальное решение – кеширующий прокси-сервер HttpReplicator.
1)Скачиваем его с sf и “устанавливаем”:
wget http://downloads.sourceforge.net/project/http-replicator/http-replicator/4.0alpha2/http-replicator_4.0alpha2.tgz?use_mirror=sune
tar -xvvf http-replicator_4.0alpha2.tgz
cd http-replicator_4.0alpha2/
mkdir /usr/local/httpreplicator/
root@home-test:~/repl/http-replicator_4.0alpha2# mv * /usr/local/httpreplicator/
Если подскажете ссылку на .деб файл – буду благодарен. Итак, теперь надо создать файл запуска для него и разобратся с параметрами. Параметры запуска у демона такие:
usage: /usr/local/httpreplicator/http-replicator [options]
options:
-h –help show this help message and exit
-p –port PORT listen on this port for incoming connections, default 8080
-r –root DIR set cache root directory, default current: /home/dcsk/repl/http-replicator_4.0alpha2/
-v –verbose show http headers and other info
-t –timeout SEC break connection after so many seconds of inactivity, default 15
-6 –ipv6 try ipv6 addresses if available
–flat flat mode; cache all files in root directory (dangerous!)
–static static mode; assume files never change
–offline offline mode; never connect to server
–limit RATE limit download rate at a fixed K/s
–daemon LOG route output to log and detach
–debug switch from gather to debug output module
Cоздадим скрипт управления(запишем этот текст своим любимым текстовым редактором в /etc/init.d/http-replicator):
#!/bin/bash
NAME=”python”
DAEMON=/usr/local/httpreplicator/http-replicator
DAEMON_ARGS=” –port 8080 –daemon /var/log/http-replicator.log –root /var/cache/httpreplicator/ ”
USERNAME=”proxy”
case “$1″ in
start)
/bin/su $USERNAME -c “$DAEMON $DAEMON_ARGS”
;;
stop)
/bin/su $USERNAME -c “killall $NAME”
;;
restart)
/etc/init.d/http-replicator stop
/etc/init.d/http-replicator start
;;
*)
echo “Usage: /etc/init.d/http-replicator {start|stop|restart}”
exit 1
;;
esac
exit 0
Также надо не забыть создать папку для кеша и файл логов, проставить на них права:
mkdir -p /var/cache/httpreplicator/
chown proxy:proxy /var/cache/httpreplicator/
touch /var/log/http-replicator.log&& chown proxy:proxy /var/log/http-replicator.log
Добавляем в автозапуск:
update-rc.d http-replicator defaults
Для использования на конечных машинах надо добавить в /etc/apt/apt.conf :
Acquire::http::Proxy “http://192.168.0.1:8080″;