Написать скрипт для бэкапирования данных пользователей на сетевой диск (SMB) (тендер № 4964)
Поделиться тендером:
Специализация:
|
Статус тендера:
Закрыт
|
Описание задания:
Скрипт должен копировать файлы из папок пользователей ( к примеру Desktop и Documents ) на отдельный компьютер по сети, а так же стирать старые копии на удаленном SMB по истечению времени хранения.
Результат работ: инструкция + файлы для разворачивания скрипта на десктопной Windows ver 10/11.
Запуск: Скрипт запускается регламентным заданием от пользователя с правами локального Администратора. Машина может быть как в домене так и в рабочей группе. При запуске скрипту передается файл настроек.
Пример строки запуска: backup.py config1.cfg
Формат файла настроек:
* Root: Корневая папка по которой скрипт работает ( К примеру C:\Users )
* RootName: Имя используемое при создании удаленной папки ( К примеру: COMP2_Users ). Описание ниже подробнее.
* Names: Имена папок по которым он будет искать файлы пользователей
( К примеру Desktop,Documents )
* ExMask: - Маски файлов которые не рассматриваются ( *.ini, *.cfg )
* ExSize: - Размер файла выше которого пропускаем в Mb ( Пример 100 )
* Mode: - Режим работы 1-Полный бэкап 0-Инкремент(только файлы с изменениями за последние 24 часа )
* DaysCheck: Количество дней после которых файлы могут удаляться на SMB диске
* MinCopy: Минимальное количество копий ( по имени файла ) которое сохраняем вне зависимости от предыдущего пункта.
* MaxDate: Количество дней для безусловного удаления файлов.
SMBPath: Путь для копии Пример: \\CompName\ShareFolderBackup
User: логин удаленной машинки Пример: BackupUser
Pass: Пароль Пример: Good@Pass
***
Алгоритм работы
1. Проходим по подпапкам корневой папки локальной машины и получаем доступ для чтения везде где ранее не получили ( со времени предыдущего запуска могли быть добавлены пользователи).
2. Составляем список файлов для подпапок в Root совпадающими c Names и не попадающие под исключающие фильтра ExMask ExSize Mode(при инкрементном бэкапе)
Полный путь к файлу + Имя файла
3. Если список не пустой создаем на удаленном пути папку ГОД_МЕСЯЦ_ДЕНЬ и записываем в нее полученную структуру файлов и папок в которых они располагаются. Вся найденная структура в ROOT записывается в созданную папку ГОД_МЕСЯЦ_ДЕНЬ\RootName\.
4. Проверяем что весь список включая открытые в момент копирования файлы были успешно скопированы. Пишем запись в лог файл в папке скрипта ( режим дополнение ). ДАТА #УСПЕХ Файлы скопированы или ДАТА #ОШИБКА - достаточно пути к первому файлу где она была обнаружена.
5. Чистим старые файлы на удаленном хранилище.
Для этого составляем список файлов у которых превышено значение DaysCheck на SMBPath:
Уникальным значением в списке является полный путь к файлу начиная с подпапки RootName ( не учитываем дату ) / Флаг превышения DaysCheck/Флаг превышения MaxDate.
Сразу удаляем файлы со сроком хранения выше MaxDate от сегодняшнего дня без исключения.
Для оставшихся строк у которых дата создания меньше MaxDate считаем их уникальное количество
Для строк превышающих значения MinCopy оставляем только MinCopy самых новых файлов. Остальные так же удаляем.
Спасибо за внимание к проекту. Оперативно постараюсь ответить на возникшие вопросы.
Для рассмотрения заявки обязательно укажите примерные сроки и стоимость.
|
Ориентировочная стоимость:
Требуется расчёт
|
Тип субъекта:
Физическое лицо
|
Варианты оплаты:
Без предоплаты
|
Место работы:
Дистанционно
|
Дата публикации:
31.03.2023 15:00
|
Просмотров: 344
Место для Вашей рекламы ;) Хотите разместить рекламу ваших услуг, сервиса или компании в данном месте?
7 дней — 1500 руб.; 14 дней — 2700 руб.; 30 дней — 5700 руб.
Пишите на почту: freten.site@yandex.ru
Похожие задания и вакансии
Тендер № 6726
Разработка чат-бота для партнерской программы
Схема работы в приложенном файле
Участник запускает бота и активирует его. После этого он получает всю необходимую информацию о партнерской программе, включая список ...
Открыт
Просмотров: 228
Опубликован: 20.05.2025 11:38
Опубликован: 20.05.2025 11:38
Тендер № 6600
Доработка модуля DLE с парсингом и автозагрузкой
Для начала выкачиваем файлы
Проверяя, что бы не было дублей.
По крону парсится первая страница регулярно и добавляются задачи на скачивание торрента (magnet link) * возможно ...
Открыт
Просмотров: 268
Опубликован: 05.05.2025 05:01
Опубликован: 05.05.2025 05:01