NetworkManager-1.54.0
      
      
        
          Introdução ao NetworkManager
        
        
          "NetworkManager" é um conjunto de
          ferramentas cooperativas que tornam a operação interativa de
          dispositivos via rede de intercomunicação simples e direta. Quer
          você use "WiFi", com fio, "3G" ou "Bluetooth", o "NetworkManager"
          te permite mudar rapidamente de uma rede de intercomunicação para
          outra: depois que uma rede de intercomunicação tiver sido
          configurada e conectada uma vez, ela poderá ser detectada e
          conectada novamente automaticamente na próxima vez que estiver
          disponível.
        
        
          Esse pacote é conhecido por construir e funcionar corretamente
          usando uma plataforma LFS 12.4.
        
        
          
          
            Nota
          
          
            Certifique-se de desabilitar o serviço "systemd-networkd" ou
            configurá-lo para não gerenciar as interfaces que você quiser
            gerenciar com o "NetworkManager".
          
         
        
          Informação do Pacote
        
        
        
          Dependências do NetworkManager
        
        
          Exigidas
        
        
          libndp-1.9
        
        
          Recomendadas
        
        
          cURL-8.15.0, dhcpcd-10.2.4, GLib-2.84.4 (com
          GObject Introspection), iptables-1.8.11, libpsl-0.21.5, newt-0.52.25 (para nmtui), nss-3.115, Polkit-126 (tempo de execução), PyGObject-3.52.3, Systemd-257.8, Vala-0.56.18 e
          wpa_supplicant-2.11 (tempo de execução,
          construído com suporte a D-Bus)
        
        
          Opcionais
        
        
          BlueZ-5.83, D-Bus Python-1.4.0 (para a suíte de
          teste), GnuTLS-3.8.10 (pode ser usado em vez de
          nss-3.115), GTK-Doc-1.34.0, jansson-2.14.1, libnvme-1.15,
          ModemManager-1.24.2, UPower-1.90.9, Valgrind-3.25.1, dnsmasq, firewalld, libaudit,
          libteam, 
          mobile-broadband-provider-info, PPP e RP-PPPoE
        
       
      
        
          Configuração do Núcleo
        
        
          Se desejar executar os testes, [então] verifique se pelo menos as
          seguintes opções estão habilitadas na configuração do núcleo. Essas
          opções foram consideradas necessárias, mas podem não ser
          suficientes. Recompile o núcleo se necessário:
        
        
[*] Networking support --->                                                [NET]
  Networking options --->
    [*]   TCP/IP networking                                               [INET]
    <*/M>   IP: tunneling                                             [NET_IPIP]
    <*/M>   IP: GRE demultiplexer                              [NET_IPGRE_DEMUX]
    <*/M>   IP: GRE tunnels over IP                                  [NET_IPGRE]
    <*>     The IPv6 protocol --->                                        [IPV6]
      <*/M>   IPv6: IPv6-in-IPv4 tunnel (SIT driver)                  [IPV6_SIT]
      <*/M>   IPv6: GRE tunnel                                        [IPV6_GRE]
      [*]     IPv6: Multiple Routing Tables               [IPV6_MULTIPLE_TABLES]
    [*]     MPTCP: Multipath TCP                                         [MPTCP]
    [*]       MPTCP: IPv6 support for Multipath TCP                 [MPTCP_IPV6]
    <*/M> 802.1Q/802.1ad VLAN Support                               [VLAN_8021Q]
    [*]   QoS and/or fair queueing --->                              [NET_SCHED]
      <*> Stochastic Fairness Queueing (SFQ)                       [NET_SCH_SFQ]
      <*> Token Bucket Filter (TBF)                                [NET_SCH_TBF]
      <*> Fair Queue Controlled Delay AQM (FQ_CODEL)          [NET_SCH_FQ_CODEL]
      <*> Ingress/classifier-action Qdisc                      [NET_SCH_INGRESS]
Device Drivers --->
  [*] Network device support --->                                   [NETDEVICES]
    [*]   Network core driver support                                 [NET_CORE]
    <*/M>   Bonding driver support                                     [BONDING]
    <*/M>   Dummy net driver support                                     [DUMMY]
    <*/M>   Ethernet team driver support --->                         [NET_TEAM]
    <*/M>   MAC-VLAN support                                           [MACVLAN]
    <*/M>     MAC-VLAN based tap driver                                [MACVTAP]
    <*/M>   IP-VLAN support                                             [IPVLAN]
    <*/M>   Virtual eXtensible Local Area Network (VXLAN)                [VXLAN]
    <*/M>   Virtual ethernet pair device                                  [VETH]
    <*/M>   Virtual Routing and Forwarding (Lite)                      [NET_VRF]
       
      
        
          Instalação do NetworkManager
        
        
          Corrija os conjuntos sequenciais de comandos "Python", de forma que
          eles usem "Python 3":
        
        grep -rl '^#!.*python$' | xargs sed -i '1s/python/&3/'
        
          Instale o NetworkManager
          executando os seguintes comandos:
        
        mkdir build &&
