Привет я настраиваю сервер, который имеет беспроводную карту и плату Ethernet. Я хотел бы иметь только eth0 работу соединения. Однако, если бы eth0 перестал работать по некоторым причинам, я хотел бы, чтобы он включил wlan0 и попытку соединиться. Существует ли способ сделать это?
Я воображаю задание крона, которое время от времени проверит, подключен ли eth0 к маршрутизатору, и если это перестало работать, это выполнит "sudo ifup wlan0" и затем пошлет электронное письмо мне.
Но если бы существует более изящное решение, я интересовался бы этим также.Спасибо!
можно создать сценарий в /etc/network/if-down.d/
и в /etc/network/if-up.d/
. Что-то вроде этого. Сделайте сценарий названным script
с, выполняются, полномочия 755
.
В примере eth0
название сетевого интерфейса
Для /etc/network/if-down.d/
# Check for specific interface if desired
[ "$IFACE" != "eth0" ] || exit 0
# Do something
sudo ifup wlan0
Для /etc/network/if-up.d/
# Check for specific interface if desired
[ "$IFACE" != "eth0" ] || exit 0
# Do something
sudo ifdown wlan0
, Deamon будет, когда eth0
понизятся, поднимают wlan0
и когда eht0
повышаются, снижают wlan0
2707974 ответ в целом правильный, но логика скриптов неверна: они завершают работу, когда следует выполнить действие, и выполняют действие, когда следует выйти;
а также мы должны поставить скрипт в /etc/network/if-post-down.d/
, так как согласно здесь /etc/network/if-down.d/
скрипты запускаются до интерфейс падает.
правильный ответ:
в /etc/network/if-post-down.d/script
# Check for specific interface if desired
[ "$IFACE" = "eth0" ] || exit 0
# Do something
sudo ifup wlan0
в /etc/network/if-up.d/script
# Check for specific interface if desired
[ "$IFACE" = "eth0" ] || exit 0
# Do something
sudo ifdown wlan0
Когда eth0 выйдет из строя, вызовите wlan0, и когда eht0 поднимется, сбейте wlan0