Действительно ли возможно вызвать перезапуск Apache, как только eth0 (или какой-либо сетевой интерфейс в этом отношении) включается?
Обновление: Некоторые детали, почему мне нужно это. Наши клиенты используют мобильные терминалы, которые неоднократно включаются и отключили, когда они перемещаются (беспроводная сеть не является никакой опцией, к сожалению). Терминал выполняет сайт, лицензируемый с ionCube. Лицензия содержит ограничение MAC-адреса. Теперь в случае, если терминал загружается и позже включается к сети, ionCube жалуется на недопустимую лицензию, потому что это не могло обнаружить устройства Ethernet в то время, когда Apache был запущен. ionCube кэширует информацию о сетевом интерфейсе и не обнаруживает интерфейсов, подходящих после того, как Apache был запущен.
При использовании Debian/Ubuntu используйте/etc/network/if-up.d, создайте новый файл (например, "apache2") с содержанием как
#!/bin/sh
/etc/init.d/apache2 restart
Полномочия изменения к 755;
chmod 755 /etc/network/if-up.d/apache2
Файлы в/etc/network/if-down.d, if-post-down.d, if-pre-up.d, если-up.d выполняются в соответствующих фазах, когда интерфейс повышается или вниз.