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

debian文件服务器 自动备份

要实现 Debian 文件服务器的自动备份,可使用 rsync 结合 cron 任务计划定期备份文件。

在Debian文件服务器上实现自动备份,可以采用多种方法,以下是一些常见的解决方案:

1、使用Rsync和Cron进行备份

安装Rsync:确保你的Debian系统上已经安装了Rsync,如果没有安装,可以使用以下命令进行安装:sudo apt update && sudo apt install rsync

创建备份脚本:编写一个备份脚本,指定要备份的源目录和目标目录,要备份/home/osyunwei目录下的所有文件到/home/osyunweibak目录,并保存为特定格式的压缩文件,同时只保留最近7天的备份,可以创建一个名为osyunweibak.sh的脚本,内容如下:

 #!/bin/sh
      BK_DR=/home/osyunweibak #备份文件存放路径
      DB_DR=/home/osyunwei #要备份的文件目录
      DAYS=7 #DAYS=7代表删除7天前的备份,即只保留最近7天的备份
      LINUX_USER=root #系统用户名
      date=date +%Y%m%d #获取当前时间
      tar zcvf $BK_DR/osyunwei$date.tar.gz $DB_DR #备份
      chown -R $LINUX_USER:$LINUX_USER $BK_DR #更改备份数据库文件的所有者
      find $BK_DR -name "osyunwei*" -type f -mtime +$DAYS -exec rm {} ; #删除7天前的备份文件
      deldate=date -d -7day +%Y%m%d #删除ftp服务器空间7天前的备份
      ftp -n<<!
      open 192.168.21.139 21 #打开ftp服务器,21为ftp端口
      user osyunwei 123456 #用户名、密码
      binary #设置二进制传输
      cd osyunweibak #进入ftp目录
      lcd /home/osyunweibak #列出本地目录
      prompt
      mput osyunwei$date.tar.gz osyunwei$date.tar.gz #上传目录中的文件
      mdelete osyunwei$deldate.tar.gz osyunwei$deldate.tar.gz #删除ftp空间7天前的备份
      close
      bye !

赋予脚本执行权限:使用chmod +x /home/osyunweibak/osyunweibak.sh命令给脚本添加执行权限。

设置定时任务:通过编辑/etc/crontab文件,添加一行来指定每天凌晨2点5分执行备份脚本,如5 2 * * * root /home/osyunweibak/osyunweibak.sh,然后重新启动cron服务使设置生效,可以使用service cron restart/etc/init.d/cron restart命令。

2、使用BackupPC工具进行备份

安装BackupPC:在Debian服务器上安装BackupPC软件包,命令为apt install -y backuppc

配置WEB登录用户名密码:安装完成后,设置WEB登录用户名密码(默认登录用户名是backuppc),例如使用htpasswd /etc/backuppc/htpasswd backuppc命令设置密码。

允许其他计算机访问WEB界面:将/etc/backuppc/apache.conf文件中的local修改为all granted,以允许其他计算机访问WEB界面。

切换备份操作用户:将Debian默认的以root执行备份操作切换为backuppc用户,编辑/etc/backuppc/config.pl文件,将/RsyncSshArgs/s/-l root/-l backuppc/这一行进行替换。

重启服务器服务:重启BackupPC和Apache2服务,命令为systemctl restart backuppc apache2,如果有防火墙,还需要允许WWW流量,使用ufw allow WWW命令。

生成SSH密钥并配置无密码登录:在Debian主机上切换到backuppc用户,生成SSH密钥对,然后将公钥复制到需要备份的客户机上,以实现无密码SSH登录客户机自动进行备份,具体操作包括在Debian主机上生成密钥、在客户机上创建用于运行rsync命令的用户并设置密码、将Debian主机的公钥复制到客户机等步骤。

在客户机上设置rsync:在客户机上安装rsync软件包,并将backuppc用户添加到sudoers列表中,使其可以无需密码执行rsync命令,还需要根据需要修改客户机的SSH配置文件,限制只能从Debian主机登录到客户机,以保证安全。

进入WEB界面操作:在浏览器中输入http://backuppc_server_IP or hostname/backuppc(其中backuppc_server_IP or hostname是你的Debian服务器的IP地址或主机名)并登录,然后设置rsync作为备份方式,选择要备份的主机和目录等。

两种方法都可以在Debian文件服务器上实现自动备份,使用Rsync和Cron的方法相对简单直接,适合对单个目录或文件进行备份;而BackupPC工具则提供了更丰富的功能和更方便的管理界面,适合对多个客户端进行集中备份管理,用户可以根据自己的需求选择合适的方法来实现自动备份。

0