Страница 1 из 2
Подскажите решение!
Добавлено: 2008-11-21 15:18:09
kenny85
Такая проблема есть сеть, состоящая из комутаторов D-link поставили задачу, слить с них все конфиги на tftp сервер, каким образом, вот в чем вопрос???
Надеюсь кто нибудь делал что либо подобное
P.S: Коммутаторы des 3526
Re: Подскажите решение!
Добавлено: 2008-11-21 15:40:05
zg
у меня модем длинковский, дык там просто заходишь через вебморду и жмёшь кнопка сохранить, и конфиг сохраняется как обычный текстовый файл
Re: Подскажите решение!
Добавлено: 2008-11-21 15:46:10
kenny85
zg писал(а):у меня модем длинковский, дык там просто заходишь через вебморду и жмёшь кнопка сохранить, и конфиг сохраняется как обычный текстовый файл
Это можно не спорю!!
Но есть два момента:
1) Веб морды отключены
2) Их коммутаторов больше 1000
Re: Подскажите решение!
Добавлено: 2008-11-21 15:54:06
zg
kenny85 писал(а):Это можно не спорю!!
помимо морды есть ещё телнет, и видимо есть тулза для экспорта/ипорта конфига, ведь както же этот файл формируется
Re: Подскажите решение!
Добавлено: 2008-11-21 15:55:50
hizel
если dlink поддерживает tftp то в freebsd и linux
ставим tftp или он уже стоит,
внедряем в inetd.conf
в случае freebsd
Код: Выделить всё
tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /var/tftpboot
создаем диру /var/tftpboot
и указываем длинку адрес сервака для слива конфигурации
Re: Подскажите решение!
Добавлено: 2008-11-21 15:58:55
Гость
zg писал(а):kenny85 писал(а):Это можно не спорю!!
помимо морды есть ещё телнет, и видимо есть тулза для экспорта/ипорта конфига, ведь както же этот файл формируется
Заход идет действительно телнетом, далее логин пароль, и ввод команды, upl cfg_toTFTP ХХ.ХХ.ХХ.ХХ filename, но вот как это сделать в таком массовом количестве я ума не могу приложить
to hizel
Поддерживает по одному я заливаю без проблем)))))
Re: Подскажите решение!
Добавлено: 2008-11-21 16:01:02
zg
Гость писал(а):но вот как это сделать в таком массовом количестве я ума не могу приложить
скрипт сделает всю грязную работу. Только напиши

Мы тут проверяли - авторизация через телнет спокойно делается и на шелле. Не вижу трудностей.
Re: Подскажите решение!
Добавлено: 2008-11-21 17:41:35
kenny
Я просто думал, может кто нибудь уже что то подобное писал, и поделился бы наработками

Re: Подскажите решение!
Добавлено: 2008-11-21 19:21:07
zg

чёт не видать

