frankenstein Asked: 2019-10-22 21:05:14 +0800 CST2019-10-22 21:05:14 +0800 CST 2019-10-22 21:05:14 +0800 CST 通过 gsettings/script/terminal 在 Linux 中配置网络设置 772 如何通过脚本在 Ubuntu 18.04 中配置网络设置——如身份、IPv4 格式(地址、网络掩码、网关、DNS)、安全性和密码? 我找不到任何 gsettings 模式。如果有人能指出我正确的方向,我将不胜感激。 network-manager settings gsettings system-settings 18.04 1 个回答 Voted Best Answer mchid 2019-10-23T00:36:31+08:002019-10-23T00:36:31+08:00 您可以使用该nmcli工具通过 NetworkManager 编辑连接。 例如,假设您要为设备创建以太网连接:enp1s0。 IP:192.168.1.10 网关:192.168.1.1 域名解析:8.8.8.8 连接名称:“net-enp1s0” sudo nmcli con add con-name "net-enp1s0" ifname enp1s0 type ethernet ipv4.method manual ip4 192.168.1.10/24 gw4 192.168.1.1 ipv4.dns 8.8.8.8 或作为脚本(您需要使用它sudo来运行此脚本): #!/bin/bash nmcli con add \ con-name "net-enp1s0" \ ifname enp1s0 \ type ethernet \ ipv4.method manual \ ip4 192.168.1.10/24 \ gw4 192.168.1.1 \ ipv4.dns 8.8.8.8 这些是选项: con= 连接 add= 添加 con-name "net-enp1s0"= 连接 ID ifname enp1s0= 连接接口名称 type ethernet= 连接类型 ipv4.method manual= 使用静态 IP ip4 192.168.1.10/24= 本地 ipv4 地址和网络掩码 ( 24=255.255.255.0 ) gw4 192.168.1.1= 网关 ipv4.dns 8.8.8.8= DNS 服务器 您还可以编辑现有连接。 我们的“net-enp1s0”连接的配置文件是:/etc/NetworkManager/system-connections/net-enp1s0. 该文件应如下所示: [connection] id=net-enp1s0 uuid=5099a1ae-1ae0-42d7-acf8-178ef3772f4f type=ethernet interface-name=enp1s0 permissions= [ethernet] mac-address-blacklist= [ipv4] address1=192.168.1.10/24,192.168.1.1 dns=8.8.8.8; dns-search= method=manual [ipv6] addr-gen-mode=stable-privacy dns-search= method=auto 如果您编辑网络的配置文件,您可以运行以下命令来应用更改: sudo nmcli con reload 以下示例是使用密码“freepassword”在名为“freewifi”的网络上使用名为“coffee-shop”的 PSK 的 WPA 无线连接: sudo nmcli con add con-name "coffee-shop" type wifi ifname wlp2s0 ssid "freewifi" -- wifi-sec.key-mgmt wpa-psk wifi-sec.psk "freepassword" ipv4.method manual ip4 192.168.1.10/24 gw4 192.168.1.1 ipv4.dns 8.8.8.8 这是一个脚本: #!/bin/bash nmcli con add \ con-name "coffee-shop" \ type wifi \ ifname wlp2s0 \ ssid "freewifi" \ -- wifi-sec.key-mgmt wpa-psk \ wifi-sec.psk "freepassword" \ ipv4.method manual \ ip4 192.168.1.10/24 \ gw4 192.168.1.1 \ ipv4.dns 8.8.8.8 链接: Wifi示例基于用户@cody-G的此答案 gnome.org 上的 NetworkManager nmcli 文档 CertDepot教程“RHEL7:配置 IPv4 地址” 此外,这个Arch Linux wiki 页面有一个nmcli示例列表。 CertDepot 教程适用于 RedHat,但几乎所有nmcli内容都适用于 Ubuntu。但是,Ubuntu 配置文件在/etc/NetworkManager/system-connections,您可以直接编辑这些文件。
您可以使用该
nmcli
工具通过 NetworkManager 编辑连接。例如,假设您要为设备创建以太网连接:
enp1s0
。IP:192.168.1.10
网关:192.168.1.1
域名解析:8.8.8.8
连接名称:“net-enp1s0”
或作为脚本(您需要使用它
sudo
来运行此脚本):这些是选项:
con
= 连接add
= 添加con-name "net-enp1s0"
= 连接 IDifname enp1s0
= 连接接口名称type ethernet
= 连接类型ipv4.method manual
= 使用静态 IPip4 192.168.1.10/24
= 本地 ipv4 地址和网络掩码 ( 24=255.255.255.0 )gw4 192.168.1.1
= 网关ipv4.dns 8.8.8.8
= DNS 服务器您还可以编辑现有连接。
我们的“net-enp1s0”连接的配置文件是:
/etc/NetworkManager/system-connections/net-enp1s0
. 该文件应如下所示:如果您编辑网络的配置文件,您可以运行以下命令来应用更改:
以下示例是使用密码“freepassword”在名为“freewifi”的网络上使用名为“coffee-shop”的 PSK 的 WPA 无线连接:
这是一个脚本:
链接:
Wifi示例基于用户@cody-G的此答案
gnome.org 上的 NetworkManager nmcli 文档
CertDepot教程“RHEL7:配置 IPv4 地址”
此外,这个Arch Linux wiki 页面有一个
nmcli
示例列表。CertDepot 教程适用于 RedHat,但几乎所有
nmcli
内容都适用于 Ubuntu。但是,Ubuntu 配置文件在/etc/NetworkManager/system-connections
,您可以直接编辑这些文件。