Не удается установить squid на debian: работа службы squid.service завершилась с ошибкой из-за превышения времени ожидания.

Вопрос или проблема

Я пытаюсь установить squid, но apt не может завершить установку и возвращает такие ошибки:

После этой операции будет использовано 7263 кБ дополнительного дискового пространства.
Выбор ранее не выбранного пакета squid.
(Чтение базы данных ... 156110 файлов и каталогов в данный момент установлено.)
Подготовка к распаковке .../squid_3.5.23-5+deb9u1_amd64.deb ...
Распаковка squid (3.5.23-5+deb9u1) ...
Настройка squid (3.5.23-5+deb9u1) ...
Setcap сработал! /usr/lib/squid/pinger не имеет suid!
Работа для squid.service завершилась с ошибкой, так как превышено время ожидания.
Смотрите "systemctl status squid.service" и "journalctl -xe" для подробностей.
invoke-rc.d: initscript squid, действие "перезапуск" не удалось.
● squid.service - LSB: Squid HTTP Proxy версия 3.x
   Загружен: загружен (/etc/init.d/squid; сгенерировано; предустановка: включена)
   Активен: неудачно (Результат: время ожидания) с среды 2020-04-22 11:54:36 CDT; 7мс назад
     Документы: man:systemd-sysv-generator(8)
  Процесс: 1888 ExecStart=/etc/init.d/squid start (код=выход, статус=0/УСПЕХ)
    Задачи: 24 (лимит: 4915)
   CGroup: /system.slice/squid.service
           ├─  338 /usr/sbin/squid -YC -f /etc/squid/squid.conf
           ├─  340 (squid-1) -YC -f /etc/squid/squid.conf
           ├─  341 (logfile-daemon) /var/log/squid/access.log
           ├─  342 (pinger)
           ├─  950 /usr/sbin/squid -YC -f /etc/squid/squid.conf
           ├─  952 (squid-1) -YC -f /etc/squid/squid.conf
           ├─  953 (logfile-daemon) /var/log/squid/access.log
           ├─  954 (pinger)
           ├─1926 /usr/sbin/squid -YC -f /etc/squid/squid.conf
           ├─1928 (squid-1) -YC -f /etc/squid/squid.conf
           ├─1929 (logfile-daemon) /var/log/squid/access.log
           ├─1930 (pinger)
           ├─31261 /usr/sbin/squid -YC -f /etc/squid/squid.conf
           ├─31263 (squid-1) -YC -f /etc/squid/squid.conf
           ├─31264 (logfile-daemon) /var/log/squid/access.log
           ├─31265 (pinger)
           ├─31597 /usr/sbin/squid -YC -f /etc/squid/squid.conf
           ├─31599 (squid-1) -YC -f /etc/squid/squid.conf
           ├─31600 (logfile-daemon) /var/log/squid/access.log
           ├─31601 (pinger)
           ├─31949 /usr/sbin/squid -YC -f /etc/squid/squid.conf
           ├─31951 (squid-1) -YC -f /etc/squid/squid.conf
           ├─31952 (logfile-daemon) /var/log/squid/access.log
           └─31953 (pinger)

22 апр 11:49:36 backgroundserver systemd[1]: Запуск LSB: Squid HTTP Proxy версия 3.x...
22 апр 11:49:36 backgroundserver squid[1926]: Родитель Squid: запустит 1 потомка
22 апр 11:49:36 backgroundserver squid[1888]: Запуск Squid HTTP Proxy: squid.
22 апр 11:49:36 backgroundserver systemd[1]: squid.service: файл PID /var/run/squid.pid не читается (в данный момент?) после запуска: Нет такой файл или директория
22 апр 11:49:36 backgroundserver squid[1926]: Родитель Squid: (squid-1) процесс 1928 запущен
22 апр 11:54:36 backgroundserver systemd[1]: squid.service: операция запуска превысила время ожидания. Завершение.
22 апр 11:54:36 backgroundserver systemd[1]: Не удалось запустить LSB: Squid HTTP Proxy версия 3.x.
22 апр 11:54:36 backgroundserver systemd[1]: squid.service: Юнит вошел в состояние неудачи.
22 апр 11:54:36 backgroundserver systemd[1]: squid.service: Не удалось с результатом 'время ожидания'.
dpkg: ошибка обработки пакета squid (--configure):
 подпроцесс установленного постустановочного сценария завершился с ошибкой
