knx'answer - это хорошо, но я бы предложил переименовать журнал и создать новый, чтобы можно было перезапустить apache, не дожидаясь сжатия журнала доступа, что может занять некоторое время, если оно большое.
нужен доступ к ssh
Сначала переименуйте текущий файл журнала:
mv /var/log/apache/access.log /var/log/apache/access.log.1
Во-вторых, создайте новый файл журнала и предоставьте те же разрешения, владельца / группу и контекст selinux, что и в исходном:
touch /var/log/apache/access.log
chown --reference=/var/log/apache/access.log.1 /var/log/apache/access.log
chmod --reference=/var/log/apache/access.log.1 /var/log/apache/access.log
restorecon --reference=/var/log/apache/access.log.1 /var/log/apache/access.log
(вероятно, для этого нужен root)
Далее перезапустите apache
Затем распакуйте старый файл (коэффициенты сжатия текстовых файлов действительно хорошие). Если мы предполагаем, что файл называется /var/log/apache/access.log
, то сделайте это:
gzip -c /var/log/apache/access.log.1 > /var/log/apache/access.log.1.gz
эти 4 пункта - то, что logrotate делает автоматически.