cd    build &&
meson setup ..                    \
      --prefix=/usr               \
      --buildtype=release         \
      -D libaudit=no              \
      -D nmtui=true               \
      -D ovs=false                \
      -D ppp=false                \
      -D nbft=false               \
      -D selinux=false            \
      -D qt=false                 \
      -D session_tracking=systemd \
      -D nm_cloud_setup=false     \
      -D modem_manager=false      &&
ninja
        
          Uma sessão gráfica já ativa com endereço de barramento é necessária
          para executar os testes. Para testar os resultados, emita
          "ninja test".
        
        
          Uns poucos testes possivelmente falhem, dependendo das opções de
          núcleo habilitadas.
        
        
          Agora, como o(a) usuário(a) "root":
        
        ninja install &&
mv -v /usr/share/doc/NetworkManager{,-1.54.0}
        
          Se você não passou a opção -D docs=true
          para meson, você
          consegue instalar as páginas de manual pré geradas com (como o(a)
          usuário(a) root):
        
        for file in $(echo ../man/*.[1578]); do
   section=${file##*.} &&
   install -vdm 755 /usr/share/man/man$section
   install -vm 644 $file /usr/share/man/man$section/
done
        
          Se você não tiver usado -D docs=true, a
          documentação HTML pré gerada também pode ser instalada com (como
          o(a) usuário(a) root):
        
        cp -Rv ../docs/{api,libnm} /usr/share/doc/NetworkManager-1.54.0
       
      
        
          Explicações do Comando
        
        
          --buildtype=release:
          Especifique um tipo de construção adequado para lançamentos
          estáveis do pacote, pois o padrão possivelmente produza binários
          não otimizados.
        
        
          -D docs=true: Use essa chave para
          habilitar construir páginas de manual e documentação se GTK-Doc-1.34.0 estiver instalado.
        
        
          -D nmtui=true: Essa chave
          habilita construir nmtui.
        
        
          -D ovs=false: Essa chave
          desabilita a integração do Open vSwitch porque ela precisa de
          jansson-2.14.1. Remova-a se você tiver
          jansson-2.14.1 instalado em teu sistema.
        
        
          -D modem_manager=false:
          Essa chave é exigida se o ModemManager não estiver instalado. Omita essa
          chave se você tiver construído ModemManager e mobile-broadband-provider-info.
        
        
          -D nbft=false: Essa chave é
          exigida se libnvme-1.15 não estiver instalado e
          desabilitado suporte a NBFT no gerador do initrd. Observe que o
          BLFS não usa o gerador de initrd fornecido pelo NetworkManager por
          padrão.
        
        
          -D
          session_tracking=systemd: Essa chave é usada para
          configurar systemd-logind como o aplicativo
          padrão para rastreamento de sessão.
        
        
          -D ppp=false: Essa chave
          desabilita suporte a PPP no
          NetworkManager, já que os
          aplicativos necessários para isso não estão instalados. Remova essa
          chave se você precisar de suporte a PPP e tiver o PPP instalado.
        
        
          -D libaudit=no e -D selinux=false: Essa chave
          desabilita o suporte para libaudit e SELinux, vez que ele(a) não é
          usado(a) no BLFS.
        
        
          -D qt=false: Essa chave
          desabilita os exemplos do Qt 5.
        
        
          -D nm_cloud_setup=false:
          Use essa chave se você não tiver instalado jansson-2.14.1. Isso desabilita
          nm-cloud-setup, que é usado para configurar automaticamente a rede
          de intercomunicação em um ambiente de nuvem pública dentro de uma
          VM.
        
        
          -D crypto=gnutls: Use essa chave se
          você tiver GnuTLS instalado e quiser usá-lo para operações de
          certificados e chaves no NetworkManager, em vez de usar o NSS (o
          padrão).
        
        
          -D crypto=null: Use essa chave se nem
          NSS nem GnuTLS estiverem instalados, mas você quiser construir
          NetworkManager de qualquer maneira. Essa chave fará com que
          NetworkManager careça de alguns recursos (por exemplo, 802.1X).
        
       
      
        
          Configurando o NetworkManager
        
        
          
            Arquivos de Configuração
          
          
            /etc/NetworkManager/NetworkManager.conf
          
         
        
          
            Informação de Configuração
          
          
            Para o "NetworkManager"
            funcionar, pelo menos um arquivo de configuração mínima precisa
            estar presente. Tal arquivo não é instalado com "make install". Emita o seguinte
            comando como o(a) usuário(a) "root" para criar um arquivo "NetworkManager.conf" mínimo:
          
          cat >> /etc/NetworkManager/NetworkManager.conf << "EOF"
[main]
plugins=keyfile
EOF
          
            Esse arquivo não deveria ser modificado diretamente pelos(as)
            usuários(as) do sistema. Em vez disso, mudanças específicas do
            sistema deveriam ser feitas usando arquivos de configuração no
            diretório "/etc/NetworkManager/conf.d".
          
          
            Para permitir que o "Polkit" gerencie autorizações, adicione o
            seguinte arquivo de configuração:
          
          cat > /etc/NetworkManager/conf.d/polkit.conf << "EOF"
[main]
auth-polkit=true
EOF
          
            Para usar algo diferente do cliente DHCP integrado (recomendado
            se usar somente o nmcli), use a seguinte
            configuração (os valores válidos incluem ou dhcpcd ou internal):
          
          cat > /etc/NetworkManager/conf.d/dhcp.conf << "EOF"
[main]
dhcp=dhcpcd
EOF
          
            Para evitar que o "NetworkManager" atualize o arquivo
            "/etc/resolv.conf", adicione o
            seguinte arquivo de configuração:
          
          cat > /etc/NetworkManager/conf.d/no-dns-update.conf << "EOF"
[main]
dns=none
EOF
          
            Para opções adicionais de configuração, veja-se "man 5 NetworkManager.conf".
          
          
            Para permitir que usuários(as) regulares configurem conexões de
            rede de intercomunicação, você deveria adicioná-los(as) ao grupo
            "netdev" e criar uma regra do
            "polkit" que conceda acesso.
            Execute os seguintes comandos como o(a) usuário(a) "root":
          
          groupadd -fg 86 netdev &&
/usr/sbin/usermod -a -G netdev <nome_usuário(a)>
cat > /usr/share/polkit-1/rules.d/org.freedesktop.NetworkManager.rules << "EOF"
polkit.addRule(function(action, subject) {
    if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("netdev")) {
        return polkit.Result.YES;
    }
});
EOF
         
        
          
            
            Unidade do systemd
          
          
            Para iniciar o processo de segundo plano NetworkManager na
            inicialização, habilite a unidade do systemd instalada
            anteriormente executando o seguinte comando como o(a) usuário(a)
            root:
          
          
            
            
              Nota
            
            
              Se usar o "Network Manager"
              para gerenciar uma interface, [então] qualquer configuração
              anterior para essa interface deveria ser removida e a interface
              ser desativada antes de iniciar o "Network Manager".
            
           
          systemctl enable NetworkManager
          
            Começando na versão 1.11.2 do "NetworkManager", uma unidade do "systemd"
            chamada "NetworkManager-wait-online.service" está
            habilitada, a qual é usada para evitar que serviços que exigem
            conectividade de rede de intercomunicação iniciem até que o
            "NetworkManager" estabeleça uma
            conexão. Para desabilitar esse comportamento, execute o seguinte
            comando como o(a) usuário(a)" root":
          
          systemctl disable NetworkManager-wait-online
         
       
      
        
          Conteúdo
        
        
          
            
              Aplicativos Instalados:
              NetworkManager, nmcli, nm-online, nmtui e
              simbolicamente vinculado ao nmtui: nmtui-connect, nmtui-edit e
              nmtui-hostname
            
            
              Bibliotecas Instaladas:
              libnm.so e vários módulos sob
              /usr/lib/NetworkManager
            
            
              Diretórios Instalados:
              /etc/NetworkManager, /usr/include/libnm,
              /usr/lib/NetworkManager, /usr/share/doc/NetworkManager-1.54.0,
              /usr/share/gtk-doc/html/{libnm,NetworkManager} (se a
              documentação for construída) e /var/lib/NetworkManager
            
           
         
        
          
            Descrições Curtas
          
          
            
              
              
            
            
              
                | 
                   
                    nmcli
                   
                 | 
                
                   
                    é uma ferramenta de linha de comando para controlar o
                    "NetworkManager" e obter
                    a situação dele
                   
                 | 
              
              
                | 
                   
                    nm-online
                   
                 | 
                
                   
                    é um utilitário para determinar se você está online
                   
                 | 
              
              
                | 
                   
                    nmtui
                   
                 | 
                
                   
                    é uma interface interativa de usuário(a) baseada em
                    "Ncurses" para o "nmcli"
                   
                 | 
              
              
                | 
                   
                    nmtui-connect
                   
                 | 
                
                   
                    é uma interface interativa de usuário(a) baseada em
                    "Ncurses" para ativar/desativar conexões
                   
                 | 
              
              
                | 
                   
                    nmtui-edit
                   
                 | 
                
                   
                    é uma interface interativa de usuário(a) baseada em
                    "Ncurses" para editar conexões
                   
                 | 
              
              
                | 
                   
                    nmtui-hostname
                   
                 | 
                
                   
                    é uma interface interativa de usuário(a) baseada em
                    "Ncurses" para editar o nome do dispositivo
                   
                 | 
              
              
                | 
                   
                    NetworkManager
                   
                 | 
                
                   
                    é o processo de segundo plano de gerenciamento de rede de
                    intercomunicação
                   
                 | 
              
              
                | 
                   
                    libnm.so
                   
                 | 
                
                   
                    contém funções usadas pelo "NetworkManager"
                   
                 |