Обработка триггеров для systemd (232-25+deb9u12) ...
Обработка триггеров для man-db (2.7.6.1-2) ...
Во время обработки возникли ошибки:
 squid
E: Подпроцесс /usr/bin/dpkg вернул код ошибки (1)

Я не знаю, что делать.

Откройте терминал и выполните:

Удалить старые версии:

sudo apt -y purge squid* &> /dev/null
sudo rm -rf /var/spool/squid/* /var/log/squid/* /etc/squid3 /dev/shm/* &> /dev/null

Установить:

sudo apt -y install squid squid-langpack
if [ ! -d /var/log/squid ]; then sudo mkdir -p /var/log/squid && sudo touch /var/log/squid/{access,cache}.log && sudo chown -R proxy:proxy /var/log/squid; fi

Crontab (по желанию):

sudo crontab -l | { cat; echo "@weekly squid -k rotate"; } | sudo crontab -

PD: протестировано на Ubuntu 20.04 (не debian)

Ответ или решение

Ваша проблема с установкой Squid на Debian может быть связана с несколькими причинами. Ошибка "Job for squid.service failed because a timeout was exceeded" указывает на то, что служба Squid не смогла запуститься в течение отведенного времени. Для решения этой проблемы выполните следующие шаги:

1. Удаление предыдущих установок

Чтобы избежать конфликта с предыдущими версиями или некорректными конфигурациями, сначала удалите Squid:

sudo apt -y purge squid* &> /dev/null
sudo rm -rf /var/spool/squid/* /var/log/squid/* /etc/squid3 /dev/shm/* &> /dev/null

2. Установка Squid

Установите Squid и нужные пакеты:

sudo apt -y install squid squid-langpack

3. Настройка директорий логов

Если директория для логов Squid не была создана автоматически, создайте ее и установите необходимые права:

if [ ! -d /var/log/squid ]; then
    sudo mkdir -p /var/log/squid 
    sudo touch /var/log/squid/{access,cache}.log 
    sudo chown -R proxy:proxy /var/log/squid
fi

4. Проверка и исправление конфигурации

Проверьте файл конфигурации Squid, который обычно находится по адресу /etc/squid/squid.conf. Обратите внимание на строки, касающиеся разрешений и настроек кэша. Если вы внесли изменения в конфигурационный файл, вы можете проверить его на наличие ошибок:

sudo squid -k parse

5. Запуск службы Squid

Попробуйте запустить службу Squid вручную, чтобы увидеть, появляются ли сообщения об ошибках:

sudo systemctl start squid

Проверьте статус службы:

sudo systemctl status squid.service

Если служба не запускается, проверьте логи с помощью:

journalctl -u squid.service -xe

6. Настройка Crontab (по желанию)

Если вы хотите установить автоматическую ротацию логов, добавьте задачу в crontab:

sudo crontab -l | { cat; echo "@weekly squid -k rotate"; } | sudo crontab -

Заключение

Если после выполнения всех вышеперечисленных шагов проблема сохраняется, пожалуйста, проверьте системные журналы и на наличие ошибок в конфигурации Squid. Убедитесь, что все необходимые зависимости установлены, и что у пользователя proxy есть необходимые права на доступ к логам и директориям Squid.

Если у вас остались вопросы или ошибки продолжают возникать, предоставьте более подробную информацию о конфигурации и состоянии системы, чтобы можно было помочь вам более точно.

Оцените материал
Добавить комментарий

Капча загружается...