]> git.ipfire.org Git - thirdparty/systemd.git/blob - man/hostnamectl.xml
589a252ea83f4c3d199f6bc4fc9ac93a8b2fe3d2
[thirdparty/systemd.git] / man / hostnamectl.xml
1 <?xml version='1.0'?> <!--*-nxml-*-->
2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4
5 <!--
6 This file is part of systemd.
7
8 Copyright 2012 Lennart Poettering
9
10 systemd is free software; you can redistribute it and/or modify it
11 under the terms of the GNU Lesser General Public License as published by
12 the Free Software Foundation; either version 2.1 of the License, or
13 (at your option) any later version.
14
15 systemd is distributed in the hope that it will be useful, but
16 WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 Lesser General Public License for more details.
19
20 You should have received a copy of the GNU Lesser General Public License
21 along with systemd; If not, see <http://www.gnu.org/licenses/>.
22 -->
23
24 <refentry id="hostnamectl" conditional='ENABLE_HOSTNAMED'
25 xmlns:xi="http://www.w3.org/2001/XInclude">
26
27 <refentryinfo>
28 <title>hostnamectl</title>
29 <productname>systemd</productname>
30
31 <authorgroup>
32 <author>
33 <contrib>Developer</contrib>
34 <firstname>Lennart</firstname>
35 <surname>Poettering</surname>
36 <email>lennart@poettering.net</email>
37 </author>
38 </authorgroup>
39 </refentryinfo>
40
41 <refmeta>
42 <refentrytitle>hostnamectl</refentrytitle>
43 <manvolnum>1</manvolnum>
44 </refmeta>
45
46 <refnamediv>
47 <refname>hostnamectl</refname>
48 <refpurpose>Control the system hostname</refpurpose>
49 </refnamediv>
50
51 <refsynopsisdiv>
52 <cmdsynopsis>
53 <command>hostnamectl</command>
54 <arg choice="opt" rep="repeat">OPTIONS</arg>
55 <arg choice="req">COMMAND</arg>
56 </cmdsynopsis>
57 </refsynopsisdiv>
58
59 <refsect1>
60 <title>Description</title>
61
62 <para><command>hostnamectl</command> may be used to query and
63 change the system hostname and related settings.</para>
64
65 <para>This tool distinguishes three different hostnames: the
66 high-level "pretty" hostname which might include all kinds of
67 special characters (e.g. "Lennart's Laptop"), the static hostname
68 which is used to initialize the kernel hostname at boot (e.g.
69 "lennarts-laptop"), and the transient hostname which is a fallback
70 value received from network configuration. If a static hostname is
71 set, and is valid (something other than localhost), then the
72 transient hostname is not used.</para>
73
74 <para>Note that the pretty hostname has little restrictions on the characters and length used, while the static and
75 transient hostnames are limited to the usually accepted characters of Internet domain names, and 64 characters at
76 maximum (the latter being a Linux limitation).</para>
77
78 <para>The static hostname is stored in
79 <filename>/etc/hostname</filename>, see
80 <citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>
81 for more information. The pretty hostname, chassis type, and icon
82 name are stored in <filename>/etc/machine-info</filename>, see
83 <citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
84
85 <para>Use
86 <citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
87 to initialize the system host name for mounted (but not booted)
88 system images.</para>
89 </refsect1>
90
91 <refsect1>
92 <title>Options</title>
93
94 <para>The following options are understood:</para>
95
96 <variablelist>
97 <varlistentry>
98 <term><option>--no-ask-password</option></term>
99
100 <listitem><para>Do not query the user for authentication for
101 privileged operations.</para></listitem>
102 </varlistentry>
103
104 <varlistentry>
105 <term><option>--static</option></term>
106 <term><option>--transient</option></term>
107 <term><option>--pretty</option></term>
108
109 <listitem><para>If <command>status</command> is used (or no
110 explicit command is given) and one of those fields is given,
111 <command>hostnamectl</command> will print out just this
112 selected hostname.</para>
113
114 <para>If used with <command>set-hostname</command>, only the
115 selected hostname(s) will be updated. When more than one of
116 those options is used, all the specified hostnames will be
117 updated. </para></listitem>
118 </varlistentry>
119
120 <xi:include href="user-system-options.xml" xpointer="host" />
121 <xi:include href="user-system-options.xml" xpointer="machine" />
122
123 <xi:include href="standard-options.xml" xpointer="help" />
124 <xi:include href="standard-options.xml" xpointer="version" />
125 </variablelist>
126
127 <para>The following commands are understood:</para>
128
129 <variablelist>
130 <varlistentry>
131 <term><command>status</command></term>
132
133 <listitem><para>Show current system
134 hostname and related
135 information.</para></listitem>
136 </varlistentry>
137
138 <varlistentry>
139 <term><command>set-hostname <replaceable>NAME</replaceable></command></term>
140
141 <listitem><para>Set the system hostname to
142 <replaceable>NAME</replaceable>. By default, this will alter
143 the pretty, the static, and the transient hostname alike;
144 however, if one or more of <option>--static</option>,
145 <option>--transient</option>, <option>--pretty</option> are
146 used, only the selected hostnames are changed. If the pretty
147 hostname is being set, and static or transient are being set
148 as well, the specified hostname will be simplified in regards
149 to the character set used before the latter are updated. This
150 is done by replacing spaces with <literal>-</literal> and
151 removing special characters. This ensures that the pretty and
152 the static hostname are always closely related while still
153 following the validity rules of the specific name. This
154 simplification of the hostname string is not done if only the
155 transient and/or static host names are set, and the pretty
156 host name is left untouched.</para>
157
158 <para>Pass the empty string <literal></literal> as the
159 hostname to reset the selected hostnames to their default
160 (usually <literal>localhost</literal>).</para></listitem>
161 </varlistentry>
162
163 <varlistentry>
164 <term><command>set-icon-name <replaceable>NAME</replaceable></command></term>
165
166 <listitem><para>Set the system icon name to
167 <replaceable>NAME</replaceable>. The icon name is used by some
168 graphical applications to visualize this host. The icon name
169 should follow the <ulink
170 url="http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html">Icon
171 Naming Specification</ulink>.</para>
172
173 <para>Pass an empty string to reset the icon name to the
174 default value, which is determined from chassis type (see
175 below) and possibly other parameters.</para></listitem>
176 </varlistentry>
177
178 <varlistentry>
179 <term><command>set-chassis <replaceable>TYPE</replaceable></command></term>
180
181 <listitem><para>Set the chassis type to
182 <replaceable>TYPE</replaceable>. The chassis type is used by
183 some graphical applications to visualize the host or alter
184 user interaction. Currently, the following chassis types are
185 defined:
186 <literal>desktop</literal>,
187 <literal>laptop</literal>,
188 <literal>server</literal>,
189 <literal>tablet</literal>,
190 <literal>handset</literal>,
191 <literal>watch</literal>,
192 <literal>embedded</literal>,
193 as well as the special chassis types
194 <literal>vm</literal> and
195 <literal>container</literal> for virtualized systems that lack
196 an immediate physical chassis.</para>
197
198 <para>Pass an empty string to reset the chassis type to the
199 default value which is determined from the firmware and
200 possibly other parameters.</para>
201 </listitem>
202 </varlistentry>
203
204 <varlistentry>
205 <term><command>set-deployment <replaceable>ENVIRONMENT</replaceable></command></term>
206
207 <listitem><para>Set the deployment environment description.
208 <replaceable>ENVIRONMENT</replaceable> must be a single word
209 without any control characters. One of the following is
210 suggested:
211 <literal>development</literal>,
212 <literal>integration</literal>,
213 <literal>staging</literal>,
214 <literal>production</literal>.
215 </para>
216
217 <para>Pass an empty string to reset to the default empty
218 value.</para>
219 </listitem>
220 </varlistentry>
221
222 <varlistentry>
223 <term><command>set-location <replaceable>LOCATION</replaceable></command></term>
224
225 <listitem><para>Set the location string for the system, if it
226 is known. <replaceable>LOCATION</replaceable> should be a
227 human-friendly, free-form string describing the physical
228 location of the system, if it is known and applicable. This
229 may be as generic as <literal>Berlin, Germany</literal> or as
230 specific as <literal>Left Rack, 2nd Shelf</literal>.</para>
231
232 <para>Pass an empty string to reset to the default empty
233 value.</para>
234 </listitem>
235 </varlistentry>
236 </variablelist>
237 </refsect1>
238
239 <refsect1>
240 <title>Exit status</title>
241
242 <para>On success, 0 is returned, a non-zero failure code
243 otherwise.</para>
244 </refsect1>
245
246 <refsect1>
247 <title>See Also</title>
248 <para>
249 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
250 <citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
251 <citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
252 <citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
253 <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
254 <citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
255 <citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
256 </para>
257 </refsect1>
258
259 </refentry>