


How to use Systemd and Crontab to regularly back up data in Linux systems
How to use Systemd and Crontab to regularly back up data in a Linux system
In daily work and life, data backup is very important. Whether you are an individual user or a business user, regular backup of data can avoid the risk of data loss and damage. In Linux systems, we can use Systemd and Crontab to automatically back up data regularly. This article will use specific code examples to introduce how to use Systemd and Crontab to implement scheduled backup.
Systemd is a Linux system initialization system and manager, which provides a more advanced way to manage system processes. By using Systemd's timer function, we can implement scheduled tasks. Crontab is a program for executing tasks on a scheduled basis. We can implement scheduled backup by editing the Crontab configuration file.
The following are specific steps and code examples:
- Create a backup script
First, we need to create a script for backing up data. The script can be any executable script file, such as Shell script, Python script, etc. Please ensure that the script can implement the data backup function and be saved in a suitable location.
For example, we create a Shell script named backup.sh to back up all files in the /data directory:
#!/bin/bash backup_dir="/path/to/backup/" source_dir="/data/" timestamp=$(date +%Y%m%d%H%M%S) backup_file="${backup_dir}/backup_${timestamp}.tar.gz" tar -czvf ${backup_file} ${source_dir}
This script will backup all files in the /data directory The file is packaged into a tar.gz file named with the current timestamp, and the backup file is saved in the specified directory.
Please modify the path and file name in the backup script according to actual needs.
- Create Systemd timer
Next, we need to create a Systemd timer unit file to execute the backup script regularly.
Execute the following command in the terminal to create a Systemd timer unit file named backup.timer:
sudo nano /etc/systemd/system/backup.timer
In the opened file, enter the following:
[Unit] Description=Backup Service Timer [Timer] OnCalendar=daily Persistent=true [Install] WantedBy=timers.target
Save and close the file.
This timer will perform a backup task once a day. If you need to customize the execution time of scheduled tasks, please modify the parameters behind OnCalendar according to your needs.
- Create Systemd service
Then, we need to create a Systemd service unit file to specify the backup script to be executed.
Execute the following command in the terminal to create a Systemd service unit file named backup.service:
sudo nano /etc/systemd/system/backup.service
In the opened file, enter the following:
[Unit] Description=Backup Service [Service] ExecStart=/path/to/backup.sh [Install] WantedBy=multi-user.target
Please replace the path in ExecStart with the actual backup script path.
Save and close the file.
- Enable and start timers and services
After completing the above steps, we need to enable and start timers and services.
Execute the following command in the terminal to enable and start the timer and service:
sudo systemctl daemon-reload sudo systemctl enable backup.timer sudo systemctl start backup.timer
Now, the Systemd timer will automatically perform the backup task according to the configured time.
- Use Crontab to back up regularly
In addition to using Systemd timer, we can also use Crontab to back up data regularly.
Execute the following command in the terminal to edit the current user's Crontab configuration file:
crontab -e
Add the following content to the end of the file:
0 0 * * * /path/to/backup.sh
Save and close the file.
This Crontab configuration will perform backup tasks at 12 am every day. You can customize the execution time of backup tasks according to your needs.
Now, we have completed the steps of using Systemd and Crontab to regularly back up data in the Linux system. Whether you use Systemd timer or Crontab, you can implement scheduled automatic backup. Just choose the appropriate method according to actual needs.
I hope this article will be helpful to you, and I wish you good luck with your data backup work!
The above is the detailed content of How to use Systemd and Crontab to regularly back up data in Linux systems. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











Summary of some reasons why crontab scheduled tasks are not executed. Update time: January 9, 2019 09:34:57 Author: Hope on the field. This article mainly summarizes and introduces to you some reasons why crontab scheduled tasks are not executed. For everyone Solutions are given for each of the possible triggers, which have certain reference and learning value for colleagues who encounter this problem. Students in need can follow the editor to learn together. Preface: I have encountered some problems at work recently. The crontab scheduled task was not executed. Later, when I searched on the Internet, I found that the Internet mainly mentioned these five incentives: 1. The crond service is not started. Crontab is not a function of the Linux kernel, but relies on a cron.

How to use Systemd and Crontab to implement parallel execution of tasks in a Linux system. In a Linux system, parallel execution of tasks is one of the important means to improve system efficiency and performance. This article will introduce how to use Systemd and Crontab tools to implement parallel execution of tasks in a Linux system, and provide specific code examples. 1. Introduction to Systemd Systemd is a tool used to manage the startup process and service management of Linux systems. via configuration

Linux annotation crontab files and crontab execution sh pitfalls. It turns out that many crontabs are written under Linux to perform certain tasks regularly. Now there are the following requirements: Requirement: It is to annotate certain crontab tasks. Method: Just add the crontab to be canceled. Just add '#' before the task. e.g.54**sunecho"runat5after4everysunday"Comment: #54**sunecho"runat5after4everysunday"It's that simple. Encounter pit 1, look at the following example recently

How to view the crontab error log in Linux: 1. View the file directory "/var/log/cron"; 2. Use the "tail -f /var/log/cron" command to view the tail of the file in real time; 3. Use "vim /var /log/cron" command can be viewed through an advanced text viewer.

Main features of MySQL 5.7: Native support for Systemd Better performance: Better optimization for multi-core CPUs, solid-state drives, and locks Better InnoDB storage engine More robust replication function: Replication brings no data loss at all , traditional financial customers can also choose to use the MySQL database. In addition, GTID online smooth upgrade also becomes possible with a better optimizer: the significance of optimizer code reconstruction will bring huge improvements in this version and subsequent versions, Oracle officials are solving the biggest problem before MySQL native JSON type Support better geographical information service support: InnoDB natively supports geographical location type, supports GeoJSON, GeoHash special

How to use Systemd and Crontab to automatically restart applications in Linux systems. In Linux systems, Systemd and Crontab are two very important tools. Systemd is a system and service manager, while Crontab is a tool for automating tasks at specified times. This article will use a specific example to introduce how to use Systemd and Crontab to automatically restart applications in Linux systems. Suppose we have a No

How to use Systemd and Crontab to set the priority of scheduled tasks in a Linux system requires specific code examples. In Linux systems, we often need to set up scheduled tasks to perform some repetitive operations, such as scheduled backup files, regular log cleaning, etc. However, different tasks may have different priorities, some tasks require higher priority to ensure they are executed on time, while some tasks can be executed later. This article will introduce how to use Systemd and Crontab to set timings

How to use Systemd and Crontab to implement task dependencies in Linux systems Introduction: In Linux systems, task scheduling is a very important part, which can ensure that each task is executed according to the scheduled time and order. Systemd and Crontab are two commonly used task scheduling tools, and they are suitable for different scenarios. This article will introduce how to use Systemd and Crontab to implement task dependencies and provide specific code examples. 1. Systemd
