---
# System prepended metadata

title: Attestation 1

---

# Attestation 1
создаем директорию для задачи
mkdir /lessons/attestation1
переходим на эту директорию
cd /lessons/attestation1
создаем скрипт
vim ./clean.sh 

#!/bin/bash
#Объявляем переменную даты для лога
date=$(date +"%y-%m-%d %T")

#Объявляем переменную рутовой партиции для логов
storagelog=$(df --output=pcent / | awk '{printf $1}')

#Объявляем переменную рутовой партиции для сравнения
storage=$(df --output=pcent / | sed s/[^0-9]//g)

#Записываем Use% и дату в лог
echo $storagelog $date  >> /var/log/clean_sh.log

#Переменная для сравнения
use=60

#Сравниваем две знаяения, если рутовый раздел забит больше чем $use то чистим логи и кэш yum

if (($storage > $use))
then
cat /dev/null > /var/log/messages | rm -rf /var/log/messages-* | yum clean all
fi


![](https://i.imgur.com/u97sdKN.png)


# Проверка работы
Видим что есть логи системы 

![](https://i.imgur.com/B9tsh1x.png)

![](https://i.imgur.com/bNO8BbP.png)

Меняем в скрипте переменную use на меньшее значение 
![](https://i.imgur.com/zjO4hvH.png)

Сохраняем и запускаем скрипт и видим что логи очистились
![](https://i.imgur.com/S895MLe.png)




# Cоздаем конфиг для logrotate
vim /etc/logrotate.d/cleanlog

/var/log/clean_sh.log {
daily
dateext
rotate 4
size 2K
compress
delaycompress
}

![](https://i.imgur.com/NiuNIkt.png)
# Проверка работы
![](https://i.imgur.com/odT7JTR.png)



# Создаем задачу в кроне
crontab -e
*/10 * * * * sh /lessons/attestation1/clean.sh
![](https://i.imgur.com/kiuECnv.png)
systemctl reload crond
# Для проверки поставил на запуск каждые 1 мин
cat /var/log/clean_sh.log
![](https://i.imgur.com/AhHNyTF.png)


