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.
        
        
          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, elogind-255.17, 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 session_tracking=elogind \
      -D modem_manager=false      \
      -D systemdsystemunitdir=no  \
      -D systemd_journal=false    \
      -D nm_cloud_setup=false     \
      -D qt=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 systemdsystemunitdir=no
          e -D systemd_journal=false:
          systemd não é usado para sistemas de inicialização SysV, de forma
          que evite instalar unidades e usar o diário do systemd.
        
        
          -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=elogind: Essa chave é usada para
          configurar elogind
          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
         
        
          
            Conjunto de Comandos Sequenciais de
            Inicialização
          
          
            Para iniciar automaticamente o processo de segundo plano
            "NetworkManager"
            quando o sistema for reinicializado, instale o conjunto
            sequencial de comandos de inicialização "/etc/rc.d/init.d/networkmanager" a partir do
            pacote "blfs-bootscripts-20250225".
          
          
            
            
              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".
            
            
              A maneira mais fácil de fazer isso é a de remover o S20network
              de /etc/rc.d/rc3.d/ e
              /etc/rc.d/rc5.d/.
            
            
              Além disso, se usar dhcpcd-10.2.4, tenha cuidado com problemas
              de tempo se configurar aplicativos de rede de intercomunicação
              como ntpd, nfs ou sshd. Leva vários segundos para dhcpcd
              inicializar a interface de rede de intercomunicação e, se esses
              aplicativos iniciarem antes que a interface de rede de
              intercomunicação seja completamente inicializada, esses
              aplicativos podem ter que ser iniciados manualmente.
            
           
          make install-networkmanager
         
       
      
        
          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"
                   
                 |