Automated python backup program

Read full text
Authors: Ilija Barukčić
Cited by: 0

Abstract

This simple Python program implements an easy-to-use, multi-profile, automated backup system with both a graphical user interface (GUI) and a command-line interface (CLI).It allows users to define multiple backup profiles, each specifying source directories, a target directory, file name prefixes, and a weekly schedule.The application creates ZIP archives of selected source folders and writes detailed log files documenting each backup run.An optional feature generates an additional date-stamped copy of the archive for long-term versioning.A file-based locking mechanism prevents concurrent backup executions.The GUI, built with Tkinter, enables intuitive configuration, profile management, and manual backup execution.Configuration data are stored persistently as JSON files and can be reloaded at any time.The program integrates with the Windows Task Scheduler, enabling automated execution with elevated system privileges.A progress bar provides real-time feedback during archive creation.The CLI mode supports unattended execution, making the system suitable for scheduled or headless environments.The application is designed to be packaged as a standalone executable using PyInstaller.The software has been tested 2026 on macOS and Windows 11, demonstrating cross-platform compatibility and reliability.

Publication details

Journal / source
Zenodo (CERN European Organization for Nuclear Research)
Publication date
8 January 2026