在 Debian 上,DHCP 服务通常使用 isc-dhcp-server,其主配置文件一般位于:
/etc/dhcp/dhcpd.conf(主配置)/etc/default/isc-dhcp-server(监听网卡等设置)/etc/dhcp/ 目录下其他文件下面介绍几种常见的备份方法。
sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.bak
或打包整个目录:
sudo tar czvf dhcp-backup.tar.gz /etc/dhcp /etc/default/isc-dhcp-server
sudo cp /etc/dhcp/dhcpd.conf.bak /etc/dhcp/dhcpd.conf
创建备份脚本 /usr/local/bin/backup-dhcp.sh:
#!/bin/bash
BACKUP_DIR="/backup/dhcp"
DATE=$(date +%Y%m%d)
mkdir -p $BACKUP_DIR
tar czvf $BACKUP_DIR/dhcp-$DATE.tar.gz /etc/dhcp /etc/default/isc-dhcp-server
赋予执行权限:
chmod +x /usr/local/bin/backup-dhcp.sh
加入定时任务(每天凌晨备份):
crontab -e
添加:
0 2 * * * /usr/local/bin/backup-dhcp.sh
etckeeper 可对整个 /etc 做 git 版本管理,非常适合配置文件备份。
sudo apt update
sudo apt install etckeeper
sudo etckeeper init
sudo etckeeper commit "initial commit"
sudo etckeeper commit "update dhcpd.conf"
cd /etc
sudo git log
sudo git checkout <commit_id> -- dhcp/dhcpd.conf
租约文件一般不在必须备份范围,但如需备份:
/var/lib/dhcp/dhcpd.leases
例如:
sudo cp /var/lib/dhcp/dhcpd.leases /backup/dhcpd.leases.bak
| 场景 | 推荐方式 |
|---|---|
| 临时改配置前 | 手动 .bak |
| 长期运维 | etckeeper |
| 服务器级备份 | 脚本 + cron |
| 集群/多机 | etckeeper + git 远程仓库 |
如果你用的是 Debian 12 + KEA DHCP(新趋势),我也可以给你对应的备份方式。