%general-entities; ]> $LastChangedBy$ $Date$ NetworkManager-&NetworkManager-version; NetworkManager Introduction to NetworkManager NetworkManager is a set of co-operative tools that make networking simple and straightforward. Whether WiFi, wired, 3G, or Bluetooth, NetworkManager allows you to quickly move from one network to another: Once a network has been configured and joined once, it can be detected and re-joined automatically the next time it's available. &lfs82_checked; Make sure that you disable the systemd-networkd service or configure it not to manage the interfaces you want to manage with NetworkManager. Package Information Download (HTTP): Download (FTP): Download MD5 sum: &NetworkManager-md5sum; Download size: &NetworkManager-size; Estimated disk space required: &NetworkManager-buildsize; Estimated build time: &NetworkManager-time; NetworkManager Dependencies Required , , , and Recommended , , or (client only), , , (for nmtui), , , , , , and (built with D-Bus support), Optional , , (for examples), , , dnsmasq, Jansson, libteam, libpsl, PPP, and RP-PPPoE User Notes: Installation of NetworkManager If is installed and the Qt based examples are desired, fix the configure script: sed -e '/Qt[CDN]/s/Qt/Qt5/g' \ -e 's/moc_location/host_bins/' \ -i configure Install NetworkManager by running the following commands: CXXFLAGS="-O2 -fPIC" \ ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --with-nmtui \ --disable-ppp \ --disable-json-validation \ --disable-ovs \ --with-udev-dir=/lib/udev \ --with-systemdsystemunitdir=no \ --docdir=/usr/share/doc/network-manager-&NetworkManager-version; && make CXXFLAGS="-O2 -fPIC" \ ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --with-nmtui \ --disable-ppp \ --disable-json-validation \ --disable-ovs \ --with-udev-dir=/lib/udev \ --with-session-tracking=systemd \ --with-systemdsystemunitdir=/lib/systemd/system \ --docdir=/usr/share/doc/network-manager-&NetworkManager-version; && make An already active graphical session with bus address is necessary to run the tests. To test the results, issue: make check. Now, as the root user: make install Command Explanations CXXFLAGS="-O2 -fPIC": These compiler options are necessary to build the Qt5 based examples. --with-nmtui: This parameter enables build of nmtui. --with-session-tracking=systemd: This switch is used to set systemd-logind as the default program for session tracking. --with-systemdsystemunitdir=no: systemd is not used for sysv init systems. --with-systemdsystemunitdir=/lib/systemd/system: This switch is used to set the correct installation directory for systemd units. --disable-ppp: This parameter disables PPP support in NetworkManager. --disable-json-validation: This parameter allows building without Jansson, which is needed for team configuration validation (team is one way of bonding network interfaces for increased throughput). --disable-ovs: This paramenter disables Open Virtual Switch support because it requires Jansson which is not available in BLFS. : Use this switch if you have installed and wish to build the API manuals. : Use this switch if you don't have Iptables installed. : Use this switch if is installed and you want to build without introspection support. This also removes the need for . Configuring NetworkManager Config Files /etc/NetworkManager/NetworkManager.conf /etc/NetworkManager/NetworkManager.conf Configuration Information For NetworkManager to work, at least a minimal configuration file must be present. Such file is not installed with make install. Issue the following command as the root user to create minimal NetworkManager.conf file: cat >> /etc/NetworkManager/NetworkManager.conf << "EOF" [main] plugins=keyfile EOF You can add to suppress changes to /etc/resolv.conf. See man 5 NetworkManager.conf for any additional options. To allow regular users permission to configure network connections, you should add them to the netdev group, and create a polkit rule that grants access. Run the following commands as the root user: 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 <phrase revision="sysv">Boot Script</phrase> <phrase revision="systemd">Systemd Unit</phrase> To automatically start the NetworkManager daemon when the system is rebooted, install the /etc/rc.d/init.d/networkmanagerbootscript from the package. To start the NetworkManager daemon at boot, enable the previously installed systemd unit by running the following command as the root user: If using Network Manager to manage an interface, any previous configuration for that interface should be removed, and the interface brought down prior to starting Network Manager. NetworkManager make install-networkmanager systemctl enable NetworkManager NetworkManager also ships a systemd unit called NetworkManager-wait-online.service which can be used to prevent services that require network connectivity from starting until NetworkManager has established the connection. To enable it, run the following command as the root user: systemctl enable NetworkManager-wait-online Contents Installed Programs Installed Libraries Installed Directories NetworkManager, nmcli, nm-online, nmtui, and, symlinked to nmtui: nmtui-connect, nmtui-edit, and nmtui-hostname libnm-glib.so, libnm-glib-vpn.so, libnm.so, libnm-util.so, and modules under /usr/lib/NetworkManager /etc/NetworkManager, /usr/include/{libnm,libnm-glib,NetworkManager}, /usr/lib/NetworkManager, /usr/share/doc/NetworkManager-&NetworkManager-version;, /usr/share/gtk-doc/html/{libnm,libnm-glib,libnm-util,NetworkManager} (if the documentation is built), and /var/{lib,run}/NetworkManager Short Descriptions nmcli is a command-line tool for controlling NetworkManager and getting its status. nmcli nm-online is a utility to find out whether you are online. nm-online nmtui is an interactive ncurses based interface for nmcli. nmtui nmtui-connect is an interactive ncurses based interface connection to activate/deactivate connections. nmtui-connect nmtui-edit is an interactive ncurses based interface connection editor. nmtui-edit nmtui-hostname is an interactive ncurses based interface hostname editor. nmtui-hostname NetworkManager is the network management daemon. NetworkManager libnm-glib.so contains functions used by NetworkManager. libnm-glib.so libnm-glib-vpn.so contains functions used by NetworkManager VPN plugins. libnm-glib-vpn.so libnm-util.so contains functions used by NetworkManager utilities. libnm-util.so