X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fsystemd-analyze.xml;h=073e807b416097b2adc4d005530dc14086d4187c;hb=8257df2767fe2eb535fb83966d92f3074c522150;hp=60377093d0f84cf9dd3852fd24824fdc5363278b;hpb=d83c224da0aedcec9a432fe51fa27a3fed7be4b3;p=elogind.git
diff --git a/man/systemd-analyze.xml b/man/systemd-analyze.xml
index 60377093d..073e807b4 100644
--- a/man/systemd-analyze.xml
+++ b/man/systemd-analyze.xml
@@ -21,7 +21,8 @@
along with systemd; If not, see .
-->
-
+systemd-analyze
@@ -94,6 +95,12 @@
set-log-levelLEVEL
+
+ systemd-analyze
+ OPTIONS
+ verify
+ FILES
+
@@ -102,7 +109,8 @@
systemd-analyze may be used
to determine system boot-up performance statistics and
retrieve other state and tracing information from the
- system and service manager.
+ system and service manager, and to verify the
+ correctness of unit files.
systemd-analyze time
prints the time spent in the kernel before
@@ -170,6 +178,17 @@
described in
systemd1).
+ systemd-analyze verify will
+ load unit files and print warnings if any errors are
+ detected. Files specified on the command line will be
+ loaded, but also any other units referenced by
+ them. This command works by prepending the directories
+ for all command line arguments at the beginning of the
+ unit load path, which means that all units files found
+ in those directories will be used in preference to the
+ unit files found in the standard locations, even if
+ not listed explicitly.
+
If no command is passed, systemd-analyze
time is implied.
@@ -182,19 +201,18 @@
-
-
+
- Prints a short help
- text and exits.
+ Operates on the user
+ systemd instance.
-
+
- Shows performance data
- of user sessions instead of the system
- manager.
+ Operates on the system
+ systemd instance. This is the implied
+ default.
@@ -206,12 +224,12 @@
dot command (see
above), selects which dependencies are
shown in the dependency graph. If
- is passed
+ is passed,
only dependencies of type
After= or
Before= are
shown. If
- is passed only dependencies of type
+ is passed, only dependencies of type
Requires=,
RequiresOverridable=,
Requisite=,
@@ -257,12 +275,19 @@
-
+
-
- Do not pipe output into a pager.
-
+ Do not invoke man to verify the existence
+ of man pages listen in Documentation=.
+
+
+
+
+
+
+
+
@@ -270,45 +295,96 @@
Exit status
- On success 0 is returned, a non-zero failure
+ On success, 0 is returned, a non-zero failure
code otherwise.
- Examples
+ Examples for dot
- This plots all dependencies of any unit whose
- name starts with avahi-daemon.:
+
+ Plots all dependencies of any unit whose
+ name starts with avahi-daemon
- $ systemd-analyze dot 'avahi-daemon.*' | dot -Tsvg > avahi.svg
-$ eog avahi.svg
+ $ systemd-analyze dot 'avahi-daemon.*' | dot -Tsvg > avahi.svg
+ $ eog avahi.svg
+
- This plots the dependencies between all known target units:
+
+ Plots the dependencies between all known target units
- systemd-analyze dot --to-pattern='*.target' --from-pattern='*.target' | dot -Tsvg > targets.svg
+ systemd-analyze dot --to-pattern='*.target' --from-pattern='*.target' | dot -Tsvg > targets.svg
$ eog targets.svg
-
-
+
- Environment
-
-
-
- $SYSTEMD_PAGER
-
-
- Pager to use when is not
- given; overrides $PAGER. Setting this to
- an empty string or the value cat is
- equivalent to passing
- .
-
-
-
+ Examples for verify
+
+ The following errors are currently detected:
+
+ unknown sections and
+ directives,
+
+ missing dependencies which are
+ required to start the given unit,
+
+
+ man pages listed in
+ Documentation= which are
+ not found in the system,
+
+ commands listed in
+ ExecStart= and similar
+ which are not found in the system or not
+ executable.
+
+
+
+ Misspelt directives
+
+ $ cat ./user.slice
+[Unit]
+WhatIsThis=11
+Documentation=man:nosuchfile(1)
+Requires=different.service
+
+[Service]
+Desription=x
+
+$ systemd-verify ./user.slice
+[./user.slice:9] Unknown lvalue 'WhatIsThis' in section 'Unit'
+[./user.slice:13] Unknown section 'Service'. Ignoring.
+Error: org.freedesktop.systemd1.LoadFailed:
+ Unit different.service failed to load:
+ No such file or directory.
+Failed to create user.slice/start: Invalid argument
+user.slice: man nosuchfile(1) command failed with code 16
+
+
+
+
+ Missing service units
+
+ $ tail ./a.socket ./b.socket
+==> ./a.socket <==
+[Socket]
+ListenStream=100
+
+==> ./b.socket <==
+[Socket]
+ListenStream=100
+Accept=yes
+
+$ systemd-verify ./a.socket ./b.socket
+Service a.service not loaded, a.socket cannot be started.
+Service b@0.service not loaded, b.socket cannot be started.
+
+
+
+
See Also