1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-23 21:35:11 +03:00
Commit Graph

128 Commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
91c7ac94ba man: import org.freedesktop.locale1(3) from the wiki 2020-04-12 19:48:01 +02:00
Zbigniew Jędrzejewski-Szmek
9c970e5f55 man: import org.freedesktop.timedate1(3) from the wiki 2020-04-12 19:48:01 +02:00
Zbigniew Jędrzejewski-Szmek
e09a36bd46 man: import org.freedesktop.hostname1(3) from the wiki 2020-04-12 19:48:01 +02:00
Zbigniew Jędrzejewski-Szmek
2fe60ff1d0 man: import org.freedesktop.import1(3) from the wiki 2020-04-12 19:48:01 +02:00
Zbigniew Jędrzejewski-Szmek
de2efb75f7 man: import org.freedesktop.machine1(3) from the wiki
The wiki was primarily describing the D-Bus API, but it also had a large
introduction to the daemon functionality. I moved that latter part into
the page that describes the daemon, and the API description into the new
page.

This is mostly a straighforward import. Apart from some required formatting
changes, I removed obvious repetitions, and made tiny grammar and typo fixes
where I noticed them. The goal is not to have a perfect text immediately.

<interfacename>org.foo.bar</interface> is used for interface names,
<function>function()</function> for methods, and <function>signal</function>
(no parentheses) for signal names. In D-Bus, signals are similar to methods,
and docbook doesn't have a nice tag for them.
2020-04-12 19:48:01 +02:00
Zbigniew Jędrzejewski-Szmek
44fd44f1cf man: import org.freedesktop.login1(3) from the wiki 2020-04-12 19:48:01 +02:00
Daan De Meyer
11a177d9de sd-bus: Deprecate priority functions 2020-04-02 21:36:59 +02:00
Zbigniew Jędrzejewski-Szmek
6829d8ce69
Merge pull request #15253 from DaanDeMeyer/object-vtable-error-docs
sd-bus: Add error handling info to sd_bus_add_object_vtable docs
2020-04-01 12:25:34 +02:00
Daan De Meyer
e3e5a6eebd sd-bus: Add sd_bus_get/set_priority docs + fixes 2020-04-01 00:11:33 +02:00
Daan De Meyer
9b62e232ea sd-bus: Add note about sd_bus_reply_method_return to SD_BUS_METHOD docs 2020-03-31 20:38:54 +02:00
Daan De Meyer
fc91667d77 sd-bus: Add sd_bus_add_object and callback docs 2020-03-31 20:16:30 +02:00
Zbigniew Jędrzejewski-Szmek
4a874560c5
Merge pull request #15217 from keszybz/beef-up-sd-path
Export sd-path functions and beef up systemd-path to show more items
2020-03-29 22:57:53 +02:00
Daan De Meyer
45069c67ce sd-bus: Add sd_bus_slot_get_current_* docs 2020-03-29 21:36:55 +02:00
Zbigniew Jędrzejewski-Szmek
b35ed5530b man: add sd_path_lookup(3) 2020-03-27 20:12:44 +01:00
Daan De Meyer
b0f4c02e2d sd-bus: Add sd_bus_send docs + cleanups. 2020-03-22 20:21:11 +01:00
Daan De Meyer
60ef094297 sd-bus: Add sd_bus_reply_method_return docs + cleanups 2020-03-19 20:51:17 +01:00
Daan De Meyer
4bd859be95 sd-bus: add sd_bus_message_seal docs + cleanups 2020-03-19 14:27:56 +01:00
Zbigniew Jędrzejewski-Szmek
677ceb0c2f
Merge pull request #15153 from keszybz/man-bus-address
Add two man pages for sd-bus
2020-03-19 09:11:14 +01:00
Daan De Meyer
cc46b9d913 sd-bus: sd_bus_set/get_method_call_timeout docs + cleanups. 2020-03-18 20:07:45 +01:00
Zbigniew Jędrzejewski-Szmek
92b6df1d68 man: mention sd_bus_is_anonymous() and sd_bus_is_trusted() 2020-03-18 19:57:44 +01:00
Zbigniew Jędrzejewski-Szmek
9783b59bf6 man: describe sd_bus_default_flush_close() 2020-03-18 19:57:43 +01:00
Zbigniew Jędrzejewski-Szmek
3f549982a5 man: add sd_bus_set_address(3) 2020-03-18 19:57:43 +01:00
Zbigniew Jędrzejewski-Szmek
27622235c4 man: add sd_bus_start(3) 2020-03-18 19:57:43 +01:00
Daan De Meyer
953ee402cb sd-bus: sd_bus_call/sd_bus_call_async_docs + cleanups. 2020-03-18 10:45:14 +01:00
Daan De Meyer
9735c644be sd-bus: Add sd_bus_method_call/sd_bus_method_call_async docs + cleanups. 2020-03-17 17:12:58 +09:00
Zbigniew Jędrzejewski-Szmek
4a29c185b7 man: add systemd-network-generator.service(8)
It's a bit bare-bones, but it should be enough to point the reader in the right
direction.
2020-03-05 08:20:06 +01:00
Zbigniew Jędrzejewski-Szmek
aa07dc7093 man: add .service suffix to systemd-pstore(8)
That is the pattern that we always use with executables not in
$PATH.
2020-02-29 09:57:06 +01:00
Zbigniew Jędrzejewski-Szmek
ebb7a2fcb9 man: add missing refnames for two binary names
We generally want the man page to also be available under the
binary name, but the <refname> tags were missing in two cases.
2020-02-28 17:02:23 +01:00
Lennart Poettering
5c11632735 man: document the new sd_bus_enqueue_for_read() API call 2020-02-04 18:47:32 +01:00
Lennart Poettering
d58f31793a
Merge pull request #14645 from keszybz/sd-bus-message-dump
sd_bus_message_dump
2020-02-02 17:27:50 +01:00
Yu Watanabe
af06ddf51a meson, man: do not install pam_systemd_home(8) when pam or homed is disabled
Fixes #14725.
2020-02-01 12:13:45 +01:00
Lennart Poettering
241c8f67f6 man: document the new sd_journal_open_namespace() API 2020-01-31 15:10:40 +01:00
Lennart Poettering
6bc4361997 man: document journald@NAMESPACE.conf 2020-01-31 15:10:40 +01:00
Lennart Poettering
efcbcd0d04 man: document journald namespaces 2020-01-31 15:10:40 +01:00
Yu Watanabe
2d37ea5ca9 man: do not install man pages for systemd-repart if it is disabled
Closes #14716.
2020-01-31 18:06:09 +09:00
Zbigniew Jędrzejewski-Szmek
f770b7e084 man: document man/sd_bus_message_dump.xml 2020-01-30 14:33:05 +01:00
Lennart Poettering
28e208a7d8 man: document pam_systemd_home 2020-01-28 22:37:49 +01:00
Lennart Poettering
38e7b808eb man: add systemd-homed man page 2020-01-28 22:37:25 +01:00
Lennart Poettering
ea7a19e95d man: add homectl(1) man page 2020-01-28 22:37:00 +01:00
Lennart Poettering
917cc8082b man: document systemd-repart 2020-01-20 17:42:03 +01:00
Lennart Poettering
7d9ad0e5e5 man: document systemd-userdbd.service 2020-01-15 15:30:40 +01:00
Lennart Poettering
3b2db6f110 man: document userdbctl(1) 2020-01-15 15:30:20 +01:00
Lennart Poettering
ac6431dad9 man: add man page for sd_bus_message_sensitive() 2019-12-18 09:10:34 +01:00
Lennart Poettering
8089643328 man: document the new sd-event pidfd magic 2019-12-04 10:36:10 +01:00
Lennart Poettering
0bca283127 man: document sd_event_source_set_floating()
Let's make sure we get back to 100% man page documentation coverage of
our sd-event APIs. We are bad enough at the others, let's get these ones
right at least.
2019-11-29 02:48:41 +09:00
Jan Tojnar
88eb051972 man: use mkswap@ instead of makeswap@
That is what is linked from systemd.swap(5) and also what the systemd.generator produces.
2019-11-28 15:46:21 +01:00
Lennart Poettering
20bae8b94d meson: correct man page deps 2019-10-31 09:04:19 +09:00
Lennart Poettering
39867bb9fb man: document the systemd-random-seed rework 2019-07-25 18:31:20 +02:00
Eric DeVolder
9b4abc69b2 pstore: Tool to archive contents of pstore
This patch introduces the systemd pstore service which will archive the
contents of the Linux persistent storage filesystem, pstore, to other storage,
thus preserving the existing information contained in the pstore, and clearing
pstore storage for future error events.

