Задать вопрос
@aljo222
В процессе обучения веб-разработке

Как добавить задачу в крон на очистку папки через ssh?

Здравствуйте!
Руководство дало задачу, хотя я категорически отказывался и предупредил, что я не знаю как это делается, но поперек зп не попрешь.
У нас есть сайт, формирующий pdf-документы и прочее. Эти файлы сохраняются в папке temporary в каталоге сайта.
Задача стоит следующая - удалять все файлы из папки старше 3 дней. Запускать раз в 3 дня в 03:00 соответственно.
Бэкап я сделал, но рисковать не хочется без советов знатоков. Пожалуйста, поправьте.

Правильно ли я понимаю порядок и правильно ли составлена команда:
1) Подключусь к серверу по SSH
2) sudo crontab -e
3)
0 3 */3 * * find /home/usr1a2kj4/site.ru/assets/temporary -type f -mtime +3 -delete
  • Вопрос задан
  • 333 просмотра
Подписаться 2 Простой 5 комментариев
Решения вопроса 2
smorman
@smorman
When In Rome do as The Romans do...
После п. 1) пункт 2) будет таким:
- если crontab ни разу не запускался в системе, то выполнить так:
echo -e '0 3 */3 * * find /home/usr1a2kj4/site.ru/assets/temporary -type f -mtime +3 -delete' | sudo crontab -


- а если crontab уже запускался в системе, то:
sudo sh -c "echo '0 3 */3 * * find /home/usr1a2kj4/site.ru/assets/temporary -type f -mtime +3 -delete' >> /var/spool/cron/crontabs/root"; sudo /etc/init.d/cron restart


и усё...
Ответ написан
Комментировать
Oxyd
@Oxyd
Linux enthusiast
Можно решить задачу при помощи механизмов systemd (man tmpfiles.d)
Например создать файл /etc/tmpfiles.d/site_3day_clean.conf со следующим содержимым:
e  /home/usr1a2kj4/site.ru/assets/temporary - - - 3d


На всякий случай проверить активен-ли сооствествующий таймер. systemctl status systemd-tmpfiles-clean.timer должен быть в статусе active
Единственное что стандартный таймер привязан к старту системы, но его вполне можно отредактировать под свои нужды при помоши systemctl edit systemd-tmpfiles-clean.timer
вписав в окне редактора, там где указано комментариями, примерно следующее..
[Timer]
OnBootSec=
OnCalendar=03:00
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
justhostRU
@justhostRU
вы можете развернуть ВМ, и проверить команды на ней, если боитесь потерять данные.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы