Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Как повесить скрипт на определенное событие?  (Прочитано 1699 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн jack_solovey

  • Автор темы
  • Активист
  • *
  • Сообщений: 916
  • Mate, и никаких Unity
    • Просмотр профиля
Так как на сервере используются две сетевухи (с двумя провайдерами). Правила маршрутизации задаются скриптом, при запуске компа.
Но бывает так, что связь на одном из интерефейсов пропадает и он отключается, потом коннект появляется и он включается но маршрутизация уже слетает.
Сейчас повесил на cron выполнять скрипт раз в час. Но хочется как-то  привязать его к событию "включение интерфейса" и чтобы он срабатывал после того как тот получит настройки по dhcp от провайдера. Можно ли это как-то реализовать?

Оффлайн gaudin

  • Участник
  • *
  • Сообщений: 227
    • Просмотр профиля
Может это тебе подойдет. Скрипт не мой требуется редактирование.
#!/bin/sh
#запускаем интернет
pon gprs
sleep 40
/etc/init.d/squid restart
while true; do
#если ресурс не доступен
if (! ping -c 3 ya.ru >/dev/null 2>&1) then
poff gprs
pon gprs
sleep 40
/etc/init.d/squid restart
fi
done
Ubuntu 10.04.01 ядро 2.6.37-12

Оффлайн jack_solovey

  • Автор темы
  • Активист
  • *
  • Сообщений: 916
  • Mate, и никаких Unity
    • Просмотр профиля
ясно же написал, мне скрипт надо повесить на событие.
Удали пожалуйста свое сообщение.

Оффлайн smaharbA

  • Участник
  • *
  • Сообщений: 220
    • Просмотр профиля
можно сваять свое, но есть готовое (не всегда будет работать)
echo -e '#!/usr/bin/env sh\nexport LANG=ru_RU.UTF-8;/usr/bin/xterm -display :0 -e "echo Фигня $IFACE; sleep 10"' > /etc/network/if-down.d/mydown; chmod 755 /etc/network/if-down.d/mydown
Я конечно далек от мысли...(с)

Оффлайн Guranvir

  • Участник
  • *
  • Сообщений: 195
    • Просмотр профиля
    • Блог начинающего линуксоида
Вроде такие вещи  можно делать если закидывать скрипты в etc, а там уже назвать его iptables.up.rules  Они будут выполняться когда будет подниматься интерейс. Ну точнее это получается не скрипт а правила iptables конечно   
« Последнее редактирование: 24 Января 2011, 19:00:19 от Guranvir »

Оффлайн wl

  • Старожил
  • *
  • Сообщений: 1393
    • Просмотр профиля
В /etc/network/ есть директории if-down.d  if-post-down.d  if-pre-up.d  if-up.d со всяко-разными скриптами.
Подозреваю это то, что Вам нужно.

Еще можно udev поковырять.
« Последнее редактирование: 24 Января 2011, 19:03:54 от wl »
На свете феньки есть такие, брат Горацио, которых лохи просто не секут. (Шекспир, "Гамлет", вольный перевод)

 

Страница сгенерирована за 0.027 секунд. Запросов: 24.