Linux provides a persistent storage file system, pstore[1], that can store
error records when the kernel dies (or reboots or powers-off). These records in
turn can be referenced to debug kernel problems (currently the kernel stuffs
the tail of the dmesg, which also contains a stack backtrace, into pstore).

The pstore file system supports a variety of backends that map onto persistent
storage, such as the ACPI ERST[2, Section 18.5 Error Serialization] and UEFI
variables[3 Appendix N Common Platform Error Record]. The pstore backends
typically offer a relatively small amount of persistent storage, e.g. 64KiB,
which can quickly fill up and thus prevent subsequent kernel crashes from
recording errors. Thus there is a need to monitor and extract the pstore
contents so that future kernel problems can also record information in the
pstore.

The pstore service is independent of the kdump service. In cloud environments
specifically, host and guest filesystems are on remote filesystems (eg. iSCSI
or NFS), thus kdump relies [implicitly and/or explicitly] upon proper operation
of networking software *and* hardware *and* infrastructure.  Thus it may not be
possible to capture a kernel coredump to a file since writes over the network
may not be possible.

The pstore backend, on the other hand, is completely local and provides a path
to store error records which will survive a reboot and aid in post-mortem
debugging.

Usage Notes:
This tool moves files from /sys/fs/pstore into /var/lib/systemd/pstore.

