所谓有备而无患,虽说备份不能百分百保证损失,但是却最大程度降低损失,以及保证业务尽快恢复。所以备份在数据领域是非常重要的,特别是核心设备、关键服务尤其重要。
假如您正好有一台Linux服务器,可以跑一些测试脚本,那么您就可以使用在这个脚本进行对一些设备配置文件进行备份,思路于此,但不仅限于此。

命令简介

  • expect:dnf install expect 或 yum install expect

expect通常是用来等待一个进程的反馈;expect可以接收一个字符串参数,也可以接收正则表达式参数。

  • spawn
    spawn 用于启动新的进程。
  • send
    send 用于接收字符串参数,并将参数传给spawn进程。
  • Telnet:dnf install telnet 或 yum install telnet
    telnet 用于连接交换机等设备,如果用stelnet可以用ssh方式连接。

Shell 脚本

  • 交换机
#!/usr/bin/bash
expect << EOF
# 交换机 192.168.1.12  Telent 方式
spawn telnet 192.168.1.12
set timeout 5
# 输入telnet 用户名及密码
expect "*Username:"
send "test\r"
expect "*Password:"
send "test123456\r"
expect "*>"
# 连接远程 FTP 192.168.1.5 ,端口 8533
send "ftp 192.168.1.5 8533"
expect "*(none)"
# 输入FTP 用户名和密码
send "ftpusername\r"
expect "*password:"
send "ftpusername123\r"
expect "*ftp]"
sleep 2
# 把启动文件 vrpcfg.zip 上传至FTP服务,并改名为 ftp-back-text.zip
# 关于启动文件,可参考交换机手册,不同交换机可能不同
send "put vrpcfg.zip ftp-back-text.zip\r"
expect "*ftp]"
sleep 2
send "quit\r"
sleep 2
send "quit\r"
expect "*>"
send "quit\r"
expect eof
EOF
# 删除过期文件,根据自己需要设置
# 这里假设备份文件在当前目录下,仅保留7天时长的备份文件;
find ./* -type f -mtime +7 -exec rm -f {} \;

  • OLT 脚本

  • 末话

这里博主给出的仅是简单的脚本,各位大佬可根据实际情况进行修改和调整。比如设备分组,未能备份成功的进行记录等都是可以考虑进去的,难点只是一开始不知道怎么进行备份(新手),有了这个脚本例子就可以根据自己需求进行修改。需要注意的是:①权限问题;②安全问题(可以进行默认端口修改,禁止匿名,防火墙或信任主机等措施)。

「 希望熬过一切,星光璀璨 」

流年小站,感谢有您的支持

「 道路坎坷,感谢有您 ---来自 anYun 的感谢 」

使用微信扫描二维码完成支付

2021-09-24
已阅:1181 人/次

 
 
 
分享是一种美德 x
打开微信,右上角的"+"选择"扫一扫"
使用“扫一扫”将博文分享至朋友圈吧

本文由 anYun 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论

Myssl安全认证