CISCO 設備新增備份排程:
mis_c2960#configure config
mis_c2960(config)#kron policy-list Backup_config #設定排程任務名稱
mis_c2960(config-kron-policy)#cli write #以免備份不完全,先將 running-config 的設定寫入一次
mis_c2960(config-kron-policy)#cli show run | redirect tftp://192.168.1.1/c2960.cfg #設定要執行的指令及TFTP Server 位址、檔名
mis_c2960(config-kron-policy)#exit
設定排程執行時間:
mis_c2960(config)#kron occurrence Backup_config at 23:00 Sun recurring #每個星期日執行
mis_c2960(config-kron-occurrence)#policy-list Backup_config #啟動排程
mis_c2960(config-kron-occurrence)#end
寫入剛才設定:
mis_c2960#write
查詢排程工作:
mis_c2960(config-kron-occurrence)#show kron schedule
如果要移除備份排程:
mis_c2960#configure config
mis_c2960(config)#no kron policy-list Backup_config
mis_c2960(config)#no kron occurrence Backup_config at 23:00 Sun recurring
TFTP Server:
Windows TFTP 軟體:
內容:
SET src_folder=C:\TFTP_DataSET dst_folder=C:\TFTP_Data\backup
SET time=%date:~0,4%%date:~5,2%%date:~8,2%
SET delday=30
for /f %%a IN ('dir "%src_folder%\*.cfg" /b') do move %src_folder%\%%a %dst_folder%\%time%-%%a
forfiles -p %dst_folder% -s -m *.cfg /D -%delday% /C "cmd /c del @PATH" > nul 2>&1
Linux TFTP server 套件:
yum install -y tftp tftp-server xinetd
修改 /etc/xinetd/tftp 設定及TFTP 資料目錄:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot -c #-c 允許上傳檔案
disable = no #enable Service
per_source = 11
cps = 100 2
flags = IPv4
}
建立 TFTP 檔案目錄:
mkdir -p /tftpboot/backup
chmod o+w /tftpboot
systemctl enable xinetd
systemctl start xinetd
因為CISCO的 kron 建立備份時,無法自動命名,所以在 Linux 上建立一個搬移備份檔的script:
vi moveConfig.sh
內容:
#!/bin/bash
Date=$(date +"%Y%m%d")
#config檔備份目錄
FileDir=/tftpboot
#舊config檔搬移目錄
BackupDir=/tftpboot/backup
#過期的檔案
DelFile=30
for file in `ls $FileDir`;
do
if [ -f ${FileDir}/${file} ]; then
mv ${FileDir}/${file} ${BackupDir}/${Date}-${file} && echo "${Date} Backup success." >> ${BackupDir}/backup.log
fi
done
#刪除超過設定天數的檔案
find $BackupDir -type f -daystart -mtime +$DelFile -exec rm -rf {} \; > /dev/null 2>&1
設定 moveConfig.sh 檔案執行權限:
chmod +x moveConfig.sh
在 CISCO 設備備份 config 前,執行搬移舊 config 檔案排程:
50 22 * * * /bin/sh /root/moveConfig.sh > /dev/null 2>&1
感謝sclin2k大神分享,很有幫助!
回覆刪除