To enable kernel recording of error records into pstore, one must either pass
crash_kexec_post_notifiers[4] to the kernel command line or enable via 'echo Y
 > /sys/module/kernel/parameters/crash_kexec_post_notifiers'. This option
invokes the recording of errors into pstore *before* an attempt to kexec/kdump
on a kernel crash.

Optionally, to record reboots and shutdowns in the pstore, one can either pass
the printk.always_kmsg_dump[4] to the kernel command line or enable via 'echo Y >
/sys/module/printk/parameters/always_kmsg_dump'. This option enables code on the
shutdown path to record information via pstore.

This pstore service is a oneshot service. When run, the service invokes
systemd-pstore which is a tool that performs the following:
 - reads the pstore.conf configuration file
 - collects the lists of files in the pstore (eg. /sys/fs/pstore)
 - for certain file types (eg. dmesg) a handler is invoked
 - for all other files, the file is moved from pstore

 - In the case of dmesg handler, final processing occurs as such:
   - files processed in reverse lexigraphical order to faciliate
     reconstruction of original dmesg
   - the filename is examined to determine which dmesg it is a part
   - the file is appended to the reconstructed dmesg

For example, the following pstore contents:

 root@vm356:~# ls -al /sys/fs/pstore
 total 0
 drwxr-x--- 2 root root    0 May  9 09:50 .
 drwxr-xr-x 7 root root    0 May  9 09:50 ..
 -r--r--r-- 1 root root 1610 May  9 09:49 dmesg-efi-155741337601001
 -r--r--r-- 1 root root 1778 May  9 09:49 dmesg-efi-155741337602001
 -r--r--r-- 1 root root 1726 May  9 09:49 dmesg-efi-155741337603001
 -r--r--r-- 1 root root 1746 May  9 09:49 dmesg-efi-155741337604001
 -r--r--r-- 1 root root 1686 May  9 09:49 dmesg-efi-155741337605001
 -r--r--r-- 1 root root 1690 May  9 09:49 dmesg-efi-155741337606001
 -r--r--r-- 1 root root 1775 May  9 09:49 dmesg-efi-155741337607001
 -r--r--r-- 1 root root 1811 May  9 09:49 dmesg-efi-155741337608001
 -r--r--r-- 1 root root 1817 May  9 09:49 dmesg-efi-155741337609001
 -r--r--r-- 1 root root 1795 May  9 09:49 dmesg-efi-155741337710001
 -r--r--r-- 1 root root 1770 May  9 09:49 dmesg-efi-155741337711001
 -r--r--r-- 1 root root 1796 May  9 09:49 dmesg-efi-155741337712001
 -r--r--r-- 1 root root 1787 May  9 09:49 dmesg-efi-155741337713001
 -r--r--r-- 1 root root 1808 May  9 09:49 dmesg-efi-155741337714001
 -r--r--r-- 1 root root 1754 May  9 09:49 dmesg-efi-155741337715001

