= Установка SAMS на !OpenSuse 10.3 = * '''Автор''': snace * '''Редактор''': PavelVinogradov '''Данная статья является отредактированной копией темы пользователя '''snace''' на [http://www.permlug.org/node/3910/#comment-24472 форуме SAMS] .''' == Установка == Возможно, кому-то эти сведения пригодятся при установке самса.[[BR]] Буду описывать по ходу возникших трудностей.[[BR]] [[BR]] Конфигурация системы: * ОС !OpenSuSe 10.3 * Squid 2.6 Stable * MySQL 5.0.45 * Sams 1.0.1 === Итак, грабли первые === При компиляции дистриба потребовалась библиотека 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 #(обязательно иначе не заработает авторизация) auth_param basic children 5 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 minutes #(поставил такое значение, так как думал, что здесь возникают следующие грабли) auth_param basic casesensitive off }}} === Грабли следующие === Все заработало, но не считает статистику. Здесь мне помог участник форума '''nix_kot''' (большое ему спасибо). Нужно было раскоментить строчки в сквиде /var/log/squid/access.log (Sams создаст pipe access.log и начнет считать трафик). === Грабли последние и самые коварные === Перезапустил систему и о чудо, Сквид перестал авторизовать пользователей - мучался часа четыре, выпил 2 литра пива... НАШЕЛ, ЭВРИКА. Кто-нибудь заглядывал в Сусе в /etc/rc.d после установки SAMS'a? Так вот, господа, от нашего самца там обязательно должно быть три процесса: samsf, samsdaemon и samsd, в последнем нужно руками закоментить вот эту строчку {{{ #. /etc/init.d/functions # и переправить вот этот кусок (привожу уже исправленный вариант) start() { echo -n "Starting samsd: " startproc "$EXE" RETVAL=$? [ $RETVAL -eq 0 ] && touch "$LOCKFILE" echo } }}} потом сделать следующие команды, для того, чтобы ваша суся подцепила эти три процесса в автозагрузку: {{{ insserv samsd insserv samsdaemon insserv samsf }}} После перезапуска у меня все заработало