Обходной путь, который я использую, чтобы обойти недостаток функциональности, поставляемой с nmcli в системах на основе debian, - это использовать команды для копирования существующего файла конфигурации VPN из папки / etc / NetworkManager / system-settings в новый файл ( как root, конечно) в той же папке и замените строки для разрешенных значений пользователя, шлюза, имени пользователя и пароля в новой копии. Затем я перезапускаю сетевой менеджер, чтобы изменения вступили в силу.
Например:
Типичный файл конфигурации в папке / etc / NetworkManager / system-settings может выглядеть так:
[connection]
id=<<id>>
uuid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
type=vpn
permissions=user:<<permissions_user>>:;
autoconnect=false
[vpn]
password-flags=0
service-type=org.freedesktop.NetworkManager.pptp
require-mppe-128=yes
mppe-stateful=yes
user=<<user>>
refuse-eap=yes
refuse-chap=yes
gateway=<<gateway>>
refuse-pap=yes
[vpn-secrets]
password=<<password>>
[ipv4]
method=auto
... так что вы можете просто создать новый файл конфигурации, похожий на тот, что приведен выше ...
cd /etc/NetworkManager/system-settings
cp "existing-working-vpn-config-file" "new-vpn-config-file"
... затем замените указанные выше значения «<< >>» своими настройками VPN, например:
sed -i "s/<<permissions_user>>/my_permissions_user/g" new-vpn-config-file
sed -i "s/<<user>>/my_user/g" new-vpn-config-file
sed -i "s/<<gateway>>/my_gateway/g" new-vpn-config-file
sed -i "s/<<password>>/my_password/g" new-vpn-config-file
... и, наконец, перезапустите диспетчер сети с помощью следующей команды:
service network-manager restart
Примечание: Настройка UUID не имеет значения, даже если она не уникальна. Понятия не имею почему. Вещи просто работают.
Кроме того, если вы добавляете новый файл, а не копируете, убедитесь, что права доступа к файлу установлены на 600 (чтение и запись), а владельцем является root.
Попробуйте и скажите, что вы думаете. У меня это работает, все через командную строку.
Porque puede touch
varios archivos a la vez sin escribir ningún carácter especial adicional. Eso incluye cosas como la expansión de llaves, p. touch file{1,2,3,4}
.
Otro problema es que cuando estás escribiendo un tutorial, es bastante importante darse cuenta de que tus lectores probablemente no estén muy -versados en el tema. Un comando simple puede ser mucho más comprensible que una combinación extraña -de caracteres que no son letras -. Esperaría que haya una cantidad de usuarios ocasionales de shell que no sepan qué es :
, por la sencilla razón de que en realidad no hace nada. De manera similar, para un simple > foo
sin un comando :, incluso si sabe qué es una redirección, una redirección sin una fuente puede no ser intuitiva.
Además, aquí en unix.se a menudo escribimos ejemplos de comandos con un signo de dólar al principio para indicar el aviso. Los caracteres especiales al comienzo de la línea pueden confundirse con eso. (Tenga en cuenta que hay sistemas y shells que usan >
como parte del indicador predeterminado.)
Ni siquiera necesitas usar :
; puedes simplemente> file
(al menos en bash
; otras conchas pueden comportarse de manera diferente ).
En términos prácticos, no hay una diferencia real aquí (aunque la minúscula sobrecarga de llamar a /bin/touch
es una cosa ).
touch
, sin embargo, también se puede utilizar para modificar las marcas de tiempo en un archivo que ya existe sin cambiar o borrar el contenido; además, > file
eliminará cualquier file
que ya exista. Esto se puede solucionar utilizando >> file
.
Otra diferencia con touch
es que puede hacer que cree (o actualice la marca de tiempo en )varios archivos a la vez (, p.touch foo bar baz quux
)con una sintaxis más sucinta que con la redirección, donde cada archivo necesita su propia redirección (p.>foo >bar >baz >quux
).
Usandotouch
:
$ touch foo; stat -x foo; sleep 2; touch foo; stat -x foo
File: "foo"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (991148597/redacted) Gid: (1640268302/redacted)
Device: 1,5 Inode: 8597208698 Links: 1
Access: Fri May 25 10:55:19 2018
Modify: Fri May 25 10:55:19 2018
Change: Fri May 25 10:55:19 2018
File: "foo"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (991148597/redacted) Gid: (1640268302/redacted)
Device: 1,5 Inode: 8597208698 Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:55:21 2018
Change: Fri May 25 10:55:21 2018
Uso de la redirección:
$ > foo; stat -x foo; sleep 2; >> foo; stat -x foo
File: "foo"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (991148597/redacted) Gid: (1640268302/redacted)
Device: 1,5 Inode: 8597208698 Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:56:25 2018
Change: Fri May 25 10:56:25 2018
File: "foo"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (991148597/redacted) Gid: (1640268302/redacted)
Device: 1,5 Inode: 8597208698 Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:56:25 2018
Change: Fri May 25 10:56:25 2018
Imagine que está buscando uno de sus antiguos scripts de shell del cual solo recuerda que se está creando un archivo de marcador en /tmp. Es fácil buscar en todos sus archivos *.sh la palabra "touch". En su lugar, buscar dos puntos generará muchos falsos positivos si no sabe qué nombre de archivo exacto buscar.