Вот подробное объяснение из моего первоначального комментария. Цель состоит в том, чтобы узнать, что является эквивалентом с помощью инструмента CLI nmcli без необходимости просматривать всю документацию, чтобы точно определить параметр, если он известен пользователю в инструменте GUI :с временным с помощью этого инструмента с графическим интерфейсом nm -апплета , который должен быть доступен где-то(даже не в той же системе )с эквивалентной настройкой. Это всего лишь общий метод, который можно использовать для любых других настроек, кроме рассмотренных здесь.
Задействовано два соединения :Я назову их основным и myVPN , которое должно автоматически подключаться при использовании основного . Здесь изменение будет сделано на основном , это тот, который необходимо проверить.
$ nmcli connection show
NAME UUID TYPE DEVICE
main cfa5be23-925a-4273-b5de-2f9adaac8782 wifi --
myVPN 0d9e60ef-6b5e-4f65-8312-8db428589866 vpn --
Чтобы отобразить конфигурацию основного, любой из этих:
nmcli connection show id main
nmcli connection show uuid cfa5be23-925a-4273-b5de-2f9adaac8782
выдаст среди многих других строк что-то вроде:
connection.id: main
connection.uuid: cfa5be23-925a-4273-b5de-2f9adaac8782
connection.type: 802-11-wireless
[...]
Итак, сначала выгрузите все в файл. Часть вывода локализована, поэтому лучше сделать export LANG=C.UTF-8
перед (, если позже нужно искать или сравнивать определенное имя или значение параметра в Интернете, это поможет):
nmcli c show id main > /tmp/before
Используя инструмент с графическим интерфейсом nm -апплет , где эта функция известна, VPN myVPN добавляется к основному:
Сбросить еще раз:
nmcli c show id main > /tmp/after
Теперьdiff
можно сравнить и показать, что изменилось:
$ diff -u /tmp/before /tmp/after
--- /tmp/before 2019-05-04 10:47:43.410149358 +0200
+++ /tmp/after 2019-05-04 10:47:58.798252044 +0200
@@ -15,7 +15,7 @@
connection.master: --
connection.slave-type: --
connection.autoconnect-slaves: -1 (default)
-connection.secondaries: --
+connection.secondaries: 0d9e60ef-6b5e-4f65-8312-8db428589866
connection.gateway-ping-timeout: 0
connection.metered: unknown
connection.lldp: default
Таким образом, это означает, что ранее незаметная настройка connection.secondaries
была установлена, без особых проблем, чтобы угадать, на myVPN UUID:0d9e60ef-6b5e-4f65-8312-8db428589866
. nm -настройки (5)говорит об этом в настройка подключения:
secondaries array of string []
List of connection UUIDs that should be activated when the base connection itself is activated. Currently only VPN connections are supported.
Теперь вы можете снова отменить любое автоматическое подключение к VPN на основном с помощью:
nmcli c modify id main connection.secondaries ''
и снова добавьте myVPN с (это массив,отсюда+
):
nmcli c modify id main +connection.secondaries 0d9e60ef-6b5e-4f65-8312-8db428589866
С помощью связующего кода (получения uuid из id и т. д. )теперь это можно автоматизировать.
Конечно, соответствующая строка добавляется или удаляется в файле где-то в /etc/NetworkManager/
, но на это не стоит полагаться.
NB :Я не знал об этой настройке до написания этого ответа, я просто сделал то, что сказал.
Глядя на исходный файл, который вы упомянули, команды могут выполняться как удаленный сценарий оболочки, который создается на лету на локальном хосте. Это используется только в том случае, если ssh-copy-id
не использует SFTP и удаленная версия не NetScreen .
Тогда это станет возможным, если вы измените переменную окружения AUTH_KEY_FILE
.