NetworkManager-1.8.0

Introduction à NetworkManager

NetworkManager est un ensemble d'outils associés qui simplifient et rendent le réseau plus directement gérable. Que ce soit en Wifi, filaire, 3G ou Bluetooth, NetworkManager vous permet de passer rapidement d'un réseau à l'autre : une fois qu'un réseau a été configuré et qu'on s'y est relié une fois, on peut le détecter et s'y reconnecter automatiquement la prochaine fois qu'il sera disponible.

Ce paquet est connu pour se construire correctement sur une plateforme LFS-8.0.

[Note]

Note

Assurez-vous que vous avez désactivé le service systemd-networkd ou que vous l'avez configuré pour ne pas gérer les interfaces que vous voulez gérer avec NetworkManager.

Informations sur le paquet

Dépendances de NetworkManager

Requises

dbus-glib-0.108, libndp-1.6, libnl-3.3.0 et NSS-3.32

Recommandées

Facultatives

BlueZ-5.46, GTK-Doc-1.26, Qt-5.9.1 (pour les exemples), ModemManager-1.6.8, Valgrind-3.13.0, dnsmasq, Jansson, libteam, PPP et RP-PPPoE

Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/NetworkManager

Installation de NetworkManager

Si Qt-5.9.1 est installé et que les exemples basés sur Qt sont désirés, corrigez le script configure :

sed -e '/Qt[CDN]/s/Qt/Qt5/g'       \
    -e 's/moc_location/host_bins/' \
    -i configure

Installez NetworkManager en lançant les commandes suivantes :

CXXFLAGS="-O2 -fPIC"                                        \
./configure --prefix=/usr                                   \
            --sysconfdir=/etc                               \
            --localstatedir=/var                            \
            --with-nmtui                                    \
            --disable-ppp                                   \
            --disable-json-validation                       \
            --with-session-tracking=systemd                 \
            --with-systemdsystemunitdir=/lib/systemd/system \
            --docdir=/usr/share/doc/network-manager-1.8.0 &&
make

Une session graphique déjà active avec une adresse bus est nécessaire pour lancer les tests. Pour tester les résultats, tapez : make check.

Maintenant, en tant qu'utilisateur root :

make install

Explication des commandes

CXXFLAGS="-O2 -fPIC" : Ces option du compilateur sont nécessaires pour construire les exemples basés sur Qt5.

--with-nmtui : Ce paramètre active la construction de nmtui.

--with-session-tracking=systemd : Ce paramètre est utilisé pour configurer systemd-logind comme programme de suivi de session par défaut.

--with-systemdsystemunitdir=/lib/systemd/system : Ce paramètre est utilisé pour configurer correctement le répertoire d'installation des unités systemd.

--disable-ppp : Ce paramètre désactive le support de PPP dans NetworkManager.

--disable-json-validation : Ce paramètre permet la construction sans Jansson, qui est requis pour la validation de la configuration de « team » (team est l'une des manière de lier les interfaces réseaux pour un meilleur débit).

--enable-gtk-doc : Utilisez ce paramètre si vous avez installé GTK-Doc-1.26 et souhaitez construire les manuels de l'API.

--wihout-iptables : Utilisez ce paramètre si vous n'avez pas installé Iptables.

--disable-introspection : Utilisez ce paramètre si gobject-introspection-1.52.1 est installé et que vous souhaitez construire sans l'introspection. Ceci supprime aussi le besoin de PyGObject-3.24.1.

Configuration de NetworkManager

Fichiers de config

/etc/NetworkManager/NetworkManager.conf

Informations de configuration

Pour que NetworkManager fonctionne, il faut qu'il y ait au moins un fichier de configuration minimal. Ce fichier n'est pas installé par make install. Lancez la commande suivante en tant qu'utilisateur root pour créer un fichier NetworkManager.conf minimal :

cat >> /etc/NetworkManager/NetworkManager.conf << "EOF"
[main]
plugins=keyfile
EOF

Vous pouvez ajouter dns=none pour supprimer les changements de /etc/resolv.conf. Voir man 5 NetworkManager.conf pour toutes les options supplémentaires.

Pour permettre aux utilisateurs normaux de configurer les connections réseau, vous devriez les ajouter au groupe netdev et créer une règle polkit qui accorde l'accès. Lancez les commandes suivantes en tant qu'utilisateur root :

groupadd -fg 86 netdev &&
/usr/sbin/usermod -a -G netdev <username>

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

Unité Systemd

Pour démarrer NetworkManager au démarrage, activez l'unité précédemment installée en lançant la commande suivante en tant qu'utilisateur root :

[Note]

Note

Si vous utilisez Network Manager pour gérer une interface, toute configuration précédente pour cette interface devrait être supprimée et l'interface être éteinte avant de démarrer Network Manager.

systemctl enable NetworkManager

NetworkManager fournit aussi une unité systemd nommée NetworkManager-wait-online.service qui peut être utilisée pour éviter que les services qui requièrent une connectivité réseau ne démarre avant que NetworkManager n'ait établit une connexion. Pour l'activer, lancez la commande suivante en tant qu'utilisateur root :

systemctl enable NetworkManager-wait-online

Contenu

Programmes installés: NetworkManager, nmcli, nm-online, nmtui et, liés en dur à nmtui : nmtui-connect, nmtui-edit et nmtui-hostname
Bibliothèques installées: libnm.so, libnm-glib.so, libnm-glib-vpn.so, libnm-util.so, et des modules sous /usr/lib/NetworkManager
Répertoires installés: /etc/NetworkManager, /usr/include/{libnm,libnm-glib,NetworkManager}, /usr/lib/NetworkManager, /usr/share/doc/NetworkManager-1.8.0, /usr/share/gtk-doc/html/{libnm,libnm-glib,libnm-util,NetworkManager} (si la documentation est construite) et /var/{lib,run}/NetworkManager

Descriptions courtes

nmcli

est un outil en ligne de commande pour contrôler NetworkManager et obtenir son état.

nm-online

est un outil pour savoir si on est connecté.

nmtui

est une interface basée sur ncurses pour nmcli

nmtui-connect

est une interface interactive basée sur ncurses pour activer/désactiver les connexions.

nmtui-edit

est une interface interactive basée sur ncurses pour éditer les connexions.

nmtui-hostname

est une interface interactive basée sur ncurses pour éditer le nom d'hôte.

NetworkManager

est le démon de gestion réseau.

libnm-glib.so

contient des fonctions utilisées par NetworkManager.

libnm-glib-vpn.so

contient des fonctions utilisées par les greffons VPN de NetworkManager.

libnm-util.so

contient des fonctions utilisées par les outils de NetworkManager.

Last updated on 2017-05-26 18:07:01 +0200