Рейтинг:1

Как предотвратить (или отложить) сон Wi-Fi / Ethernet перед приостановкой?

флаг cn

У меня есть конкретная проблема. Я хотел бы автоматически размонтировать общий ресурс samba (cifs) перед приостановкой или выключением моего компьютера. Итак, я создал скрипт в /lib/systemd/системный сон чтобы быть в состоянии сделать это.

#!/бин/ш

чехол $1/$2 в
        пред/*)

        if mountpoint -q /path/to/share # если общий ресурс смонтирован 
        тогда
            размонтировать /path/to/share # размонтировать
        еще
            exit 0 # иначе ничего не делать
        фи
        ;; 
эсак

Проблема с этим сценарием заключается в том, что если компьютер переходит в спящий режим (приостановка), все сетевые подключения уничтожаются/завершаются (беспроводные/проводные тоже) до того, как этот сценарий может быть выполнен. Таким образом, без подключения к Интернету скрипт не может проверить, /путь/к/общему ресурсу смонтирован или нет, и он зависает на ~ 1 минуту.

Если я добавлю служба перезапуска сетевого менеджера перед оператором if он работает отлично, потому что он восстанавливает интернет-соединения после того, как они были прерваны. Это может быть решением, но не слишком хорошим: оно увеличивает время, необходимое для приостановки. Было бы лучше, если бы я мог предотвратить уничтожение/завершение соединений перед приостановкой или задержкой (по крайней мере, пока скрипт не будет выполнен).

Рейтинг:0
флаг lt
sup

Поместите скрипт в

/etc/NetworkManager/dispatcher.d/pre-down.d/

Network Manager прослушивает системный вызов, который приостанавливает работу компьютера, независимо от systemd, поэтому это необходимо делать через Network Manager.

Обратите внимание, что это будет запускать скрипт всякий раз, когда интерфейс выходит из строя, что нормально на моей машине, но может быть не на вашей. Вероятно, можно было бы проверить, был ли испущен сигнал D-Bus для приостановки, но я не исследовал это. Об этом есть тикет на трекере Network Manager gitlab: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/910.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.