Здравствуйте, подскажите как очистить лог сквида. ОС Debian 6, squid 3.1ввожу squid -k rotate
bash: squid: команда не найдена
> Здравствуйте, подскажите как очистить лог сквида. ОС Debian 6, squid 3.1
> ввожу squid -k rotate
> bash: squid: команда не найденаА вы от имени какого пользователя пытаетесь выполнить команду? Установлен ли squid вообще?
Если установлен, то попробуйте ввести полный путь к исполняемому файлу.
>> Здравствуйте, подскажите как очистить лог сквида. ОС Debian 6, squid 3.1
>> ввожу squid -k rotate
>> bash: squid: команда не найдена
> А вы от имени какого пользователя пытаетесь выполнить команду? Установлен ли squid
> вообще?
> Если установлен, то попробуйте ввести полный путь к исполняемому файлу.root@ts:/home/uzer# cd /usr/share/squid
root@ts:/usr/share/squid# squid -k rotate
bash: squid: команда не найдена
root@ts:/usr/share/squid#
> root@ts:/home/uzer# cd /usr/share/squid
> root@ts:/usr/share/squid# squid -k rotate
> bash: squid: команда не найдена
> root@ts:/usr/share/squid#Если вы находитесь в одном каталоге с исполняемым файлом, то команду следует
предварять указанием на текущий каталог:
./squid -k rotateТочка в начале команды этот самый текущий каталог и обозначает. Дело в том, что
по умолчанию текущий каталог исключается из пути поиска исполняемых файлов. Это
продиктовано соображениями безопасности, на случай, если злоумышленник какой-нибудь
подкинул в домашний каталог пользователя зловредный скрипт с именем, скажем, "ls".
Тогда пользователь, находясь в своем каталоге при вводе команды "ls" заставит
выполниться не /usr/bin/ls, например, а скрипт злобного хацкера. :-)
>[оверквотинг удален]
>
> ./squid -k rotate
>
> Точка в начале команды этот самый текущий каталог и обозначает. Дело в
> том, что
> по умолчанию текущий каталог исключается из пути поиска исполняемых файлов. Это
> продиктовано соображениями безопасности, на случай, если злоумышленник какой-нибудь
> подкинул в домашний каталог пользователя зловредный скрипт с именем, скажем, "ls".
> Тогда пользователь, находясь в своем каталоге при вводе команды "ls" заставит
> выполниться не /usr/bin/ls, например, а скрипт злобного хацкера. :-)Спасибо, дорогой товарищ. Подскажите еще - как автоматизировать процесс.
>>[оверквотинг удален]
>> ./squid -k rotate
>> Точка в начале команды этот самый текущий каталог и обозначает. Дело в
>> том, что
> Спасибо, дорогой товарищ. Подскажите еще - как автоматизировать процесс.http://sourceforge.net/p/smoothwall/git/ci/7e7762606878082cb...
С путями - сам.
> С путями - сам.Тут сложность. Либо сервис логируется через сислог, и тогда лог ротируется чем попало, вроде newsyslog/logrotate, либо сервис сам открывает нужные файлы, и его нужно дергать отдельно для переоткрытия файловых дескрипторов.
Сквид ротирует логи сам, и сам же корректно переставляет фд на свежесозданный лог, logrotate тут излишен.
> Спасибо, дорогой товарищ. Подскажите еще - как автоматизировать процесс.
# echo "6 23 1 * * root /usr/share/squid -k rotate" >> /etc/crontab
Это означает "первого числа каждого месяца в 6:23 утра от имени рута выполнять ротацию"Как изменить периодичность и время вызова - читать `man crontab`