PermLUG
|
Пермская группа пользователей Linux |
|
ОблакоВход для пользователейНавигация |
Много граблей или как я ставил Sams 1.0.1. на openSuse 10.3 (Работает)
snace, 05.05.2008 — 10:56
Уважаемые форумчане! Конфигурация системы Итак, грабли первые: при компиляции дистриба потребовалась библиотека gc, скачана с репозитария openSuse. Грабли вторые: База логов сквида в упор не хотела создаваться, пока я руками не подправил файлик /etc/sams.conf, где прописал явно пароли на MySQL бызы. Дальше было веселее: решил выбрать тип авторизации ncsa. Думал все будет ок, ага щаззз - грабли третьи: в openSuse НЕТУ ФАЙЛА htpasswd, который отвечает за генерацию файла /etc/squid/ncsa.sams. Проблема решилась путем создания симлинка с файла /usr/bin/htpasswd2 на каталоги /usr/bin/htpasswd, /usr/sbin/htpasswd и /etc/squid/htpasswd. auth_param basic program /usr/sbin/ncsa_auth /etc/squid/ncsa.sams (обязательно иначе не заработает авторизация) Грабли следующие: Все заработало, но не считает статистику. Здесь мне помог участник форума nix_kot (большое ему спасибо). Нужно было раскоментить строчки в сквиде /var/log/squid/access.log (Sams создаст pipe access.log и начнет считать трафик). Грабли последние и самые коварные: Перезапустил систему и о чудо, Сквид перестал авторизовать пользователей - мучался часа четыре, выпил 2 литра пива... НАШЕЛ, ЭВРИКА. Кто-нибудь заглядывал в Сусе в /etc/rc.d после установки SAMS'a? Так вот, господа, от нашего самца там обязательно должно быть три процесса: samsf, samsdaemon и samsd, в последнем нужно руками закоментить вот эту строчку После перезапуска у меня все заработало. Удачи всем, надеюсь этот пост будет полезен.
|
Новые записи в блогахАктивные обсуждения форума
|
| Пермская группа пользователей Linux, 2003—2008 |
Спасибо, может опишете это немного поподробнее? выложим в раздел документации
>> Грабли вторые: База логов сквида в упор не хотела создаваться,
>> пока я руками не подправил файлик /etc/sams.conf, где прописал явно пароли на MySQL бызы.
Это и нужно делать руками, автоматом в sams.conf ничего не прописывается. Про это даже написано в документации
>> в openSuse НЕТУ ФАЙЛА htpasswd
Это интересно
Можно выложить, но в принципе подробнее вряд ли опишешь, потому что в основном все делается по документации. Я описал лишь конкретные отличия, с которыми столкнулся в openSuSE 10.3. Старую базу логов я подцеплять не стал, создал новую, так как скрипт апдейта базы настолько коряв, что пару раз зацепил рабочие базы (пробовал запускать из папки с самцом, из админки не запускал).
Очень правильный ответ. Сам настраивал SAMS на SLES 9 SP3 и на SLES 10 SP1 (ntlm и ip аутентификация). В основном все делается по документации, не считая определенных моментов, когда оказывает влияние идеология самой операционки. В частности действительно стартовый скрипт приходится переделывать.
В общем мое мнение: если знаком с ОС на которую ставишь SAMS затруднений быть не должно. Во всяком случае есть форум, где всегда можно получить помощь.
Если кто-нибудь предоставит мне init скрипт для SAMS под SLES я его положу на nixdev.net и в дистрибутив в contrib.
Иначе людям раз за разом придется писать велосипеды или искать по форумам.
--
NixDev - Open Source solutions for life
Ковыряю тоже в suse 10.3 только авторизация ntlm
Спасибо большое про initproc - сам бы еще некоторое время копался (последняя итерация была - заменил на команду start_daemon, но она вела себя странно.)
А вот по это подробнее можно:
>Грабли следующие: Все заработало, но не считает статистику. Здесь мне помог >участник форума nix_kot (большое ему спасибо). Нужно было раскоментить строчки >в сквиде /var/log/access.log (Sams создаст pipe access.log и начнет считать трафик).
Нет такого файла. Есть /var/log/squid/access.log
он имеется в виду?
И все равно тогда непонятно, что именно и где "раскомментить"? В /etc/sams.conf есть опция SQUIDCACHEFILE. access.log Называется странно, но access.log там был прописан, и я пока поправил ее до полного пути /var/log/squid/access.log .. уж не знаю, правильно ли - в доке ничего кроме того, что тут указывается "Имя файла логов SQUID" не сказано.
Если уж на то пошло, можно заодно сюда рабочий файл sams.conf ? (ну, без пароля, конечно)
To Necrobard
>Нет такого файла. Есть /var/log/squid/access.log
>он имеется в виду?
Совершенно верно, ошибся в пути. Имеется в виду /var/log/squid/access.log
Отвечаю на второй вопрос:
Раскоменчивать путь нужно до логов сквида в squid.conf. А именно вот этот сегмент:
#Default:
cache_dir ufs /var/cache/squid 2000 64 256
# TAG: cache_access_log
# Logs the client request activity. Contains an entry for
# every HTTP and ICP queries received. To disable, enter "none".
#
#Default:
cache_access_log /var/log/squid/access.log
# TAG: cache_log
# Cache logging file. This is where general information about
# your cache's behavior goes. You can increase the amount of data
# logged to this file with the "debug_options" tag below.
#
#Default:
cache_log /var/log/squid/cache.log
# TAG: cache_store_log
# Logs the activities of the storage manager. Shows which
# objects are ejected from the cache, and which objects are
# saved and for how long. To disable, enter "none". There are
# not really utilities to analyze this data, so you can safely
# disable it.
#
#Default:
cache_store_log /var/log/squid/store.log
И тогда наступит счастье. По крайней мере у меня наступило (задумчиво почесывая репу).
Вопрос третий: Рабочий sams.conf прилагаю
[client]
SQUID_DB=squidlog
SAMS_DB=squidctrl
MYSQLHOSTNAME=localhost
MYSQLUSER=root
MYSQLPASSWORD=
MYSQLVERSION=5.0
SQUIDCACHEFILE=access.log
SQUIDROOTDIR=/etc/squid
SQUIDLOGDIR=/var/log/squid
SQUIDCACHEDIR=/var/spool/squid
SAMSPATH=/usr/local
SQUIDPATH=/usr/sbin
SQUIDGUARDLOGPATH=/var/log
SQUIDGUARDDBPATH=/var/db/squidguard
RECODECOMMAND=iconv -f KOI8-R -t 866 %finp > %fout
LDAPSERVER=servername_or_ipadress
LDAPBASEDN=your.domain
LDAPUSER=DomainAdministrator
LDAPUSERPASSWD=passwd
LDAPUSERSGROUP=Users
REJIKPATH=/usr/local/rejik
SHUTDOWNCOMMAND=shutdown -h now
CACHENUM=0
Удачи!!!
| MYSQLHOSTNAME=localhost
| MYSQLUSER=root
| MYSQLPASSWORD=
а не дурно ли рута использовать? для работы с самс!
___________________________________________________
FreeBSD 6.1
sams-1.0.1
squid-2.6.STABLE18
rejik-3.2.1
Авторизация: NCSA+IP
Приведу свой sams.conf (может кому пригодится)
[client]
SQUID_DB=squidlog
SAMS_DB=squidctrl
MYSQLHOSTNAME=localhost
MYSQLUSER=sams
MYSQLPASSWORD=
MYSQLVERSION=4.0
SQUIDCACHEFILE=access.log
SQUIDROOTDIR=/usr/local/squid/etc_dummy
SQUIDLOGDIR=/usr/local/squid/var/logs
SAMSPATH=/usr/local
SQUIDPATH=/usr/local/squid/sbin
SQUIDGUARDLOGPATH=/var/log
RECODECOMMAND=iconv -f KOI8-R -t 866 %finp > %fout
SHUTDOWNCOMMAND=echo
Squid установлен из исходников в /usr/local/squid
Sams в /usr/local/share/sams
SQUIDROOTDIR по идее должен указывать на каталог где лежит конфиг сквида, у меня несколько иначе, что связано с особенностями конфигурации аутентификации.
А вот такой скрипт я использую для запуска samsdaemon:
#!/bin/sh
#
# chkconfig: 345 87 08
# description: Squid Account Management System (SAMS)
#
### BEGIN INIT INFO
# Provides: samsd
# Required-Start:
# Required-Stop:
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Description: start samsdaemon (SAMS)
### END INIT INFO
SAMSPATH=`cat /etc/sams.conf | grep SAMSPATH | tr "SAMSPATH=" "\0"`
EXE=$SAMSPATH/bin/samsdaemon
PIDFILE=/var/run/samsdaemon.pid
. /etc/rc.status
rc_reset
case "$1" in
start)
echo -n "Starting samsd: "
checkproc ${EXE}
case $? in
0) echo -n "Warning: samsdaemon is already running.";;
1) echo -n "Warning: ${PIDFILE} exists.";;
esac
startproc -s -l /var/log/sams.log -p ${PIDFILE} ${EXE}
rc_status -v
;;
stop)
echo -n "Shutting down samsd: "
checkproc -p ${PIDFILE} ${EXE} || echo -n "Warning: samsdaemon is not running."
killproc -p ${PIDFILE} ${EXE}
rc_status -v
;;
restart)
stop
start
rc_status
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
rc_exit
SLES 9 SP3
squid 2.5STABLE14
SAMS 1.0
To Nix_kot
Про рута могу сказать следующее, пытался запустить базы под любым другим юзером, не хочет создаваться. Пробовал менять после создания баз - в админке получалась чистая страничка без пользователей. Может быть такой глюк только у меня?
Отформатировал и выложил историю хождения по граблям в wiki:
http://sams.nixdev.net/wiki/OpenSuse10.3
ps: Исправленный init-скрипт с удовольствием выложу на сайт и включу в contrib.
--
NixDev - Open Source solutions for life
Большое спасибо за проявленный интерес к моим граблям :)))
Польщен, что мои изыскания выложили в раздел документации.