#!/bin/bash # ------------------------------------------------------- # Скрипт для настройки автоматической очистки логов при старте системы # 1. Создает systemd-сервис для очистки логов. # 2. Сервис очищает: # - Историю команд bash # - Системные логи (journalctl) # - Логи SSH # - Логи в /var/log # - Файлы wtmp, btmp # 3. Скрипт настроен на запуск при старте системы. # ------------------------------------------------------- # Путь к файлу systemd-сервиса SERVICE_FILE="/etc/systemd/system/cleanlogs.service" # Создание systemd-сервиса для очистки логов echo "[Unit] Description=Очистка логов при старте After=sysinit.target [Service] Type=oneshot ExecStart=/bin/bash -c 'history -c && > ~/.bash_history && journalctl --flush --rotate && journalctl --vacuum-time=1s && find /var/log -type f -exec truncate -s 0 {} \; && rm -rf /var/log/journal/* && truncate -s 0 /var/log/wtmp /var/log/btmp' RemainAfterExit=true [Install] WantedBy=multi-user.target" > $SERVICE_FILE # Перезагружаем конфигурацию systemd systemctl daemon-reload # Включаем сервис для старта при загрузке системы systemctl enable cleanlogs.service # Выводим сообщение об успешной настройке echo "Скрипт настройки завершён успешно. Сервис для очистки логов будет запускаться при старте системы." echo "Для проверки статуса сервиса используйте команду: sudo systemctl status cleanlogs.service" echo "Для отключения сервиса: sudo systemctl disable cleanlogs.service"