当前位置:首页 > 行业动态 > 正文

linux如何使用restic和systemd自动备份

您可以使用 systemd 和 restic 来自动备份 Linux。以下是一些步骤:,,1. 安装 restic:在终端中运行以下命令: sudo dnf install restic,2. 创建一个 systemd 服务文件:在 /etc/systemd/system 目录下创建一个名为 backup.service 的文件,并将以下内容添加到该文件中: [Unit],Description=Backup using restic,After=network.target,,[Service],Type=simple,User=root,ExecStart=/usr/bin/restic backup --repository /path/to/your/repo,Restart=on-failure,,[Install],WantedBy=multi-user.target,3. 启用并启动服务:运行以下命令以启用并启动服务: sudo systemctl enable backup.service && sudo systemctl start backup.service

什么是Restic?

Restic是一个用于备份和恢复文件系统的命令行工具,它使用rsync协议进行增量备份,可以高效地存储大量数据,并且支持加密保护,Restic可以在本地或者远程服务器上运行,支持多种文件系统,如ext4、xfs等,Restic还具有版本控制功能,可以轻松跟踪文件系统的变更历史。

如何安装Restic?

在Linux系统中,可以使用以下命令安装Restic:

对于Debian/Ubuntu系统
sudo apt-get install restic
对于CentOS/RHEL系统
sudo yum install restic

如何配置Systemd管理Restic服务?

1、创建一个名为restic.service的Systemd服务文件:

sudo nano /etc/systemd/system/restic.service

2、将以下内容粘贴到restic.service文件中:

[Unit]
Description=Restic backup service
After=network.target
Documentation=https://restic.readthedocs.io/en/latest/020_basics/030_backups.html
Requires=network-online.target
Conflicts=restic-restore.service
AssertFileIsExecutable=/usr/local/bin/restic
[Service]
Type=simple
WorkingDirectory=/path/to/your/backup/directory
ExecStart=/usr/local/bin/restic -r /path/to/your/repo --no-encryption --json backup "${DAEMON_NAME}"
Restart=on-failure
RestartSec=5s
LimitNOFILE=65536
TimeoutStopSec=0
KillMode=process
User=your_username
Group=your_groupname
EnvironmentFile=-/etc/default/restic
StandardOutput=journal+console
StandardError=journal+console
SyslogIdentifier=restic
SendSIGKILL=no
SendSIGHUP=yes
Setgid=true
Setuid=false
CapabilityBoundingSet=CAP_SYS_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_ADMIN CAP_IPC_LOCK CAP_IPC_OWNER CAP_SYSLOG CAP_DAC_OVERRIDE CAP_FOWNER=$HOME
CapabilityBoundingUnset=CAP_SYS_CHROOT CAP_KILL CAP_SETGID CAP_SETUID CAP_SETSID CAP_MKNOD CAP_AUDIT_WRITE CAP_AUDIT_READ CAP_FOWNER CAP_MAC_OVERRIDE CAP_DAC_OVERRIDE CAP_NET_RAW CAP_SYS_MODULE CAP_SYSLOG CAP_IPC_LOCK CAP_IPC_OWNER CAP_SYSCALL CAP_SYSRETCAP CAP_LINUXTIME CAP_WAKE_ALARM CAP_BLOCK_SUSPEND CAP_AUDIT_WRITECAP CAP_AUDIT_READCAP CAP_FOWNERCAP CAP_MAC_ADMINCAP CAP_SYSLOGCAP CAP_SYSCALLCAP CAP_SYSRETCAP CAP_TIME六进制BITCAPABILITY /bin/sh -c 'exec ${DAEMON_COMMAND}'
SuccessExitStatus=143
TimeoutStopSec=10s
Restart=on-failure
RestartSec=5s
StartLimitIntervalSec=0
StartLimitBurst=3
SendSIGKILL=no
SendSIGHUP=yes
TasksMax=infinity
TimeoutStartSec=0s
DelegateYes=yes
KillMode=process
User=your_username
Group=your_groupname
EnvironmentFile=-/etc/default/restic
StandardOutput=journal+console
StandardError=journal+console
SyslogIdentifier=restic
SendSIGKILL=no
SendSIGHUP=yes
Setgid=true
Setuid=false
CapabilityBoundingSet=CAP_SYS_ADMIN CAP_NET_BIND_SERVICE CAP_NET
0

随机文章