Я выполняю 12.04 LTS. Существует много совместно используемых ресурсов, которые я использую, которые помещены в корпус удаленно на локальном сервере. При отключении от сети (на, говорят, что сеть или отказ маршрутизатора), я хотел бы динамично заархивировать, переименуйте и разархивируйте резервные копии каталога для продолжения, использование их совместно использованных оценивают, пока сеть не восстанавливается.
Существует ли предпочтительный метод получения этих данных и инициирования сценариев или других системных действий когда связанные изменения состояния?
Править: После некоторого дополнительного исследования я вижу, что существует возможность выполнения этого с udev
от Инициирования действия, когда удельный объем соединен. Однако действительно ли это - лучший способ? Также есть ли альтернативный инструмент для udevinfo? Это, кажется, не часть пакета.
Когда сетевой интерфейс включается или выключается, выполняются сценарии в соответствии с /etc/network
. Вы можете поместить свой сценарий в /etc/networking/if-down.d
или в /etc/networking/if-post-down.d
. Первый работает с интерфейсом, все еще доступным, в то время как последний работает с интерфейсом, уже отключенным; конечно, интерфейс мог быть отключен автоматически, потому что локальная сеть вышла из строя, и в этом случае вы не сможете использовать сеть даже из if-down
. Сценарий получает информацию о сетевом интерфейсе через переменные среды, как описано на странице руководства interfaces(5)
. Обязательно отреагируйте только на потерю интерфейса (ов), которые имеют значение.
Если сетевое соединение прерывается из-за сбоя где-то за пределами локальной ссылки или даже из-за того, что первый маршрутизатор перестает работать должным образом, ваша машина не будет уведомлена. Чтобы обнаружить такую потерю обслуживания, вам нужно запустить какую-то службу пульса, которая периодически проверяет, работает ли удаленный сервер и отвечает ли он. Здесь нет универсального решения, потому что разные варианты использования требуют разных пороговых значений между «сеть / сервер работает медленно» и «сеть / сервер не работает». Кроме того, определение того, работает ли сервер, зависит от приложения; это может быть пинг, или HTTP-запрос, или пакет поддержки активности в соединении TCP и т. д.