37.3. 手动创建 keyfile 格式的 NetworkManager 配置文件

您可以手动创建密钥文件格式的 NetworkManager 连接配置集。

注意

手动创建或更新配置文件可能会导致意外或无法正常工作的网络配置。作为替代方案,您可以在离线模式下使用 nmcli。请参阅 使用 nmcli 在离线模式下创建 keyfile 连接配置文件

步骤

  1. 如果您为硬件接口(如以太网)创建了一个配置文件,请显示此接口的 MAC 地址:

    # ip address show enp1s0
    2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
        link/ether 00:53:00:8f:fa:66 brd ff:ff:ff:ff:ff:ff
  2. 创建连接配置文件。例如,对于使用 DHCP 的以太网设备的连接配置文件,请使用以下内容创建 /etc/NetworkManager/system-connections/example.nmconnection 文件:

    [connection]
    id=example_connection
    type=ethernet
    autoconnect=true
    
    [ipv4]
    method=auto
    
    [ipv6]
    method=auto
    
    [ethernet]
    mac-address=00:53:00:8f:fa:66
    注意

    您可以使用任何以 .nmconnection 为后缀的文件名。但是,当您稍后使用 nmcli 命令来管理连接时,您必须在引用此连接时使用 id 变量中设置的连接名称。当省略 id 变量时,请使用不带 .nmconnection 的文件名来引用此连接。

  3. 对配置文件设置权限,以便只有 root 用户可以读和更新它:

    # chown root:root /etc/NetworkManager/system-connections/example.nmconnection
    # chmod 600 /etc/NetworkManager/system-connections/example.nmconnection
  4. 重新加载连接配置文件:

    # nmcli connection reload
  5. 验证 NetworkManager 是否从配置文件读取配置文件:

    # nmcli -f NAME,UUID,FILENAME connection
    NAME                UUID                                  FILENAME
    example-connection  86da2486-068d-4d05-9ac7-957ec118afba  /etc/NetworkManager/system-connections/example.nmconnection
    ...

    如果命令未显示新添加的连接,请验证文件权限和您在文件中使用的语法是否正确。

  6. 如果将配置文件中的 autoconnect 变量设置为 false,激活连接:

    # nmcli connection up example_connection

验证

  1. 显示连接配置文件:

    # nmcli connection show example_connection

其他资源

  • nm-settings-keyfile(5)