Просмотров: 568 | Комментариев: 10

11.10.2019

NAS Synology автоматическое удаление старых файлов через bash скрипт

Linux Synology bash backup NAS
Содержание статьи "NAS Synology автоматическое удаление старых файлов через bash скрипт":

NAS Synology

Данную задачу я буду реализовывать на том сервере, который у меня есть в данный момент: Synology RS2416+ с операционной системой конечно же DSM но версии 6.2-23739. Хотя на всех предыдущих и последующих версиях данный метод будет себя чувствовать просто замечательно и работать как часы!

Немного о методе

Так как система DSM (DiskStation Manager) основана на всеми любимом Linux, то и прекрасно понимает bash команды. Собственно мы собираемся прописать простейший скрипт для автоматического удаления файлов старше N количества дней. Вообще удаление старых файлов при резервном копировании не менее важная функция после создания самого резервного копирования. Думаю вопросов "Почему" у читающего человека не должно возникать.

Пишем скрипт для планировщика задач Synology

Для написания скрипта будем использовать команду FIND, так как у неё очень гибкие возможности. Если есть желание более подробно с ней ознакомится, то не составит труда эту информацию найти через поисковик. 😎 Я для вас подготовил небольшую фичу для формирования скрипта (смотрите ниже). Пример скрипта планировщика Synology:


find /volume1/ИМЯ_ДИРЕКТОРИИ/ -mmin +10080 -delete

Почему в минутах? Точно не знаю почему, но -mtime +7 никак не хотел работать. Выводилась ошибка:

find: `+7': No such file or directory

Настройка расписания скрипта удаления старых файлов с NAS Synology

И так. Скрипт есть, осталось дело за малым — настройка планировщика задач. Заходим на NAS Synology и далее в раздел Панель управления 👉🏻 Планировщик задач 👉🏻 Создать 👉🏻 Запланированная задача 👉🏻 Скрипт, заданный пользователем Даём имя скрипту в основной вкладке, а затем вставляем сгенерированный ранее нами скрипт в поле Скрипт, заданный пользователем по вкладке Настройки задач. Теперь настраиваем расписание через вкладку Расписание (логично же 😂). Думаю там у вас вопросов не возникнет, а если вдруг, то пишите в комментарии!

Панель управления NAS Synology
Расписание задачи

Если вы затрудняетесь на каком у вас разделе лежит та или иная папка общего доступа, то вы можете посмотреть тут: Панель управления 👉🏻 Папка общего доступа. Там под названием каждого каталога будет указано на каком разделе он находится!

Заключение

Вот и всё! Вы за 5 минут настроили скрипт удаления старых файлов с NAS сервера Synology по расписанию. Было просто.


Linux Synology bash backup NAS

Комментарии (10)

  1. Дмитрий 30 декабря 2019, 11:26 # 0
    Доброго времени суток, скрипт отрабатывает прекрасно, только после выходных суб. вс. папки для сканирования не доступны, слетают права и помогает только пересоздание папок
    1. itlocate.ru 30 декабря 2019, 13:14 # 0
      От какого пользователя запускаете задачу (я запускаю от root)? Вот как у меня на двух Synology настроен скрипт (https://prnt.sc/qhgg75) всё проходит без ошибок и папки всегда остаются доступными. Попробуйте обновить систему и посмотреть как будет себя вести скрипт.
      1. Дмитрий 09 января 2020, 11:52 # 0
        Скрипт отрабатывает тоже от root ошибок нет просто папка SCAN становится не доступна, в течении недели если в нее сканируют то все прекрасно чистится, а после выходных суб. вс. папку не видит не один скан, а когда заходишь в раздел прав доступа папки SCAN там нет ни пользоков ни групп, помогает только пересоздания папки, сейчас отрубил этот скрипт и папка работает но соответственно не чистится. DSM 6.2.2-24922 Update 4 новее нет версии, модель RS816
        1. itlocate.ru 09 января 2020, 15:21(Комментарий был изменён) # 0
          А можно скрины посмотреть как у вас настроено расписание? Дмитрий, можете прислать доступ к NAS мне на почту (см в разделе контакты), если есть такая возможность конечно
          1. Дмитрий 13 января 2020, 15:34 # 0
            Делюсь скрином расписания prnt.sc/qn0l8i
            1. itlocate.ru 13 января 2020, 15:49 # 0
              Может быть конфликтуют задачи. Я так понял, что ты хочешь сначала удалить, а потом очистить корзину. Верно? Сделай как у меня на этом скрине и на этом скрине (разница в 40 минут перед запуском следующей задачи). А чтобы хомячки не паниковали создай тестовую папку и в течении недели/двух сам понаблюдай.
              1. Дмитрий 15 января 2020, 09:20 # 0
                Да, я тоже склоняюсь к тому что задачи конфликтуют, спасибо за совет попробую затестить отпишу после теста
                1. Дмитрий 15 января 2020, 11:47 # 0
                  А есть еще вопрос а на USB диски как применить эту задачу? Есть еще 2 а USB для Backup как бы их победить, чтоб не ручками))
                  1. itlocate.ru 15 января 2020, 14:34 # 0
                    Там по идеи том (volume1, 2, 3 ...) меняется
                    find /volume2/scan_usb/ -mmin +10080 -delete
                    посмотри в диспетчере хранения
                  2. Дмитрий Вчера в 14:42 # 0
                    Не помогло все ровно после суб. вс. папки упали, попробую убрать корзину и исключу суб. вс