В спеке стоит : %configure \ --bindir=%_sbindir \ --libexecdir=%_libdir/%name \ А должно быть : %configure \ --bindir=%_sbindir \ --libexecdir=%_libexecdir/%name \ В результате в 64-битной архитектуре файлы созаются в /usr/lib64 а не в /usr/lib и при запуске squid имеем ошибку, что файлы не найдены. $ rpm --eval=%_libdir /usr/lib64 $ rpm --eval=%_libexecdir /usr/lib
Какие файлы не найдены? Приведите текст ошибки.
#service squid restart Service squid is not running. [90G[ [1m [33mPASSED [39;49m [0;10m] Starting squid service: FATAL: unlinkd_program /usr/lib/squid/unlinkd: (2) No such file or directory Squid Cache (Version 2.6.STABLE22): Terminated abnormally. CPU Usage: 0.032 seconds = 0.008 user + 0.024 sys Maximum Resident Size: 0 KB Page faults with physical i/o: 0 [90G[ [1m [31mFAILED [39;49m [0;10m]
Мне кажется, у вас неправильный конфиг /etc/squid/squid.conf. Путь к unlinkd задаётся там директивой unlinkd_program, по умолчанию на x86_64 это /usr/lib64/squid/unlinkd. При сборке пакета макрос DEFAULT_UNLINKD принимает значение $(libexecdir)/`echo unlinkd | sed '$(transform);s/$$/$(EXEEXT)/'` (см. src/Makefile.am). И я считаю, что установка --libexecdir=%_libdir/%name верна, поскольку unlinkd - 64-разрядный бинарник, значит должен лежать в /usr/lib64 . Если моё предположение ошибочно, сообщите, где взяли пакет squid-server, не пересобирали ли самостоятельно?
Да, я посмотрел, именно /usr/lib и прописан в конфиге.Но я не пересобирал пакет - всё из Сизифа. Зато пользовался альтератором. Возможно это он прописал. Уточню на досуге. Осталось выяснить какой бакенд альтератора "сработал".
Предположительно alterator-squid