在Ubuntu上备份和恢复DHCP服务器的配置文件主要涉及配置文件和租约文件的备份。以下是详细的步骤:
/etc/dhcp/dhcpd.conf
。cp
命令将配置文件复制到一个安全的位置进行备份。sudo cp /etc/dhcp/dhcpd.conf /path/to/backup/dhcpd.conf.backup
/var/lib/dhcp/dhcpd.leases
。sudo cp /var/lib/dhcp/dhcpd.leases /path/to/backup/dhcpd.leases.backup
rsync
命令。sudo rsync -av /etc/dhcp/dhcpd.conf /path/to/backup/
sudo rsync -av /var/lib/dhcp/dhcpd.leases /path/to/backup/
tar
命令。sudo tar czvf /path/to/backup/dhcp_backup_$(date +%Y%m%d%H%M%S).tar.gz /etc/dhcp/dhcpd.conf /var/lib/dhcp/dhcpd.leases
#!/bin/bash
BACKUP_DIR="/backup/dhcp"
mkdir -p "$BACKUP_DIR"
cp -R /etc/dhcp "$BACKUP_DIR/dhcp_backup"
cp -R /etc/dnsmasq "$BACKUP_DIR/dnsmasq_backup"
if [ -f /var/lib/dhcp/dhcpd.leases ]; then
cp /var/lib/dhcp/dhcpd.leases "$BACKUP_DIR/dhcpd.leases.backup"
fi
if [ -f /var/lib/misc/dnsmasq.leases ]; then
cp /var/lib/misc/dnsmasq.leases "$BACKUP_DIR/dnsmasq.leases.backup"
fi
echo "DHCP backup completed successfully."
将脚本保存为 backup_dhcp.sh
,并设置为可执行:chmod +x backup_dhcp.sh
使用 cron
作业定期运行脚本,例如每天凌晨2点:0 2 * * * /path/to/backup_dhcp.sh
sudo systemctl stop isc-dhcp-server
sudo cp /path/to/backup/dhcpd.conf.backup /etc/dhcp/dhcpd.conf
sudo cp /path/to/backup/dnsmasq.conf.backup /etc/dnsmasq.conf
sudo cp /var/lib/dhcp/dhcpd.leases.backup /var/lib/dhcp/dhcpd.leases
sudo cp /var/lib/misc/dnsmasq.leases.backup /var/lib/misc/dnsmasq.leases
sudo systemctl start isc-dhcp-server
sudo systemctl status isc-dhcp-server
sudo netstat -tuln | grep 67