---
title: 'Как ограничить размер папки /var/log (logrotate) | Zomro'
description: 'В ОС Linux, почти все программы и сервисы, которые работают в фоне, Apache, Nginx, MySQL и т.д., пишут свое состояние, результат работы и ошибки в лог файлы.'
image: 'https://dx86q6oq7ry0e.cloudfront.net/uploads/media/blog/a48@server-panel.net/2022/08/01/1661940776_1.png'
---

![opened image]()

  * [Zomro](https://zomro.com/rus/)
  * [FAQ](https://zomro.com/rus/blog/faq/)
  * Как ограничить размер папки /var/log (logrotate) 



# Как ограничить размер папки /var/log (logrotate)

14-08-2022

В ОС Linux, почти все программы и сервисы, которые работают в фоне, Apache, Nginx, MySQL и т.д., пишут свое состояние, результат работы и ошибки в лог файлы. Расположение логов размещено в стандартной папке /var/log. Если на сервере очень много сайтов, или же не верно настроены сервисы, сайты имеют множество ошибок, данная папка будет быстро наполняться и может "забить" все свободное место на сервере.   
  
Logrotate — это утилита, которая управляет чередованием и сжатием файлов журналов. Что поможет уберечь владельцев серверов от остановки сервисов, и недоступности сайтов.   
  
В этой статье мы рассмотрим как настроить ротацию журналов, что бы место на диске не забивалось. Настроим стандартную конфигурацию Logrotate, и так же увидим как подстроить под свои потребности.   
  
В большинстве дистрибутивов данная утилита установлена по умолчанию. Версию можно проверить коммандой:  

    
    
    logrotate --version

  
![Как ограничить размер папки /var/log \(logrotate\) - 1](https://dx86q6oq7ry0e.cloudfront.net/uploads/media/blog/a48@server-panel.net/2022/08/01/1661940776_1.png)  
Если у вас не установлен logrotate, то его можно установить следующими коммандами:  
  
На Ubuntu:
    
    
    apt install logrotate

  
На Centos:
    
    
    yum install logrotate

  
  
Конфигурационные файлы logrotate размещены:
    
    
    /etc/logrotate.conf и каталоге /etc/logrotate.d
    

  
В файле**/etc/logrotate.conf** размещены общие настройки, по умолчанию.   
  
![Как ограничить размер папки /var/log \(logrotate\) - 2](https://dx86q6oq7ry0e.cloudfront.net/uploads/media/blog/a48@server-panel.net/2022/08/01/1661977906_2.png)  
В папке **/etc/logrotate.d/** \- размещены конфигурационные файлы, программ, сервисов, ротацию логов которых мы будем осуществлять.   
  
  
**Важно!!!  
Все конфигурационные файлы, которые размещены в папке /etc/logrotate.d, будут переопределять значения которые установлены по умолчанию в конфигурационном файле ****/etc/logrotate.conf**  
  
![Как ограничить размер папки /var/log \(logrotate\) - 3](https://dx86q6oq7ry0e.cloudfront.net/uploads/media/blog/a48@server-panel.net/2022/08/01/1661978286_3.png)  
  
И так, допустим нам необходимо сделать ротацю логов для **vestacp**. Как видим для нее уже автоматически создан файл конфигурации со стандартными настройками.   
  
![Как ограничить размер папки /var/log \(logrotate\) - 4](https://dx86q6oq7ry0e.cloudfront.net/uploads/media/blog/a48@server-panel.net/2022/08/01/1661979270_4.png)  
Разберем директивы:  
  
**/usr/local/vesta/log/*.log** \- это путь к файлам которые необходимо ротировать. ***** \- указывает на то что будут зачищены все файлы в данной папке**/usr/local/vesta/log** с расширением **.log**  
  
**missingok** \- не писать сообщение об ошибке, если файл журнала отсутствует.  
**notifempty** \- не менять файл журнала, если он пуст.  
**size 30k** \- гворить о том что, пока размер лога не превысит **30k** он не будет ротироваться. (Можно выставить свое значение)  
**yearly -** ротация раз в год. Это отменяет значение по **weekly** по молчанию. (Посмотрим еще раз)  
  
  
![Как ограничить размер папки /var/log \(logrotate\) - 5](https://dx86q6oq7ry0e.cloudfront.net/uploads/media/blog/a48@server-panel.net/2022/09/01/1661981338_5.png)  
**create 0600 root root** \- создает файл после ротирования с правами 0600 владельцем и групой root.  
  
Ниже приведены остальные директивы, которые можно использоваться для настройки ротации. Множество других директив можно посмотреть по коммнанде: 
    
    
    man logrotate

  
Добавим в стандартный файл:  
  
**rotate 2** \- таким образом будут сохраняться 2 старых журнала. Что отменяет значение по умолчанию **rotate 4**  
**daily -** ротация раз в день. Это отменяет значение по умолчанию, один раз в неделю **weekly**.  
Добавим **compress** \- что бы сжимать ротированные файлы. (В данном случае будет использоваться **gzip** , это будет добавлять к файлам **.gz**)  
  
Теперь нужный нам конфиг выглядит так:  
  
![Как ограничить размер папки /var/log \(logrotate\) - 6](https://dx86q6oq7ry0e.cloudfront.net/uploads/media/blog/a48@server-panel.net/2022/09/01/1661983344_6.png)  
Эти и другие значения, которые описаны в **man logrotate** , вы можете добавить в другой нужный вам файл в папке **/etc/logrotate.d/** или же подправить те которые уже есть**.**  
  
Что бы настроить **_logrotate_** для другой нужной вам службы, или той службы в которой нет конфигурационного файла в папке **/etc/logrotate.d/,** можете просто создать его.   
  
После создания/изменения можем его запустить коммандой:
    
    
    logrotate -f  [путь к файлу конфигурации]

  
Теперь вы можете добавить/изменить нужные конфиги, что бы не забивалось свободное место на сервере.  
  
Безперебойной вам работы.   


Похожие статьи

[VestaCP: База данных без префикса пользователя.](https://zomro.com/rus/blog/faq/214-vestacp-baza-dannyh-bez-prefiksa-polzovatelja) [Сброс пароля на дистрибутиве Ubuntu/Debian с помощью GRUB](https://zomro.com/rus/blog/faq/158-sbros-parolja-na-distributive-ubuntu-debian-s-pomoschju-grub) [Как посмотреть логи shutdown и restart в Windows Server](https://zomro.com/rus/blog/faq/258-kak-posmotret-logi-shutdown-i-restart-v-windows-server) [ISP: Как установить nginx и включить для домена сжатие и кэширование](https://zomro.com/rus/blog/faq/77-isp-kak-ustanovit-nginx-i-vklyuchit-dlya-domena-szhatie-i-keshirovanie) [Сброс пароля на Windows Server 2016 - 2012](https://zomro.com/rus/blog/faq/149-sbros-parolja-na-windows-server-2012-2016)

[ Сервер для Forex от €7.95/мес ](/rus/server-for-forex)
