NetworkManager-1.8.2
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.
This package is known to build and work properly using an LFS-8.1
platform.
Package Information
NetworkManager Dependencies
Required
dbus-glib-0.108, libndp-1.6, libnl-3.3.0, and
NSS-3.32
Recommended
ConsoleKit2-1.0.2, cURL-7.55.1, dhcpcd-6.11.5
or DHCP-4.3.6 (client only), gobject-introspection-1.52.1,
Iptables-1.6.1, newt-0.52.20 (for
nmtui), Polkit-0.113+git_2919920+js38,
PyGObject-3.24.1, UPower-0.99.5, Vala-0.36.4, and
wpa_supplicant-2.6 (built with D-Bus
support),
Optional
BlueZ-5.46, GTK-Doc-1.26,
Qt-5.9.1
(for examples), ModemManager-1.6.8, Valgrind-3.13.0, dnsmasq,
Jansson,
libteam, PPP, and RP-PPPoE
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/NetworkManager
Installation of NetworkManager
If Qt-5.9.1 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 \
--with-systemdsystemunitdir=no \
--docdir=/usr/share/doc/network-manager-1.8.2 &&
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-systemdsystemunitdir=no
:
systemd is not used for sysv init systems.
--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).
--enable-gtk-doc
: Use this switch if
you have installed GTK-Doc-1.26 and wish to build the API
manuals.
--without-iptables
: Use this switch if
you don't have Iptables installed.
--disable-introspection
: Use this
switch if gobject-introspection-1.52.1 is
installed and you want to build without introspection support. This
also removes the need for PyGObject-3.24.1.
Configuring NetworkManager
Config Files
/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 dns=none
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
Boot
Script
To automatically start the NetworkManager daemon when the
system is rebooted, install the /etc/rc.d/init.d/networkmanager
bootscript from
the blfs-bootscripts-20170731 package.
Note
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.
make install-networkmanager
Contents
Installed Programs:
NetworkManager, nmcli, nm-online, nmtui,
and, symlinked to nmtui: nmtui-connect, nmtui-edit, and
nmtui-hostname
Installed Libraries:
libnm-glib.so, libnm-glib-vpn.so,
libnm.so, libnm-util.so, and modules under
/usr/lib/NetworkManager
Installed Directories:
/etc/NetworkManager,
/usr/include/{libnm,libnm-glib,NetworkManager},
/usr/lib/NetworkManager, /usr/share/doc/NetworkManager-1.8.2,
/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.
|
nm-online
|
is a utility to find out whether you are online.
|
nmtui
|
is an interactive ncurses based interface for
nmcli.
|
nmtui-connect
|
is an interactive ncurses based interface connection to
activate/deactivate connections.
|
nmtui-edit
|
is an interactive ncurses based interface connection
editor.
|
nmtui-hostname
|
is an interactive ncurses based interface hostname
editor.
|
NetworkManager
|
is the network management daemon.
|
libnm-glib.so
|
contains functions used by NetworkManager.
|
libnm-glib-vpn.so
|
contains functions used by NetworkManager VPN plugins.
|
libnm-util.so
|
contains functions used by NetworkManager utils.
|
Last updated on 2017-08-25 14:22:07 -0700