| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #!/usr/bin/perl
- #
- # Copyright (C) Roman Dmitiriev, rnd@rajven.ru
- #
- use FindBin '$Bin';
- use lib "$Bin";
- use strict;
- use Time::Local;
- use FileHandle;
- use Data::Dumper;
- use Rstat::config;
- use Rstat::main;
- use Rstat::mysql;
- use Rstat::net_utils;
- use Rstat::cmd;
- use Fcntl qw(:flock);
- open(SELF,"<",$0) or die "Cannot open $0 - $!";
- flock(SELF, LOCK_EX|LOCK_NB) or exit 1;
- $|=1;
- my $debug = 1;
- if ($ARGV[0]) {
- my $device=get_record_sql($dbh,'SELECT * FROM devices WHERE id='.$ARGV[0]);
- print "Backup switch $device->{device_name} ip: $device->{ip} ...";
- #router
- if ($device->{device_type} eq '2') {
- #mikrotik
- if ($device->{vendor_id} eq '9') { $device->{port}='60023'; }
- $device->{login}=$router_login;
- $device->{password}=$router_password;
- }
- #switch
- if ($device->{device_type} eq '1') {
- #mikrotik
- if ($device->{vendor_id} eq '9') { $device->{port}='60023'; }
- $device->{login}='admin';
- $device->{password}=$sw_password;
- }
- netdev_backup($device,$tftp_server);
- print " end.\n";
- } else {
- my @devices=get_records_sql($dbh,'SELECT * FROM devices WHERE deleted=0 and (vendor_id=3 or vendor_id=8 or vendor_id=9)');
- foreach my $device (@devices) {
- print "Backup switch $device->{device_name} ip: $device->{ip} ...";
- #router
- if ($device->{device_type} eq '2') {
- #mikrotik
- if ($device->{vendor_id} eq '9') { $device->{port}='60023'; }
- $device->{login}=$router_login;
- $device->{password}=$router_password;
- }
- #switch
- if ($device->{device_type} eq '1') {
- #mikrotik
- if ($device->{vendor_id} eq '9') { $device->{port}='60023'; }
- $device->{login}='admin';
- $device->{password}=$sw_password;
- }
- netdev_backup($device,$tftp_server);
- print " end.\n";
- }
- }
- exit 0;
|