mirror of
https://github.com/systemd/systemd.git
synced 2025-02-22 09:57:34 +03:00
nss-myhostname: integrate documentation
Converted from html to xml and changed the style to fit into the other manpages.
This commit is contained in:
parent
d562955eac
commit
16eb4da97e
@ -587,6 +587,11 @@ man/systemd-journal-gatewayd.socket.8: man/systemd-journal-gatewayd.service.8
|
||||
man/systemd-journal-gatewayd.8: man/systemd-journal-gatewayd.service.8
|
||||
endif
|
||||
|
||||
if HAVE_MYHOSTNAME
|
||||
MANPAGES += \
|
||||
man/nss-myhostname.8
|
||||
endif
|
||||
|
||||
man/reboot.8: man/halt.8
|
||||
man/poweroff.8: man/halt.8
|
||||
man/init.1: man/systemd.1
|
||||
|
139
man/nss-myhostname.xml
Normal file
139
man/nss-myhostname.xml
Normal file
@ -0,0 +1,139 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
|
||||
Copyright 2011 Lennart Poettering
|
||||
Copyright 2013 Tom Gundersen
|
||||
|
||||
systemd is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
systemd is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License
|
||||
along with systemd; If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<refentry id="nss-myhostname">
|
||||
|
||||
<refentryinfo>
|
||||
<title>nss-myhostname</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>nss-myhostname</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>nss-myhostname</refname>
|
||||
<refpurpose>Provide host name resolution for the locally
|
||||
configured system hostname.</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>nss-myhostname.la</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>nss-myhostname</command> is a plugin for the GNU Name Service Switch
|
||||
(NSS) functionality of the GNU C Library (<command>glibc</command>)
|
||||
providing host name resolution for the locally configured system
|
||||
hostname as returned by
|
||||
<citerefentry><refentrytitle>gethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>.
|
||||
Various software relies on an always resolvable local host name. When
|
||||
using dynamic hostnames this is usually achieved by patching
|
||||
<filename>/etc/hosts</filename> at the same time as changing the host
|
||||
name. This however is not ideal since it requires a writable
|
||||
<filename>/etc</filename> file system and is fragile because the file
|
||||
might be edited by the administrator at the same time. <command>nss-myhostname</command>
|
||||
simply returns all locally configure public IP addresses, or -- if none
|
||||
are configured -- the IPv4 address 127.0.0.2 (wich is on the local
|
||||
loopback) and the IPv6 address ::1 (which is the local host) for
|
||||
whatever system hostname is configured locally. Patching
|
||||
<filename>/etc/hosts</filename> is thus no longer necessary.</para>
|
||||
|
||||
<para>To activate the NSS modules, <option>myhostname</option>
|
||||
has to be added to the line starting with "<varname>hosts:</varname>" in
|
||||
<filename>/etc/nsswitch.conf</filename></para>
|
||||
|
||||
<para>It is recommended to put <option>myhostname</option>
|
||||
last in the <filename>nsswitch.conf</filename> line to make
|
||||
sure that this mapping is only used as fallback, and any DNS
|
||||
or <filename>/etc/hosts</filename> based mapping takes precedence.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
|
||||
<programlisting>
|
||||
# /etc/nsswitch.conf
|
||||
|
||||
passwd: compat
|
||||
group: compat
|
||||
shadow: compat
|
||||
|
||||
hosts: files dns <varname>myhostname</varname>
|
||||
networks: files
|
||||
|
||||
protocols: db files
|
||||
services: db files
|
||||
ethers: db files
|
||||
rpc: db files
|
||||
|
||||
netgroup: nis
|
||||
</programlisting>
|
||||
|
||||
<para>To test, use <command>glibc</command>'s <command>getent</command> tool:</para>
|
||||
|
||||
<programlisting>
|
||||
$ getent ahosts `hostname`
|
||||
::1 STREAM omega
|
||||
::1 DGRAM
|
||||
::1 RAW
|
||||
127.0.0.2 STREAM
|
||||
127.0.0.2 DGRAM
|
||||
127.0.0.2 RAW
|
||||
</programlisting>
|
||||
|
||||
<para>In this case the local host name is <varname>omega</varname>.</para>
|
||||
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>pam.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>pam</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>pam_loginuid</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
2
src/nss-myhostname/doc/.gitignore
vendored
2
src/nss-myhostname/doc/.gitignore
vendored
@ -1,2 +0,0 @@
|
||||
README
|
||||
README.html
|
@ -1,38 +0,0 @@
|
||||
# This file is part of nss-myhostname.
|
||||
#
|
||||
# Copyright 2008 Lennart Poettering
|
||||
#
|
||||
# nss-myhostname is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public License
|
||||
# as published by the Free Software Foundation, either version 2.1 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# nss-myhostname is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with nss-myhostname. If not, If not, see
|
||||
# <http://www.gnu.org/licenses/>.
|
||||
|
||||
dist_html_DATA = README.html style.css
|
||||
EXTRA_DIST = README.html.in
|
||||
|
||||
MAINTAINERCLEANFILES = README.html
|
||||
CLEANFILES =
|
||||
|
||||
if USE_LYNX
|
||||
dist_doc_DATA = README
|
||||
MAINTAINERCLEANFILES += README
|
||||
|
||||
README: README.html
|
||||
lynx --dump $^ | sed 's,file://localhost/.*/doc/README.html,README,' > $@
|
||||
|
||||
CLEANFILES += README
|
||||
endif
|
||||
|
||||
tidy: README.html
|
||||
tidy -qe < README.html ; true
|
||||
|
||||
.PHONY: tidy
|
@ -1,166 +0,0 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?> <!-- -*-html-helper-*- -->
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
|
||||
<head>
|
||||
<title>nss-myhostname @PACKAGE_VERSION@</title>
|
||||
<link rel="stylesheet" type="text/css" href="style.css" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1><a name="top">nss-myhostname @PACKAGE_VERSION@</a></h1>
|
||||
|
||||
<p><i>Copyright 2005-2011 Lennart Poettering <@PACKAGE_BUGREPORT@></i></p>
|
||||
|
||||
<ul class="toc">
|
||||
<li><a href="#license">License</a></li>
|
||||
<li><a href="#news">News</a></li>
|
||||
<li><a href="#overview">Overview</a></li>
|
||||
<li><a href="#status">Current Status</a></li>
|
||||
<li><a href="#documentation">Documentation</a></li>
|
||||
<li><a href="#requirements">Requirements</a></li>
|
||||
<li><a href="#installation">Installation</a></li>
|
||||
<li><a href="#acks">Acknowledgements</a></li>
|
||||
<li><a href="#download">Download</a></li>
|
||||
</ul>
|
||||
|
||||
<h2><a name="license">License</a></h2>
|
||||
|
||||
<p>This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public License as
|
||||
published by the Free Software Foundation, either version 2.1 of the
|
||||
License, or (at your option) any later version.</p>
|
||||
|
||||
<p>This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.</p>
|
||||
|
||||
<h2><a name="news">News</a></h2>
|
||||
|
||||
<div class="news-date">Mon May 9 2011: </div>
|
||||
|
||||
<p class="news-text"><a href="@PACKAGE_URL@nss-myhostname-0.3.tar.gz">Version
|
||||
0.3</a> released. Changes include: Always return locally configured IP
|
||||
addresses first, use 127.0.0.2/::1 only as fallback if no addresses
|
||||
are configured.</p>
|
||||
|
||||
<div class="news-date">Mon Oct 27 2008: </div>
|
||||
|
||||
<p class="news-text"><a
|
||||
href="@PACKAGE_URL@nss-myhostname-0.2.tar.gz">Version 0.2</a>
|
||||
released. Changes include: Update for IPv6 and newest glibc NSS interfaces</p>
|
||||
|
||||
<div class="news-date">Sat Nov 19 2005: </div>
|
||||
|
||||
<p class="news-text"><a
|
||||
href="@PACKAGE_URL@nss-myhostname-0.1.tar.gz">Version 0.1</a>
|
||||
released. Initial release.</p>
|
||||
|
||||
<h2><a name="overview">Overview</a></h2>
|
||||
|
||||
<p><tt>nss-myhostname</tt> is a plugin for the GNU Name Service Switch
|
||||
(NSS) functionality of the GNU C Library (<tt>glibc</tt>) providing
|
||||
host name resolution for the locally configured system hostname as
|
||||
returned by <tt>gethostname(2)</tt>. Various software relies on an
|
||||
always resolvable local host name. When using dynamic hostnames this
|
||||
is usually achieved by patching <tt>/etc/hosts</tt> at the same time
|
||||
as changing the host name. This however is not ideal since it requires
|
||||
a writable <tt>/etc</tt> file system and is fragile because the file
|
||||
might be edited by the administrator at the same
|
||||
time. <tt>nss-myhostname</tt> simply returns all locally configure
|
||||
public IP addresses, or -- if none are configured -- the IPv4
|
||||
address <tt>127.0.0.2</tt> (wich is on the local loopback) and the
|
||||
IPv6 address <tt>::1</tt> (which is the local host) for whatever
|
||||
system hostname is configured locally. Patching <tt>/etc/hosts</tt>
|
||||
is thus no longer necessary.</p>
|
||||
|
||||
<h2><a name="status">Current Status</a></h2>
|
||||
|
||||
<p>It works!</p>
|
||||
|
||||
<h2><a name="documentation">Documentation</a></h2>
|
||||
|
||||
<p>After compiling and installing <tt>nss-myhostname</tt> you'll find a
|
||||
new NSS modules in <tt>/lib</tt>:</p>
|
||||
<ul>
|
||||
<li><tt>libnss_myhostname.so.2</tt></li>
|
||||
</ul>
|
||||
|
||||
<p>To activate the NSS modules you have to edit
|
||||
<tt>/etc/nsswitch.conf</tt> and add <tt>myhostname</tt> to the
|
||||
line starting with "<tt>hosts:</tt>". On Debian this looks like
|
||||
this:</p>
|
||||
|
||||
<pre># /etc/nsswitch.conf
|
||||
|
||||
passwd: compat
|
||||
group: compat
|
||||
shadow: compat
|
||||
|
||||
hosts: files dns <b>myhostname</b>
|
||||
networks: files
|
||||
|
||||
protocols: db files
|
||||
services: db files
|
||||
ethers: db files
|
||||
rpc: db files
|
||||
|
||||
netgroup: nis</pre>
|
||||
|
||||
<p>That's it. You should now always be able to resolve your local
|
||||
system hostname. For a quick check
|
||||
use <tt>glibc</tt>'s <tt>getent</tt> tool:
|
||||
|
||||
<pre>$ getent ahosts `hostname`
|
||||
::1 STREAM omega
|
||||
::1 DGRAM
|
||||
::1 RAW
|
||||
127.0.0.2 STREAM
|
||||
127.0.0.2 DGRAM
|
||||
127.0.0.2 RAW
|
||||
</pre>
|
||||
|
||||
<p>In this case the local host name is <i>omega</i>.</p>
|
||||
|
||||
<p>It is recommended to put <tt>myhostname</tt> last in
|
||||
the <tt>nsswitch.conf</tt> line to make sure that this mapping is only
|
||||
used as fallback, and any DNS or <tt>/etc/hosts</tt> based mapping takes
|
||||
precedence.</p>
|
||||
|
||||
<h2><a name="requirements">Requirements</a></h2>
|
||||
|
||||
<p><tt>nss-myhostname</tt> uses NSS interfaces that are specific to modern <tt>glibc</tt>'s.</p>
|
||||
|
||||
<p><tt>nss-myhostname</tt> was developed and tested on Fedora 15 from
|
||||
May 2011, it should work on most other Linux distributions since it
|
||||
uses GNU autoconf and GNU libtool for source code configuration and
|
||||
shared library management.</p>
|
||||
|
||||
<h2><a name="installation">Installation</a></h2>
|
||||
|
||||
<p>As this package is made with the GNU autotools you should run
|
||||
<tt>./configure</tt> inside the distribution directory for configuring
|
||||
the source tree. After that you should run <tt>make</tt> for
|
||||
compilation and <tt>make install</tt> (as root) for installation of
|
||||
<tt>nss-myhostname</tt>.</p>
|
||||
|
||||
<h2><a name="acks">Acknowledgements</a></h2>
|
||||
|
||||
<p>None so far.</p>
|
||||
|
||||
<h2><a name="download">Download</a></h2>
|
||||
|
||||
<p>The newest release is always available from <a href="@PACKAGE_URL@">@PACKAGE_URL@</a></p>
|
||||
|
||||
<p>The current release is <a href="@PACKAGE_URL@nss-myhostname-@PACKAGE_VERSION@.tar.gz">@PACKAGE_VERSION@</a></p>
|
||||
|
||||
<p>Get <tt>nss-myhostname</tt>'s development sources from the <a href="http://git.or.cz/">GIT</a> <a href="git://git.0pointer.de/nss-myhostname">repository</a> (<a href="http://git.0pointer.de/?p=nss-myhostname.git">gitweb</a>): </p>
|
||||
|
||||
<pre>git clone git://git.0pointer.de/nss-myhostname</pre>
|
||||
|
||||
<hr/>
|
||||
<address class="grey">Lennart Poettering <@PACKAGE_BUGREPORT@>, May 2011</address>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -1,25 +0,0 @@
|
||||
/***
|
||||
This file is part of nss-myhostname.
|
||||
|
||||
Copyright 2008 Lennart Poettering
|
||||
|
||||
nss-myhostname is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public License
|
||||
as published by the Free Software Foundation, either version 2.1
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
nss-myhostname is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with nss-myhostname. If not, If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
***/
|
||||
|
||||
body { color: black; background-color: white; }
|
||||
a:link, a:visited { color: #900000; }
|
||||
div.news-date { font-size: 80%; font-style: italic; }
|
||||
pre { background-color: #f0f0f0; padding: 0.4cm; }
|
||||
.grey { color: #8f8f8f; font-size: 80%; }
|
Loading…
x
Reference in New Issue
Block a user