Re: Подскажите решение!
Добавлено: 2008-11-26 15:15:21
BigBrother
День добрый, помогите дописать скрипт. Задача такая:
На сервере делаются бекапы с помощью скрипта, который вызывается кроном.
Надо сделать, что бы каждый день делались бекапы, но не накапливались. То есть, в течение недели было сделано 7 бекапов, а когда начинается новая неделя, что бы эти бекапи перезаписывались поверх с новой датой, то есть, сейчас сделано 7+7+7=21 файлов с бекапами за три недели, а надо 7+7+7=7 файлов бекапов за три недели.
Вот что уже есть:
Код: Выделить всё
#!/bin/sh
path_mysql="/home/backup/mysql_backup_all_databases_$(date +%d%m%y).sql"
/usr/bin/mysqldump -u root --password=mypass --all-databases > ${path_mysql}
cd /home/backup/
/bin/tar -cvvf name1.name1.$(date +%d%m%y).tgz /home/name1/
/bin/tar -cvvf name.name.$(date +%d%m%y).tgz /home/name/
cd /home/
/bin/tar -cvvf /home/name_backup.$(date +%d%m%y).tgz /home/backup/*
Но это для варианта 7+7+7=21. Что дописатьь, что бы сделать для 7+7+7=7
Или это надо делать через crontab?
Re: Подскажите решение!
Добавлено: 2008-11-26 16:09:52
zg
я тут где-то скрип выкладывал, там было описано решение, гле-то совсем недавно
Re: Подскажите решение!
Добавлено: 2008-11-26 17:18:14
BigBrother
zg писал(а):я тут где-то скрип выкладывал, там было описано решение, гле-то совсем недавно
Рылся, Рылся и не нарыл

Re: Подскажите решение!
Добавлено: 2008-11-26 17:52:36
zg
гм.. странно, а выкладывал совсем недавно, ладна ещё раз выложу
Код: Выделить всё
#!/bin/sh
cd /usr/local/mysql/data
d=`/bin/date "+%Y-%m-%d"`
/usr/bin/tar -cjf /path/to/db.$d.tar.bz2 dbname
for i in `/bin/ls -1 /path/to/db.** | /usr/bin/sort -r | /usr/bin/awk '{if (++i>4)print $0}'`
do
echo $i
rm $i
done
примерно так

Re: Подскажите решение!
Добавлено: 2008-11-27 10:33:15
kenny
По своему вопросу придумал решение, все оказалось до боли просто

аж стыдно
Re: Подскажите решение!
Добавлено: 2008-11-27 10:50:45
zg
выложи
Re: Подскажите решение!
Добавлено: 2008-11-27 11:13:14
BigBrother
zg писал(а):гм.. странно, а выкладывал совсем недавно, ладна ещё раз выложу
Код: Выделить всё
#!/bin/sh
cd /usr/local/mysql/data
d=`/bin/date "+%Y-%m-%d"`
/usr/bin/tar -cjf /path/to/db.$d.tar.bz2 dbname
for i in `/bin/ls -1 /path/to/db.** | /usr/bin/sort -r | /usr/bin/awk '{if (++i>4)print $0}'`
do
echo $i
rm $i
done
примерно так

Блин, вчера все работало. После того, как заново переписал скрипт (случайно убил работающий), скрипт перестал работать как надо

То сам себя убивает, то все файлы убивает (вне зависимости от даты, кроме папок), то вообще ничего не делает...
А есть способ сделать эту задачу через КРОН? Например, указать крону, что бы он архивы писал поверх старых (заменял их)??
Re: Подскажите решение!
Добавлено: 2008-11-27 19:12:25
kenny
Думал думал, вспоминал все что знаю перепробовал практически все........потом как пыльным мешком, озарило...........
expect замечательная вещь, ой какая замечательная, и в принципе ребенок разберется......
установил из портов без проблем.....
Код: Выделить всё
# cd /usr/ports/lang/expect
# make install clean
# rehash
В результате expect скачал и установил все что нужно.
далее создал файлик
ee telnet.exp
ну и вписал все что вспомнил
Код: Выделить всё
#!/usr/local/bin/expect
spawn telnet 10.xx.xx.xx # Ip свича
expect "Username:"
send "user\n"
expect "Password:"
send "pass\n"
send "enable admin\r"
expect "Password:"
send "pass2\r"
sleep 10
send "show sw\r"
expect "DES-3550:admin#"
sleep 3
send "upl cfg_toTFTP 10.xxx.xxx.xxx buckUP"#10.xxx.xxx.xxx -Ip Tftp Сервера,buckUP - название файла который будет там сохранен.
expect eof
sleep - време ожидания в секундах, так как D-link туповаты лучше немного подождать.
expect - какую строчку ждем на экране
send - что будем вводить
P.S: Сильно не пинайте за корявость скрипта, любые пожелания и порицания с удовольствием выслушаю

Re: Подскажите решение!
Добавлено: 2008-11-30 4:57:14
6eremot
Так ведь свичей 1000? Или я ошибаюсь? Неужели после каждого выполнения будешь править скрипт чтобы заменить ip свича?
У меня кучка DES-3028, ну конечно не 1000, раз так в 10 меньше и я сделал так
Код: Выделить всё
#!/bin/sh
dlink=$1
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.3.3 a 10.10.0.10
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.4.3 i 2
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.5.3 s DES3028.cfg
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.7.3 i 2
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.8.3 i 3
скрипт запускаю
./upload_cfg.sh 10.10.0.109 где 10.10.0.109 адрес коммутатора
На сервере имя-конфига сохраняется как 10.10.0.109-DES3028.cfg.
Можно конечно автоматизировать, но пока нет такой нужды.
http://www.dlink.ru/technical/faq_hub_switch_104.php
Сразу не увидел что 3526, вот для них
http://www.dlink.ru/technical/faq_hub_switch_102.php
Re: Подскажите решение!
Добавлено: 2008-11-30 14:18:49
kenny
Спасибо за совет обязательно попробую:-)
Re: Подскажите решение!
Добавлено: 2008-12-02 11:34:07
kenny
6eremot писал(а):Так ведь свичей 1000? Или я ошибаюсь? Неужели после каждого выполнения будешь править скрипт чтобы заменить ip свича?
У меня кучка DES-3028, ну конечно не 1000, раз так в 10 меньше и я сделал так
Код: Выделить всё
#!/bin/sh
dlink=$1
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.3.3 a 10.10.0.10
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.4.3 i 2
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.5.3 s DES3028.cfg
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.7.3 i 2
snmpset -v2c -c private ${dlink} 1.3.6.1.4.1.171.12.1.2.1.1.8.3 i 3
скрипт запускаю
./upload_cfg.sh 10.10.0.109 где 10.10.0.109 адрес коммутатора
На сервере имя-конфига сохраняется как 10.10.0.109-DES3028.cfg.
Можно конечно автоматизировать, но пока нет такой нужды.
http://www.dlink.ru/technical/faq_hub_switch_104.php
Сразу не увидел что 3526, вот для них
http://www.dlink.ru/technical/faq_hub_switch_102.php
вот вопрос какие пакеты нужно установить?
Re: Подскажите решение!
Добавлено: 2008-12-02 13:38:19
6eremot
У меня вот это стоит
Код: Выделить всё
pkg_info | grep SNMP
net-snmp-5.4.1.2 An extendable SNMP implementation
p5-SNMP_Session-1.11 A perl5 module providing rudimentary access to SNMPv1 and v
последняя для перла
Re: Подскажите решение!
Добавлено: 2008-12-03 11:31:18
kenny
Огромное спасибо всем, намного лучше люди сидят чем на форуме д линка, буду разгребаться и разбираться дальше, некие траблы есть

Re: Подскажите решение!
Добавлено: 2008-12-04 10:41:24
schizoid
6eremot писал(а):Так ведь свичей 1000? Или я ошибаюсь? Неужели после каждого выполнения будешь править скрипт чтобы заменить ip свича?
У меня кучка DES-3028, ну конечно не 1000, раз так в 10 меньше и я сделал так
ну так есть еще такое понятие как циклы....
Re: Подскажите решение!
Добавлено: 2008-12-09 16:16:41
prostogans
пишешь скрипт, который телнетом обходит все железки и сливает конфиги куда тебе нужно
Re: Подскажите решение!
Добавлено: 2008-12-16 12:14:16
kenny
prostogans писал(а):пишешь скрипт, который телнетом обходит все железки и сливает конфиги куда тебе нужно
А по вашему речь про что идет???? или сообщения данные выше мы не видим?