source: networking/netutils/networkmanager.xml@ e64cabd

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.4 9.0 9.1 bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since e64cabd was e64cabd, checked in by DJ Lucas <dj@…>, 5 years ago

Update to NetworkManager-1.14.2. Fixes #11150.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@20818 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 17.3 KB
RevLine 
[e33ddee]1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[0d7900a]7 <!ENTITY NetworkManager-download-http
[f88263d]8 "&gnome-download-http;/NetworkManager/1.14/NetworkManager-&NetworkManager-version;.tar.xz">
[0d7900a]9 <!ENTITY NetworkManager-download-ftp
[f88263d]10 "&gnome-download-ftp;/NetworkManager/1.14/NetworkManager-&NetworkManager-version;.tar.xz">
[e64cabd]11 <!ENTITY NetworkManager-md5sum "54ce62f0aa18ef6c5e754eaac47494ac">
[d267a13]12 <!ENTITY NetworkManager-size "4.2 MB">
[e64cabd]13 <!ENTITY NetworkManager-buildsize "721 MB (with tests)">
[d267a13]14 <!ENTITY NetworkManager-time "0.5 SBU (with tests)">
[e33ddee]15]>
16
17<sect1 id="NetworkManager" xreflabel="NetworkManager-&NetworkManager-version;">
18 <?dbhtml filename="networkmanager.html"?>
19
20 <sect1info>
21 <othername>$LastChangedBy$</othername>
22 <date>$Date$</date>
[28370fe]23 </sect1info>
[e33ddee]24
25 <title>NetworkManager-&NetworkManager-version;</title>
26
27 <indexterm zone="NetworkManager">
28 <primary sortas="a-NetworkManager">NetworkManager</primary>
29 </indexterm>
30
31 <sect2 role="package">
32 <title>Introduction to NetworkManager</title>
33
[7ded7e3]34 <para>
35 <application>NetworkManager</application> is a set of co-operative
[8df33ae3]36 tools that make networking simple and straightforward. Whether WiFi,
37 wired, 3G, or Bluetooth, NetworkManager allows you to quickly move from
38 one network to another: Once a network has been configured and joined
39 once, it can be detected and re-joined automatically the next time it's
40 available.
[7ded7e3]41 </para>
[e33ddee]42
[6b3a3fe4]43 &lfs83_checked;
[e33ddee]44
[cec6657e]45 <note revision="systemd">
46 <para>
47 Make sure that you disable the <command>systemd-networkd</command>
48 service or configure it not to manage the interfaces you want to manage
49 with <application>NetworkManager</application>.
50 </para>
51 </note>
52
[e33ddee]53 <bridgehead renderas="sect3">Package Information</bridgehead>
54 <itemizedlist spacing="compact">
55 <listitem>
[7ded7e3]56 <para>
57 Download (HTTP): <ulink url="&NetworkManager-download-http;"/>
58 </para>
[e33ddee]59 </listitem>
60 <listitem>
[7ded7e3]61 <para>
62 Download (FTP): <ulink url="&NetworkManager-download-ftp;"/>
63 </para>
[e33ddee]64 </listitem>
65 <listitem>
[7ded7e3]66 <para>
67 Download MD5 sum: &NetworkManager-md5sum;
68 </para>
[e33ddee]69 </listitem>
70 <listitem>
[7ded7e3]71 <para>
72 Download size: &NetworkManager-size;
73 </para>
[e33ddee]74 </listitem>
75 <listitem>
[7ded7e3]76 <para>
77 Estimated disk space required: &NetworkManager-buildsize;
78 </para>
[e33ddee]79 </listitem>
80 <listitem>
[7ded7e3]81 <para>
82 Estimated build time: &NetworkManager-time;
83 </para>
[e33ddee]84 </listitem>
85 </itemizedlist>
86
87 <bridgehead renderas="sect3">NetworkManager Dependencies</bridgehead>
88
89 <bridgehead renderas="sect4">Required</bridgehead>
[d497e89]90 <para role="required">
[d267a13]91 <xref linkend="dbus-glib"/> and
92 <xref linkend="libndp"/>
[d497e89]93 </para>
94
95 <bridgehead renderas="sect4">Recommended</bridgehead>
96 <para role="recommended">
[f1ce80b]97 <phrase revision="sysv"><xref linkend="consolekit"/>,</phrase>
[c4ae27ab]98 <xref linkend="curl"/>,
[d497e89]99 <xref linkend="dhcpcd"/> or
[697cb83f]100 <xref linkend="dhcp"/> (client only),
[4b3c4b2]101 <xref linkend="gobject-introspection"/>,
[b7d1d2b]102 <xref linkend="iptables"/>,
[696fed8]103 <xref linkend="newt"/> (for <command>nmtui</command>),
[d267a13]104 <xref linkend="nss"/>,
[6e1616e2]105 <xref linkend="polkit"/>,
[b528d0f4]106 <xref linkend="pygobject3"/>,
[cec6657e]107 <phrase revision="systemd"><xref linkend="systemd"/>,</phrase>
[f3429309]108 <xref linkend="upower"/>,
[626bb04]109 <xref linkend="vala"/>, and
110 <xref linkend="wpa_supplicant"/> (built with D-Bus support),
[d497e89]111 </para>
[e33ddee]112
[d0880dfa]113 <bridgehead renderas="sect4">Optional</bridgehead>
[d497e89]114 <para role="optional">
[d4f4107]115 <xref linkend="bluez"/>,
[e64cabd]116 <xref linkend="dbus-python"/> (for the test suite),
[d267a13]117 <xref linkend="gnutls"/> (used if <xref linkend="nss"/> is not found),
[d497e89]118 <xref linkend="gtk-doc"/>,
[d6d0a2cb]119 <xref linkend="jansson"/>,
[1ad3510e]120 <xref linkend="libpsl"/>,
[e4d2b8d]121 <xref linkend="qt5"/> (for examples),
[7d64567]122 <xref linkend="ModemManager"/>,
[acb3e9f]123 <xref linkend="valgrind"/>,
[f77c63d0]124 <ulink url="http://www.thekelleys.org.uk/dnsmasq/doc.html">dnsmasq</ulink>,
[262a108]125 <ulink url="https://github.com/Distrotech/libaudit">libaudit</ulink>,
[4f5369a]126 <ulink url="https://github.com/jpirko/libteam">libteam</ulink>,
[cec6657e]127 <ulink url="https://www.samba.org/ftp/ppp/">PPP</ulink>, and
128 <ulink url="https://www.roaringpenguin.com/products/pppoe">RP-PPPoE</ulink>
[d497e89]129 </para>
[d0880dfa]130
[e33ddee]131 <para condition="html" role="usernotes">User Notes:
[7ded7e3]132 <ulink url="&blfs-wiki;/NetworkManager"/>
133 </para>
[e33ddee]134 </sect2>
135
136 <sect2 role="installation">
137 <title>Installation of NetworkManager</title>
138
[e4d2b8d]139 <para>If <xref linkend="qt5"/> is installed and the Qt based
140 examples are desired, fix the configure script:</para>
141
142<screen><userinput>sed -e '/Qt[CDN]/s/Qt/Qt5/g' \
[e64cabd]143 -e 's/-qt4/-qt5/' \
[e4d2b8d]144 -e 's/moc_location/host_bins/' \
[d267a13]145 -i examples/C/qt/meson.build</userinput></screen>
146
147 <para>
148 Fix a missing meson.build file for initrd hooks (not used in BLFS):
149 </para>
150
151<screen><userinput>sed '/initrd/d' -i src/meson.build</userinput></screen>
[e4d2b8d]152
[7ded7e3]153 <para>
[7c4f32b]154 Install <application>NetworkManager</application> by running the
155 following commands:
[7ded7e3]156 </para>
[e33ddee]157
[d267a13]158<screen revision="sysv"><userinput>mkdir build &amp;&amp;
159cd build &amp;&amp;
160
161CXXFLAGS+="-O2 -fPIC" \
162meson --prefix /usr \
163 --sysconfdir /etc \
164 --localstatedir /var \
[e64cabd]165 -Ddocs=true \
[d267a13]166 -Dnmtui=true \
167 -Dppp=false \
168 -Dlibaudit=no \
169 -Dlibnm_glib=true \
170 -Dselinux=false \
171 -Dudev_dir=/lib/udev \
172 -Dsession_tracking=no \
173 -Dsystemdsystemunitdir=no \
174 -Dsystemd_journal=false \
175 -Dqt=false \
176 .. &amp;&amp;
177ninja</userinput></screen>
178
179<screen revision="systemd"><userinput>mkdir build &amp;&amp;
180cd build &amp;&amp;
181
182CXXFLAGS+="-O2 -fPIC" \
183meson --prefix /usr \
184 --sysconfdir /etc \
185 --localstatedir /var \
[e64cabd]186 -Ddocs=true \
[d267a13]187 -Dnmtui=true \
188 -Dppp=false \
189 -Dlibaudit=no \
190 -Dlibnm_glib=true \
191 -Dselinux=false \
192 -Dqt=false \
193 -Dudev_dir=/lib/udev \
194 -Dsession_tracking=systemd \
195 -Dsystemdsystemunitdir=/lib/systemd/system \
196 .. &amp;&amp;
197ninja</userinput></screen>
[cec6657e]198
[7ded7e3]199 <para>
[e64cabd]200 An already active <phrase revision="sysv">graphical</phrase> session
201 with bus address is necessary to run the tests. To test the results,
202 issue: <command>ninja test</command>.
[7ded7e3]203 </para>
[e33ddee]204
[7ded7e3]205 <para>
206 Now, as the <systemitem class="username">root</systemitem> user:
207 </para>
[e33ddee]208
[d267a13]209<screen role="root"><userinput>ninja install &amp;&amp;
210mv -v /usr/share/doc/NetworkManager{,-&NetworkManager-version;}</userinput></screen>
[e33ddee]211
212 </sect2>
213
214 <sect2 role="commands">
215 <title>Command Explanations</title>
216
[e4d2b8d]217 <para>
218 <envar>CXXFLAGS="-O2 -fPIC"</envar>: These compiler options are
219 necessary to build the Qt5 based examples.
220 </para>
221
[e64cabd]222 <para>
223 <parameter>-Ddocs=true</parameter>: This parameter enable building of
224 man pages and documentation.
225 </para>
226
[7ded7e3]227 <para>
[d267a13]228 <parameter>-Dnmtui=true</parameter>: This parameter enables building
[acb3e9f]229 <command>nmtui</command>.
230 </para>
231
[d267a13]232 <para revision="sysv">
233 <parameter>-Dsession_tracking=no</parameter>,
234 <parameter>-Dsystemdsystemunitdir=no</parameter>, and
235 <parameter>-Dsystemd_journal=false</parameter>: systemd is not
236 used for sysv init systems.
237 </para>
238
[cec6657e]239 <para revision="systemd">
[d267a13]240 <parameter>-Dsession_tracking=systemd</parameter>: This switch
[cec6657e]241 is used to set <command>systemd-logind</command> as the default
242 program for session tracking.
243 </para>
244
245 <para revision="systemd">
[d267a13]246 <parameter>-Dsystemdsystemunitdir=/lib/systemd/system</parameter>:
[cec6657e]247 This switch is used to set the correct installation directory for
248 systemd units.
249 </para>
250
[acb3e9f]251 <para>
[d267a13]252 <parameter>-Dppp=false</parameter>: This parameter disables
[6e1616e2]253 <application>PPP</application> support in
254 <application>NetworkManager</application>.
[7ded7e3]255 </para>
[e33ddee]256
[8c7390c]257 <para>
[d267a13]258 <parameter>-Dlibaudit=no</parameter> and
259 <parameter>-Dselinux=false</parameter>: libaudit and SELinux are not used
260 in BLFS.
[d6e164b]261 </para>
[e33ddee]262
[b528d0f4]263 <para>
[d267a13]264 <parameter>-Dqt=false</parameter>: disables the
265 <application>QT</application> examples. Omit if you have
266 <application>QT</application> available and wish to install the examples.
[b528d0f4]267 </para>
268
[e33ddee]269 </sect2>
270
[d497e89]271 <sect2 role="configuration">
272 <title>Configuring NetworkManager</title>
273
274 <sect3 id="NetworkManager-config">
275 <title>Config Files</title>
276 <para>
277 <filename>/etc/NetworkManager/NetworkManager.conf</filename>
278 </para>
279
280 <indexterm zone="NetworkManager NetworkManager-config">
281 <primary
282 sortas="e-etc-NetworkManager-NetworkManager.conf">
283 /etc/NetworkManager/NetworkManager.conf</primary>
284 </indexterm>
285
286 </sect3>
287
288 <sect3><title>Configuration Information</title>
289
290 <para>
291 For <application>NetworkManager</application> to work, at least
[8df33ae3]292 a minimal configuration file must be present. Such file is not
293 installed with <command>make install</command>. Issue the following
294 command as the <systemitem class="username">root</systemitem> user to
295 create minimal <filename>NetworkManager.conf</filename> file:
[d497e89]296 </para>
297
298<screen role="root"><userinput>cat &gt;&gt; /etc/NetworkManager/NetworkManager.conf &lt;&lt; "EOF"
299<literal>[main]
300plugins=keyfile</literal>
301EOF</userinput></screen>
302
303 <para>
[acb3e9f]304 You can add <option>dns=none</option> to suppress changes to
305 <filename>/etc/resolv.conf</filename>. See
306 <command>man 5 NetworkManager.conf</command>
307 for any additional options.
[0d7900a]308 </para>
[d497e89]309
[8df33ae3]310 <para>
311 To allow regular users permission to configure network connections,
312 you should add them to the
313 <systemitem class="groupname">netdev</systemitem>
314 group, and create a <application>polkit</application> rule that grants
315 access. Run the following commands as the
316 <systemitem class="username">root</systemitem> user:
317 </para>
318
[a581662]319<screen role="root"><userinput>groupadd -fg 86 netdev &amp;&amp;
[b88584a]320/usr/sbin/usermod -a -G netdev <replaceable>&lt;username&gt;</replaceable>
[8df33ae3]321
322cat &gt; /usr/share/polkit-1/rules.d/org.freedesktop.NetworkManager.rules &lt;&lt; "EOF"
323<literal>polkit.addRule(function(action, subject) {
324 if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 &amp;&amp; subject.isInGroup("netdev")) {
325 return polkit.Result.YES;
326 }
327});</literal>
328EOF</userinput></screen>
329
[d497e89]330 </sect3>
331
332 <sect3 id="NetworkManager-init">
[cec6657e]333 <title><phrase revision="sysv">Boot Script</phrase>
334 <phrase revision="systemd">Systemd Unit</phrase></title>
335
336 <para revision="sysv">
337 To automatically start the <command>NetworkManager</command> daemon
338 when the system is rebooted, install the
339 <filename>/etc/rc.d/init.d/networkmanager</filename>bootscript from the
340 <xref linkend="bootscripts"/> package.
341 </para>
[d497e89]342
[cec6657e]343 <para revision="systemd">
344 To start the <command>NetworkManager</command> daemon at boot, enable
345 the previously installed systemd unit by running the following command
346 as the <systemitem class="username">root</systemitem> user:
[d497e89]347 </para>
348
[8df33ae3]349 <note>
350 <para>
351 If using <application>Network Manager</application> to manage
352 an interface, any previous configuration for that interface should be
353 removed, and the interface brought down prior to starting
354 <application>Network Manager</application>.
355 </para>
356 </note>
357
[d497e89]358 <indexterm zone="NetworkManager NetworkManager-init">
359 <primary sortas="f-NetworkManager">NetworkManager</primary>
360 </indexterm>
361
[cec6657e]362<screen role="root" revision="sysv"><userinput>make install-networkmanager</userinput></screen>
363
364<screen role="root" revision="systemd"><userinput>systemctl enable NetworkManager</userinput></screen>
365
366 <para revision="systemd">
367 <application>NetworkManager</application> also ships a systemd unit
368 called <filename>NetworkManager-wait-online.service</filename> which
369 can be used to prevent services that require network connectivity
370 from starting until <application>NetworkManager</application> has
371 established the connection. To enable it, run the following command
372 as the <systemitem class="username">root</systemitem> user:
373 </para>
374
375<screen role="root" revision="systemd"><userinput>systemctl enable NetworkManager-wait-online</userinput></screen>
[2cd1071]376
[d497e89]377 </sect3>
378
379 </sect2>
380
[e33ddee]381 <sect2 role="content">
382 <title>Contents</title>
383
384 <segmentedlist>
385 <segtitle>Installed Programs</segtitle>
386 <segtitle>Installed Libraries</segtitle>
387 <segtitle>Installed Directories</segtitle>
388
389 <seglistitem>
[d497e89]390 <seg>
[8c7390c]391 NetworkManager, nmcli, nm-online, nmtui, and, symlinked to nmtui:
392 nmtui-connect, nmtui-edit, and nmtui-hostname
[d497e89]393 </seg>
394 <seg>
[262a108]395 libnm.so and several modules under /usr/lib/NetworkManager
[d497e89]396 </seg>
397 <seg>
[5aa7dce]398 /etc/NetworkManager,
[262a108]399 /usr/include/libnm,
[5aa7dce]400 /usr/lib/NetworkManager,
401 /usr/share/doc/NetworkManager-&NetworkManager-version;,
[262a108]402 /usr/share/gtk-doc/html/{libnm,NetworkManager}
[8c7390c]403 (if the documentation is built),
[5aa7dce]404 and
[262a108]405 /var/lib/NetworkManager
[d497e89]406 </seg>
[262a108]407 <!-- A lot of libraries were removed here. We should verify compatibilty. -->
[e33ddee]408 </seglistitem>
409 </segmentedlist>
410
411 <variablelist>
412 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
413 <?dbfo list-presentation="list"?>
414 <?dbhtml list-presentation="table"?>
415
[d497e89]416 <varlistentry id="nmcli">
417 <term><command>nmcli</command></term>
[e33ddee]418 <listitem>
[7ded7e3]419 <para>
420 is a command-line tool for controlling
[0d7900a]421 <application>NetworkManager</application>
[7ded7e3]422 and getting its status.
423 </para>
[d497e89]424 <indexterm zone="NetworkManager nmcli">
425 <primary sortas="b-nmcli">nmcli</primary>
[e33ddee]426 </indexterm>
427 </listitem>
428 </varlistentry>
429
430 <varlistentry id="nm-online">
431 <term><command>nm-online</command></term>
432 <listitem>
[7ded7e3]433 <para>
434 is a utility to find out whether you are online.
435 </para>
[e33ddee]436 <indexterm zone="NetworkManager nm-online">
437 <primary sortas="b-nm-online">nm-online</primary>
438 </indexterm>
439 </listitem>
440 </varlistentry>
441
[acb3e9f]442 <varlistentry id="nmtui">
443 <term><command>nmtui</command></term>
444 <listitem>
445 <para>
[939653d]446 is an interactive ncurses based interface for
[acb3e9f]447 <application>nmcli</application>.
448 </para>
449 <indexterm zone="NetworkManager nmtui">
450 <primary sortas="b-nmtui">nmtui</primary>
451 </indexterm>
452 </listitem>
453 </varlistentry>
454
455 <varlistentry id="nmtui-connect">
456 <term><command>nmtui-connect</command></term>
457 <listitem>
458 <para>
[939653d]459 is an interactive ncurses based interface connection to
460 activate/deactivate connections.
[acb3e9f]461 </para>
462 <indexterm zone="NetworkManager nmtui-connect">
463 <primary sortas="b-nmtui-connect">nmtui-connect</primary>
464 </indexterm>
465 </listitem>
466 </varlistentry>
467
468 <varlistentry id="nmtui-edit">
469 <term><command>nmtui-edit</command></term>
470 <listitem>
471 <para>
[939653d]472 is an interactive ncurses based interface connection editor.
[acb3e9f]473 </para>
474 <indexterm zone="NetworkManager nmtui-edit">
475 <primary sortas="b-nmtui-edit">nmtui-edit</primary>
476 </indexterm>
477 </listitem>
478 </varlistentry>
479
480 <varlistentry id="nmtui-hostname">
481 <term><command>nmtui-hostname</command></term>
[e33ddee]482 <listitem>
[7ded7e3]483 <para>
[939653d]484 is an interactive ncurses based interface hostname editor.
[7ded7e3]485 </para>
[acb3e9f]486 <indexterm zone="NetworkManager nmtui-hostname">
487 <primary sortas="b-nmtui-hostname">nmtui-hostname</primary>
[e33ddee]488 </indexterm>
489 </listitem>
490 </varlistentry>
491
[d497e89]492 <varlistentry id="NetworkManager-prog">
493 <term><command>NetworkManager</command></term>
[e33ddee]494 <listitem>
[7ded7e3]495 <para>
496 is the network management daemon.
497 </para>
[d497e89]498 <indexterm zone="NetworkManager NetworkManager-prog">
[7ded7e3]499 <primary sortas="b-NetworkManager">NetworkManager</primary>
[e33ddee]500 </indexterm>
501 </listitem>
502 </varlistentry>
503
[262a108]504 <varlistentry id="libnm">
505 <term><filename class="libraryfile">libnm.so</filename></term>
[e33ddee]506 <listitem>
[7ded7e3]507 <para>
508 contains functions used by <application>NetworkManager</application>.
509 </para>
[262a108]510 <indexterm zone="NetworkManager libnm">
511 <primary sortas="c-libnm">libnm.so</primary>
[e33ddee]512 </indexterm>
513 </listitem>
514 </varlistentry>
515
516 </variablelist>
517
518 </sect2>
519
520</sect1>
Note: See TracBrowser for help on using the repository browser.