Автор Тема: Помощ за скрипт  (Прочетена 2680 пъти)

rcbandit

  • Напреднали
  • *****
  • Публикации: 144
    • Профил
Помощ за скрипт
« -: Dec 15, 2011, 16:19 »
Здравейте,
   Нужна ми е помощ за е един скрипт.

Код:
#!/bin/sh
SERVICE='vpnclient'

result=""
result=`ps ax | grep -v grep | grep $SERVICE`

if [ "$result" == "" ]
then
   /usr/local/bin/vpnclient connect vpn user test pwd test
fi

ping -c 1 10.10.10.2


Идеята е следната: На един сървър има Cisco VPN client за линукс. Всяка минута се проверява дали клиента работи, ако не работи се стартира отново.
Искам да стане по следния начин:
Да се проверява всяка минута дали има вдигнат клиент, ако има да се пигва хост 10.10.10.2, ако няма пинг отговор да се спира с командата "vpnclient disconnect" и да се стартира отново. За съжаление не знам bash.

Благодаря предварително!

Активен

bop_bop_mara

  • Напреднали
  • *****
  • Публикации: 2433
  • Distribution: Debian Testing
  • Window Manager: LXDE
  • Cute and cuddly
    • Профил
Re: Помощ за скрипт
« Отговор #1 -: Dec 15, 2011, 16:52 »
A скрипта как ще върви - като cronjob всяка минута или като демон?
Активен

radoulov

  • Напреднали
  • *****
  • Публикации: 116
    • Профил
Re: Помощ за скрипт
« Отговор #2 -: Dec 15, 2011, 16:54 »
Код
GeSHi (Bash):
  1. #!/bin/sh
  2.  
  3. _exe=/usr/local/bin/vpnclient
  4. _addr=10.10.10.2
  5.  
  6. while sleep 1; do
  7.  pgrep -f "${_exe##*/}" >/dev/null &&
  8.    ping -c1 -w1 "$_addr" >/dev/null || {
  9.      "$_exe" disconnect
  10.      "$_exe" connect vpn user test pwd test
  11.        }
  12. done
« Последна редакция: Dec 15, 2011, 16:56 от radoulov »
Активен

rcbandit

  • Напреднали
  • *****
  • Публикации: 144
    • Профил
Re: Помощ за скрипт
« Отговор #3 -: Dec 15, 2011, 17:15 »
Като cron задача.

Благодаря за помощта!
Активен

radoulov

  • Напреднали
  • *****
  • Публикации: 116
    • Профил
Re: Помощ за скрипт
« Отговор #4 -: Dec 15, 2011, 17:28 »
Код
GeSHi (Bash):
  1. #!/bin/sh
  2.  
  3. _exe=/usr/local/bin/vpnclient
  4. _addr=10.10.10.2
  5.  
  6. pgrep -f "${_exe##*/}" >/dev/null &&
  7.   ping -c1 -w1 "$_addr" >/dev/null || {
  8.     "$_exe" disconnect
  9.     "$_exe" connect vpn user test pwd test
  10.       }

Активен

radoulov

  • Напреднали
  • *****
  • Публикации: 116
    • Профил
Re: Помощ за скрипт
« Отговор #5 -: Dec 15, 2011, 18:36 »
Липсата на feedback ме кара да мисля, че нещо не е наред :)
Скриптът не прави ли това, което искаш?
Активен

rcbandit

  • Напреднали
  • *****
  • Публикации: 144
    • Профил
Re: Помощ за скрипт
« Отговор #6 -: Dec 15, 2011, 23:51 »
Сървъра ми е на работа. От вкъщи нямам достъп да го пробвам.
Активен