Как архивировать все вновь созданные файлы в каталоге каждые два часа и перемещать эти файлы в другой каталог

Если вы используете CentOS 7, вам нужно изменить файл /etc/security/pwquality.conf, он заменяет Cracklib. Просто раскомментируйте строки, которые вы хотите использовать.

Полную информацию см.man pwquality.conf

-2
12.08.2019, 09:40
2 ответа
find your_path -t f -mmin 5 -exec tar -zcvf your_compress_file.tar.gz {} +

Вы можете создать скрипт и поместить его в crontab.

0
28.04.2021, 23:30

Напишите сценарий и настройте его для запуска с заданиями cron или системными таймерами. Включите в сценарий соответствующую команду tarи используйте флаг исключения для tar, чтобы избежать тарирования папки /tar/bkp. И используйте findс флагом -mmin 120, чтобы ограничить файлы, заархивированные файлами, измененными за последние 120 минут.

Например:

#!/bin/bash
source='/kit'
dest='/kit/bkp'
find "${source}" -mmin 120 -exec \
  tar cpf "${dest}/$(date +'%Y%m%d%H').tar" --exclude="${dest}" {} +

Этот сценарий будет выполняться с параметром /bin/bash, определяет исходный и целевой пути, выбирает только те файлы, которые были изменены за последние 120 минут, а затем создает tar-файл с именем года -месяца -день -час в папке назначения с сохранением разрешений и прав собственности и исключением папки назначения.

Затем введите crontab -eкак пользователь с доступом на чтение и выполнение к /kit... доступ на запись, чтение и выполнение к /kit/bkp... и разрешение на чтение и выполнение скрипта, который мы создали ранее. В файле cron добавьте такую ​​​​строку:

0 */2 * * * /path/to/your/script.sh > /dev/null

Сценарий будет запускаться каждые 2 часа в течение часа и передавать стандартный вывод на /dev/null, чтобы сценарий оставался тихим, если только он не выдает ошибку. Cron должен сообщить вам об ошибке.

0
28.04.2021, 23:30

Теги

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