# NetworkManager (Français)

From ArchWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Related articles

- Network configuration (Français)
- Wireless network configuration

NetworkManager est un outil de gestion du réseau. Il est aussi utile pour les liaisons filaires que sans fil, il supporte les modems et certains types de VPN.

## Installation

Pour la base installez networkmanager.

Pour un environnement GTK, vous pouvez installer l'applet network-manager-applet et pour sauvegarder les détails d'authentification gnome-keyring

Pour KDE, installez kdeplasma-addons et plasma-nm.

## Ligne de commande

La commande `nmcli` permet de contrôler NetworkManager en ligne de commande. https://www.mankier.com/1/nmcli

Se connecter à un réseau wifi :

    nmcli dev wifi connect <name> password <password>

Se connecter à un réseau wifi sur l'interface wlp4s0 :

    nmcli dev wifi connect <name> password <password> iface wlp4s0 [profile name]

Déconnecter l'interface enp0s5 :

    nmcli dev disconnect iface enp0s5

Reconnecter une interface signalée comme déconnectée :

    nmcli con up uuid <uuid>

Afficher la liste des UUIDs :

    nmcli con show

Voir la liste des réseaux et leur état :

    nmcli dev

Couper le wifi :

    nmcli r wifi off

## Configuration

Attention: Pour éviter des problèmes de conflit, pensez à bien désactiver tout autre service réseau en action (`dhcpcd.service`, `netctl.service`, `wicd.service`) avant d'utiliser NetworkManager sur une interface réseau donnée.

Rajouter le service `NetworkManager.service` :

    systemctl enable NetworkManager

Certains services nécessitent d'avoir une connexion réseau pour démarrer. Selon votre besoin, vous pouvez utiliser le dispatcher de NetworkManager pour les lancer ou rajouter le service `NetworkManager-wait-online.service` qui permet d'attendre une connexion avant de poursuivre le démarrage.

Note: Le service `NetworkManager-wait-online.service` bloque le démarrage jusqu'à avoir une connexion ou pendant une temporisation de 30s.

Pour utiliser le dispatcher, il faut créer des scripts dans le répertoire `/etc/NetworkManager/dispatcher.d`, le fichier peut avoir un préfixe pour donner un ordre de lancement, exemple : `10-netfs`, `20-ntpd`

Le script en lui même prend 2 arguments, l'un pour le nom de l'interface, l'autre pour le statut, voici un exemple:

    #!/bin/sh
    INTERFACE=$1 # Le nom de l'interface
    STATUS=$2 # Le statut

    case "$STATUS" in
        'up') exec systemctl start [service];;
        'down') exec systemctl stop [service];;
    esac

Afin que les scripts s'exécutent, il est nécessaire d'activer le dispatcher:

    systemctl enable NetworkManager-dispatcher

## Astuces

### Autoriser un utilisateur à modifier la configuration de NetworkManager

Attention: Ceci est un contournement, par défaut, l'utilisateur d'une session locale et active (systemd-logind) a le droit de modifier la configuration.

Ajouter l'utilisateur au groupe `network`:

    usermod -aG network USER

Ajouter une règle Polkit en créant le fichier `/etc/polkit-1/rules.d/10-networkmanager.rules` :

    /etc/polkit-1/rules.d/10-networkmanager.rules

    polkit.addRule (function (a,s) {
            if (a.id.indexOf ('org.freedesktop.NetworkManager.') == 0 && s.isInGroup ('network'))
                    return polkit.Result.YES;
    });

Categories:

- Network managers (Français)
- Red Hat (Français)