results in the following:

 root@vm356:~# ls -al /var/lib/systemd/pstore/155741337/
 total 92
 drwxr-xr-x 2 root root  4096 May  9 09:50 .
 drwxr-xr-x 4 root root    40 May  9 09:50 ..
 -rw-r--r-- 1 root root  1610 May  9 09:50 dmesg-efi-155741337601001
 -rw-r--r-- 1 root root  1778 May  9 09:50 dmesg-efi-155741337602001
 -rw-r--r-- 1 root root  1726 May  9 09:50 dmesg-efi-155741337603001
 -rw-r--r-- 1 root root  1746 May  9 09:50 dmesg-efi-155741337604001
 -rw-r--r-- 1 root root  1686 May  9 09:50 dmesg-efi-155741337605001
 -rw-r--r-- 1 root root  1690 May  9 09:50 dmesg-efi-155741337606001
 -rw-r--r-- 1 root root  1775 May  9 09:50 dmesg-efi-155741337607001
 -rw-r--r-- 1 root root  1811 May  9 09:50 dmesg-efi-155741337608001
 -rw-r--r-- 1 root root  1817 May  9 09:50 dmesg-efi-155741337609001
 -rw-r--r-- 1 root root  1795 May  9 09:50 dmesg-efi-155741337710001
 -rw-r--r-- 1 root root  1770 May  9 09:50 dmesg-efi-155741337711001
 -rw-r--r-- 1 root root  1796 May  9 09:50 dmesg-efi-155741337712001
 -rw-r--r-- 1 root root  1787 May  9 09:50 dmesg-efi-155741337713001
 -rw-r--r-- 1 root root  1808 May  9 09:50 dmesg-efi-155741337714001
 -rw-r--r-- 1 root root  1754 May  9 09:50 dmesg-efi-155741337715001
 -rw-r--r-- 1 root root 26754 May  9 09:50 dmesg.txt

where dmesg.txt is reconstructed from the group of related
dmesg-efi-155741337* files.

Configuration file:
The pstore.conf configuration file has four settings, described below.
 - Storage : one of "none", "external", or "journal". With "none", this
   tool leaves the contents of pstore untouched. With "external", the
   contents of the pstore are moved into the /var/lib/systemd/pstore,
   as well as logged into the journal.  With "journal", the contents of
   the pstore are recorded only in the systemd journal. The default is
   "external".
 - Unlink : is a boolean. When "true", the default, then files in the
   pstore are removed once processed. When "false", processing of the
   pstore occurs normally, but the pstore files remain.

References:
[1] "Persistent storage for a kernel's dying breath",
    March 23, 2011.
    https://lwn.net/Articles/434821/

[2] "Advanced Configuration and Power Interface Specification",
    version 6.2, May 2017.
    https://www.uefi.org/sites/default/files/resources/ACPI_6_2.pdf

[3] "Unified Extensible Firmware Interface Specification",
    version 2.8, March 2019.
    https://uefi.org/sites/default/files/resources/UEFI_Spec_2_8_final.pdf

[4] "The kernel’s command-line parameters",
    https://static.lwn.net/kerneldoc/admin-guide/kernel-parameters.html
2019-07-19 21:46:07 +02:00
Zbigniew Jędrzejewski-Szmek
34d2f9204c meson: update hint in man/rules/ 2019-07-19 07:09:34 +09:00