通自动SCP登陆备份linux定制机的数据的脚本
2016-04-15 12:04
603 查看
公司有一些linux定制机,需要进行配置备份。定制机虽然是linux系统,但是往往很多包是没有的,如果在上面装包不太好,备份可以从另外一台linux服务器做定时任务,通过脚本自动登录定制机,运行备份命令,并且将备份内容拷贝走。
利用同样的原理可以做成备份交换机,路由器等设备的自动备份脚本。
用了expect,运行脚本的机器需要先yum install expect。
[root@szyumserver backup]# cat autobackup_huizhou.sh
#!/bin/bash
passwd="freeiris.org"
ip="192.168.11.102"
adress="huizhou" #只需修改IP和备份到的目标路径
/usr/bin/expect <<-EOF
set time 3000
spawn ssh root@$ip
expect {
"*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$passwd\r" }
}
expect "*#"
send "ll\r"
expect "*#"
send "cd /freeiris2/utils/fri2backup\r "
expect "*#"
send "./fri2backup --backup\r"
set timeout 500
expect "*#"
send "exit\r"
expect eof
EOF
/usr/bin/expect <<-EOF
set time 300
spawn scp root@$ip:/freeiris2/utils/fri2backup/frifull.backup /backup/$adress/$(date +%Y-%m-%d)-frifull.backup
expect {
"*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$passwd\r" }
}
set timeout 500
expect eof
EOF
利用同样的原理可以做成备份交换机,路由器等设备的自动备份脚本。
用了expect,运行脚本的机器需要先yum install expect。
[root@szyumserver backup]# cat autobackup_huizhou.sh
#!/bin/bash
passwd="freeiris.org"
ip="192.168.11.102"
adress="huizhou" #只需修改IP和备份到的目标路径
/usr/bin/expect <<-EOF
set time 3000
spawn ssh root@$ip
expect {
"*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$passwd\r" }
}
expect "*#"
send "ll\r"
expect "*#"
send "cd /freeiris2/utils/fri2backup\r "
expect "*#"
send "./fri2backup --backup\r"
set timeout 500
expect "*#"
send "exit\r"
expect eof
EOF
/usr/bin/expect <<-EOF
set time 300
spawn scp root@$ip:/freeiris2/utils/fri2backup/frifull.backup /backup/$adress/$(date +%Y-%m-%d)-frifull.backup
expect {
"*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$passwd\r" }
}
set timeout 500
expect eof
EOF
相关文章推荐
- Linux socket 初步
- 小心服务器内存居高不下的元凶--WebAPI服务
- Linux Kernel 4.0 RC5 发布!
- linux lsof详解
- linux 文件权限
- Linux 执行数学运算
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户