Назад | Перейти на главную страницу

Проблемы с использованием старого пакета - Debian jessie / Libdb

Я застрял, пытаясь заставить squidguard бежать. Это связано с версией berkelydb (libdb).

Это свежая установка сервера Debian jessie. Нет графического интерфейса, просто ssh, сборка и т. Д.

Установил сквид из исходников. Нет проблем.

Пытался установить squidgaurd от apt. Хотел установить squid3, так что нет. Установил squidguard из исходников. Не сработало. Совершил неверный пользователь. Перекомпилировано правильным пользователем. Ошибок нет.

Настроил squidguard. Пошел протестировать конфигурацию с помощью squidguard -d и получил следующее:

2015-10-29 18:41:10 [10707] New setting: dbhome: /usr/local/squidGuard/db
2015-10-29 18:41:10 [10707] New setting: logdir: /usr/local/squidGuard/log
BDB1565 DB->put: method not permitted before handle's open method
2015-10-29 18:41:10 [10707] sgDbUpdate: put: Invalid argument
2015-10-29 18:41:10 [10707] Going into emergency mode

погуглил немного. Увидел, что была проблема с версией 1.4, которая имела проблемы с чем-либо более поздним, чем 4.6 Berkelydb.

Нашел .deb для libdb4.6. Установлены. Та же неудача. Перекомпилировано с --with-db, указанным на /usr/lib/libdb-4.6.so - Тот же отказ Перекомпилировано с --with-db-lib, указанным на /usr/lib/libdb-4.6.so - Тот же отказ Попробовал оба раза без имя файла .so. Та же неудача.

Потом подумал, может, что-то упустил. Итак, я нашел репозиторий squeeze backport и попытался переустановить libdb4.6 оттуда.

Reinstallation of libdb4.6 is not possible, it cannot be downloaded.
Reinstallation of libdb-dev is not possible, it cannot be downloaded.

На этом я исчерпал свои навыки работы с Linux. Я перепробовал все комбинации поиска и мало что нашел.

Я собирался попробовать поддержку mysql, но из того, что я увидел, это только для аутентификации.

Я бы либо хотел:

To fix this and get it working
Find something other than squidguard that can do blacklists.

Я знаю, что с момента вопроса прошло много времени, но я боролся с той же проблемой.

Для решения я сделал следующее:

Загрузите BerkeleyDB и скомпилируйте его из исходников.

tar -xzvf db-4.6.21.tar.gz

cd db-4.6.21

cd build_unix/

../dist/configure --prefix=/usr/local/berkeleydb

make

make install

echo "/usr/local/berkeleydb/lib/" >> /etc/ld.so.conf

ldconfig

Снова скомпилируйте SquidGuard:

./configure  --with-db=/usr/local/berkeleydb

Проверь это:

squidGuard -v

SquidGuard: 1.4 Berkeley DB 4.6.21: (September 27, 2007)

squidGuard -d

2018-09-04 23:00:47 [7581] New setting: dbhome: /usr/local/squidGuard/db
2018-09-04 23:00:47 [7581] New setting: logdir: /usr/local/squidGuard/log
2018-09-04 23:01:01 [7581] squidGuard 1.4 started (1536112847.496)
2018-09-04 23:01:01 [7581] squidGuard ready for requests (1536112861.611)