Итак,Я сказал, что следующим шагом будет написание сценариев. Ну, вот они .
Чтобы объяснить, решение, которое я придумал, состоит из двух основных частей. Шаблон для файла dhcpd.conf. И сценарий для запроса необходимых данных из dhcpcd, их анализа, применения к шаблону, сохранения результата как /var/local/dhcpd6-lan.conf
, затем перезапуска dhcpd для использования новых настроек.
Сценарий использует функцию dhcpcd run -ловушек. По сути, когда dhcpcd делает что-либо, включая получение ответов от восходящего потока, он запускается /etc/dhcpcd.exit-hook
с различными переменными среды, установленными в значения соответствующих параметров конфигурации dhcp. Я просто написал хук для действия DELEGATED6
, которое срабатывает, когда dhcpcd назначает ip из ответа префикса ipv6. Мне пришлось реализовать собственное ведение журнала, потому что хуки dhcpcd -run -подавляют все stderr и stdout из скриптов хуков.
Мне не нравится это решение. Я не буду отмечать это как принятое решение. Я приложил много усилий, чтобы сделать его как можно более прочным, но все еще кажется, что слишком много точек потенциального отказа. На данный момент он выполняет свою работу. Я все еще чувствую, что должен быть лучший способ.
ОБНОВЛЕНИЕ -8 месяцев спустя:
Что ж, похоже, я ошибся. Сценарии, которые я создал, оказались удивительно надежными. Восемь месяцев и ни единой икоты. Сценарии также стали значительно более надежными: убраны некоторые потенциальные угловые случаи, появилась возможность обновлять множество различных файлов конфигурации и простой файл состояния json для отслеживания текущего состояния. Учитывая надежность и надежность этого решения на данный момент, я собираюсь пойти дальше и принять этот ответ. Я могу рассмотреть улучшения с помощью таких инструментов, как envsubst
в будущем.
Это не сработает. :Нет сеанса xserver или wayland, к которому мог бы подключиться этот teamviewer.
Что вы можете сделать, так это настроить свой диспетчер входа в систему таким образом, чтобы вы автоматически -входили в систему при запуске графического интерфейса, а затем запускали teamviewer из этого графического интерфейса («автозапуск приложений» или аналогично, в зависимости от вашего менеджера сеансов (Gnome, KDE, xfce... )).