1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-01 09:21:26 +03:00
Commit Graph

479 Commits

Author SHA1 Message Date
David Edmundson
6a881daf85 docs: Change suffix for desktop applications to support non-transient services
One problem found with the current draft specification is we can't have
an application provide a non-transient systemd service file in a way
that is spec compliant as the service name currently needs to end in a
random token defined by the launcher.

This came up when trying to put DBus activated services into the correct
cgroup. There isn't enough metadata in the DBus service file to know the
correct application ID, and the most intuitive fix is for those
applications to just specify the SystemdService file in the existing
system. They're generally unique for a given user session anyway so
don't need a separate cgroup identifier.

This changes the spec for RANDOM to be optional for services.

It also changes the separator between in services to act like templates.
Ultimately that's what we're trying to recreate with the RANDOM token of
the systemd service and it's a better fit. It's needed as otherwise with
launcher and the random ident being both optional it would be impossible
to get the application ID reliably.

Scopes are unchanged as they don't support templates.
2020-06-10 17:10:57 +02:00
Lennart Poettering
c85b6ff1b2 docs: point contributors to list of most recent systemd releases
Fixes: #16083
2020-06-10 10:30:02 +02:00
Michał Bartoszkiewicz
fa0e23c900 docs: use bool in varlink interface definition
Boolean type in varlink is named bool, not boolean.
2020-06-09 17:11:38 +02:00
Lennart Poettering
a3d19f5d99 core: add new PassPacketInfo= socket unit property 2020-05-27 22:40:38 +02:00
Daniel Fullmer
e6190e2882 sd-boot: fix menu ordering with boot counting
systemd-boot selects the last valid entry by default, not the first.

Fixes: #15256
2020-05-26 19:27:59 +02:00
Zbigniew Jędrzejewski-Szmek
201632e314 tree-wide: s/time-out/timeout/g
See 3f9a0a522f for justification.
2020-05-26 10:28:59 +02:00
Evgeny Vereshchagin
2f0a427b45 docs: add a link to the Fossies codespell report 2020-05-21 09:00:53 +02:00
Zbigniew Jędrzejewski-Szmek
bb94ded693
Merge pull request #15661 from hundeboll/mount-read-write-only
Mount read write only
2020-05-20 15:48:04 +02:00
Martin Hundebøll
75f4bd7fd0 man: document ReadWriteOnly property for mount units 2020-05-20 14:26:04 +02:00
Zbigniew Jędrzejewski-Szmek
154962d348 docs: policy for systemd-security subscriptions
Replaces #14325.
2020-05-15 20:40:58 +02:00
Дамјан Георгиевски
5a0173147b
docs: add some backticks and more formatting to PASSWORD_AGENTS.md (#15803)
docs: add some backticks and more formatting to PASSWORD_AGENTS.md
2020-05-13 14:52:09 +02:00
Дамјан Георгиевски
8623836502 fix WikiWord not-links 2020-05-13 04:56:50 +02:00
Дамјан Георгиевски
67a40f217c docs: import password agents documentation
imported from:
https://cgit.freedesktop.org/wiki/www/plain/Software/systemd/PasswordAgents.mdwn
2020-05-12 20:31:44 +02:00
Lennart Poettering
c0440512e6 docs: document the new offline discard logic 2020-05-07 16:13:07 +02:00
Gergely Polonkai
c28904dae0 Update the rsync command in CONVERTING_TO_HOMED
The old version of this command will delete everything under the new home directory (including `.identity`), rendering the directory unusable with homed.
2020-05-06 10:52:22 +02:00
Benjamin Berg
60ca8f22b8 docs: Change prefix for desktop applications to app-
We need both a slice name and a prefix for application units. For
consistency we tried to use the same name and ended up standardising on
"apps.slice" and and "apps-" prefix for the units.

However, "app-" would be a more natural prefix for applications. And it
is no problem to simply also name the slice "app.slice" for consistency
rather than keeping the current "apps.slice".
2020-04-30 14:21:44 +02:00
Zbigniew Jędrzejewski-Szmek
f20078df0b docs: reorder the section about security reporting to emphasize the sekrit list 2020-04-29 17:20:37 +02:00
Lennart Poettering
a9ab5cdb50
Merge pull request #15472 from keszybz/dbus-api-docs
A few more dbus api documentation updates
2020-04-23 17:01:11 +02:00
Frantisek Sumsal
86b52a3958 tree-wide: fix spelling errors
Based on a report from Fossies.org using Codespell.

Followup to #15436
2020-04-21 23:21:08 +02:00
Zbigniew Jędrzejewski-Szmek
98ab0daeeb docs: use "polkit" to refer to PolicyKit
See d35f51ea84 for justification.

First use in each file is turned into a link to the documentation page.
2020-04-21 17:10:02 +02:00
Zbigniew Jędrzejewski-Szmek
38b38500c6 tree-wide: use "hostname" spelling everywhere
It's not that I think that "hostname" is vastly superior to "host name". Quite
the opposite — the difference is small, and in some context the two-word version
does fit better. But in the tree, there are ~200 occurrences of the first, and
>1600 of the other, and consistent spelling is more important than any particular
spelling choice.
2020-04-21 16:58:04 +02:00
Lennart Poettering
5fe63895b9 docs: introduce documentation category for user/group stuff
We have so many different docs on various facets of user/group stuff,
let's add our own category for it.
2020-04-11 18:03:24 +02:00
Lennart Poettering
b05e122036 docs: add some documentation about hooking up userdb/homed to desktop environments
Prompted by some inquires from the GNOME camp. let's document this here,
since other DEs might be interested too.
2020-04-10 18:54:58 +02:00
Lennart Poettering
5a3033321a docs: add brief document how to convert home directories to homed 2020-04-10 15:57:29 +02:00
Lennart Poettering
10eed9848d docs: fix typo now → not 2020-04-09 19:26:36 +02:00
Lennart Poettering
b27cb676bf docs: add missing dash 2020-04-09 19:24:44 +02:00
Lennart Poettering
9b3c65ed36
Merge pull request #15352 from poettering/user-group-name-valdity-rework
user/group name validity rework
2020-04-09 18:49:22 +02:00
Zbigniew Jędrzejewski-Szmek
ad21e542b2 manager: add CoredumpFilter= setting
Fixes #6685.
2020-04-09 14:08:48 +02:00
Lennart Poettering
887a8fa341 docs: hook up the new USER_NAMES document everywhere
(Also correct the set of names we accept in User=, which was forgotten
to be updated in ae480f0b09.
2020-04-08 17:30:04 +02:00
Lennart Poettering
cafed7b32c docs: add a longer document explaining our rules on user/group names 2020-04-08 17:30:04 +02:00
Benjamin Berg
31c68e0277 docs: Add some notes about managing graphical user sessions
This is work in progress and not finished yet. However, I hope to have
captured some of the key points that came up in previous discussions
with appropriate notes about things that still need to be defined.

I may revisit it later. Also, feel free to completely rewrite if the
format is not quite right.
2020-03-27 21:57:44 +01:00
Lucas Werkmeister
e1ef1e5d53 docs: fix typo 2020-03-06 22:58:53 +01:00
Lucas Werkmeister
afcb3e758c docs: fix misplaced close-paren
I assume it’s supposed to be “see Home Directories for details” and not
“… and embeds these JSON records directly in the home directory images …
for details”, but the previous text suggested the latter reading to me.
2020-03-06 22:12:37 +01:00
Zbigniew Jędrzejewski-Szmek
870d38dca9 docs: add .link/.network/.netdev files to interface stability chart
Fixes #9850.
2020-03-03 19:11:45 +01:00
Zbigniew Jędrzejewski-Szmek
b0cda24148 docs: interlink the docs to make it easier to navigate 2020-02-28 16:54:33 +01:00
Zbigniew Jędrzejewski-Szmek
04c31af4c5 docs: say XBOOTLDR instead of just giving the GPT identifier
Fixes #14832.

Also, say "MBR partition table" and not "MBR disk label". "disk label" doesn't
seem to mean anything.
2020-02-28 16:54:33 +01:00
Lynn Kirby
6cec69fc3e Change all fuzzing links to point to OSS-Fuzz site 2020-02-18 01:50:36 +03:00
Lynn Kirby
129c55c06f docs: fix HACKING.md broken links 2020-02-18 01:50:36 +03:00
Michal Koutný
8b51950f4c docs: Correct resource weight range 2020-02-05 16:58:07 +00:00
Wilhelm Schuster
faec9de87f docs: Fix example code in ROOT_STORAGE_DAEMONS 2020-01-30 20:27:05 +00:00
mtron
58345a2332
docs: formatting fix (#14707)
fixes formatting in the last paragraph of the 'General Structure' chapter.
2020-01-31 00:06:57 +09:00
mtron
56b3eddb70 fix links to GROUP_RECORD and USER_GROUP_API
fix 2 more broken links. 

GROUP_RECORD now points to https://systemd.io/GROUP_RECORD/ and 
USER_GROUP_API to https://systemd.io/USER_GROUP_API/
2020-01-30 23:48:44 +09:00
mtron
e5e529c30a fix link to JSON User Records 2020-01-30 23:32:17 +09:00
Lennart Poettering
a9dabd6866 docs: document the home directory format 2020-01-28 22:38:17 +01:00
Lennart Poettering
f62dd2375e docs: document homed UID range 2020-01-28 22:38:13 +01:00
Lennart Poettering
b940fb1f4f
Merge pull request #14594 from keszybz/id128-show-gpt
Print gpt table values in systemd-id128
2020-01-28 17:23:50 +01:00
Ashley Davis
8bc943b472 fix erroneous "`" in boot loader spec 2020-01-29 00:52:54 +09:00
Lennart Poettering
766840af42
Merge pull request #14673 from keur/protect_clock
Protect clock
2020-01-28 15:11:41 +01:00
Kevin Kuehler
022d334561 man: doc: Document ProtectClock= 2020-01-27 11:21:36 -08:00
WataruMatsuoka
576e50efb6 Update copyright notice 2020-01-26 13:29:55 +09:00
Zbigniew Jędrzejewski-Szmek
dc972b0740 systemd-id128: add new verb to print GPT partitions UUIDs 2020-01-23 23:32:13 +01:00
Emmanuel Bourg
d3e5639ebb Fixed some typos in the documentation 2020-01-21 15:07:19 +01:00
Lennart Poettering
1e1f4f443d docs: uppercase are headers
We do this in most cases, do so here too.
2020-01-17 10:09:50 +01:00
Lennart Poettering
3b9796c01c docs: let's reduce our spurious whitespace a bit 2020-01-17 10:09:50 +01:00
Lennart Poettering
8eabc083dc docs: in PORTABILITY_AND_STABILITY only use one h1
According to the designer of the page layout a page only should have one
h1 header, and everything else should be h2, h3, … I think that makes a
ton of sense, hence let's downgrade some headers here.
2020-01-17 10:09:50 +01:00
Lennart Poettering
8384ed93b9 docs: clarify that we don't want to own $BOOT exclusively
Let's be clearer here.

Prompted by a quick discussion I had with @gicmo.
2020-01-17 10:08:13 +01:00
Lennart Poettering
c903ee8976 docs: add documentation for the varlink user/group APIs 2020-01-15 15:34:09 +01:00
Lennart Poettering
32eb3c4229 docs: add documentation for JSON group records, too 2020-01-15 15:34:09 +01:00
Lennart Poettering
812862db71 docs: add documentation for JSON user records 2020-01-15 15:34:09 +01:00
Lennart Poettering
42f3b2f975 shared: split out crypt() specific helpers into its own .c/.h in src/shared/
This way we can use libxcrypt specific functionality such as
crypt_gensalt() and thus take benefit of the newer algorithms libxcrypt
implements. (Also adds support for a new env var $SYSTEMD_CRYPT_PREFIX
which may be used to select the hash algorithm to use for libxcrypt.)

Also, let's move the weird crypt.h inclusion into libcrypt.h so that
there's a single place for it.
2020-01-15 15:26:27 +01:00
Zbigniew Jędrzejewski-Szmek
65e2766f64 docs: fix width of console example 2020-01-15 13:46:16 +01:00
Zbigniew Jędrzejewski-Szmek
5425f8a57c Revert "docs: rename HACKING → Hacking"
This reverts commit 8c5cd27dd1.
2020-01-15 13:45:04 +01:00
Zbigniew Jędrzejewski-Szmek
8c5cd27dd1 docs: rename HACKING → Hacking
Let's see if this works at all.
2020-01-15 12:38:12 +01:00
Zbigniew Jędrzejewski-Szmek
b6bcde2623 docs: shift console log on index page to the left 2020-01-15 11:58:08 +01:00
Zbigniew Jędrzejewski-Szmek
6af0a04428 docs: add the systemd output example
It is still nice...
2020-01-15 08:57:37 +01:00
Zbigniew Jędrzejewski-Szmek
4e96d758f8 docs: update old para with links to the blog stories
They are of historical interest, but without links not very useful.
2020-01-15 08:57:37 +01:00
Zbigniew Jędrzejewski-Szmek
48f60ea9ad docs: remove markup from title
Github uses a different background for backticked text, and this stands out
(in a bad way) on the title page.
2020-01-15 08:57:37 +01:00
Lennart Poettering
3fec552468 docs: rework HTML into GitHub Markdown table
Presumably this should render better on https://systemd.io/DISCOVERABLE_PARTITIONS then.

As pointed out on: https://github.com/systemd/systemd/pull/14390#issuecomment-574205631
2020-01-14 16:58:05 +01:00
Lennart Poettering
550979c8ae
Merge pull request #14570 from keszybz/resource-docs
Modernize links to cgroups docs
2020-01-14 16:17:38 +01:00
Zbigniew Jędrzejewski-Szmek
ea7fe1d1c2
Merge pull request #14390 from poettering/gpt-var-tmp
introduce GPT partition types for /var and /var/tmp and support them for auto-discovery
2020-01-14 15:37:53 +01:00
Lennart Poettering
b35ec8ded2 docs: uppercase all markdown document titles
For most we used uppercasing, but not for all. Let's stick to one rule,
and uppercase them all.
2020-01-14 10:14:11 +01:00
Lennart Poettering
a0fadf66da docs: drop "The" in categorization titles of Markdown documentation
I think it makes sense to keep the "The" in place for the actual page's
title, but let's drop it from the categorization header, to make it
easier to find stuff, as the "The" isn't helpful to that.

In particular as we sometimes do it this and sometimes the other way so
far, hence let's stick to one common rule.
2020-01-14 10:11:19 +01:00
Zbigniew Jędrzejewski-Szmek
744c49e1fe docs: update link and more dots
Apparently unicode ellipsis is too much for github.
2020-01-13 21:03:15 +01:00
Zbigniew Jędrzejewski-Szmek
0a5a8f13b4 docs: say that journalctl --flush/--sync also require journald
https://github.com/systemd/systemd/pull/14549#pullrequestreview-341758182
2020-01-13 21:01:01 +01:00
Zbigniew Jędrzejewski-Szmek
89f3ba7995
Merge pull request #14557 from poettering/root-storage-daemons-markdown
docs: convert root storage daemon doc to markdown
2020-01-13 20:57:37 +01:00
Lennart Poettering
180f7c26aa docs: import initrd interface documentation from fdo wiki
Imported from https://www.freedesktop.org/wiki/Software/systemd/InitrdInterface/
2020-01-13 20:55:57 +01:00
Lennart Poettering
f8349d2fa5 docs: various small fixes to PORTABILITY_AND_STABILITY markdown
Nothing particularly world moving.

Follow-up for #14549
2020-01-13 20:12:12 +01:00
Lennart Poettering
6e47cac0aa docs: convert root storage daemon doc to markdown
Import from:

https://www.freedesktop.org/wiki/Software/systemd/RootStorageDaemons/
2020-01-13 18:52:56 +01:00
Zbigniew Jędrzejewski-Szmek
d89cde0994 docs: say that various cli progs are independent of pid1 2020-01-12 19:12:15 +01:00
Zbigniew Jędrzejewski-Szmek
ef0bea8cf4 docs: say that dbus api is stable (but list various caveats)
I removed the part about sysv compat, because that has already been removed and
we don't make any use of conditional dbus interfaces afaict.
2020-01-12 18:54:17 +01:00
Zbigniew Jędrzejewski-Szmek
b2eea3dc32 docs: say that all documented programs in $PATH are stable 2020-01-12 18:54:17 +01:00
Zbigniew Jędrzejewski-Szmek
e4893c6306 docs: import "interface stability promise"
In the wiki, this was a separate page. I don't think this split is useful,
since the information about what is stable and what not seems randomly split
between the two pages.

Links are adjusted for our own pages. Some external links to gentoo and other
projects seem to be broken, but it's a chore to fix them.
2020-01-12 18:54:17 +01:00
Zbigniew Jędrzejewski-Szmek
b8b7309778 docs/stability: relax the stance on accepting patches a bit
Instead of saying that patches for portability are not accepted, say that this
is decided case-by-case. This is what happens in practice, and we tend to
discuss each patch on its own merits.

Some sentences are reworded a bit where they sound awkward.
2020-01-11 19:20:35 +01:00
Zbigniew Jędrzejewski-Szmek
02c789f9f9 docs: import stability chart from wiki 2020-01-11 18:47:26 +01:00
Zbigniew Jędrzejewski-Szmek
bb6d563a50 doc: link to html versions of cgroup docs
Also stop linking to some (obsolete) v1 documentation.
2020-01-09 16:47:34 +01:00
Zbigniew Jędrzejewski-Szmek
d2e825b4ab doc: tweak grammar in CONTAINER_INTERFACE description
The only non-stylistic change is to replace descriptions of how we are
encouraging people to use PrivateTmp= and such, because now they are widely
used.
2020-01-08 10:29:10 +01:00
Lennart Poettering
635dea2783 docs: move container interface docs from wiki to markdown
Let's move
https://www.freedesktop.org/wiki/Software/systemd/ContainerInterface/
into our tree and convert it to Markdown.

This also incldues some minor fixes and other changes.
2020-01-06 18:12:22 +01:00
Lennart Poettering
19ac32cdd6 docs: import discoverable partitions spec
This was previously available here:

https://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/

Let's pull it into our repository.
2019-12-23 14:44:33 +01:00
Lennart Poettering
da7667518b docs: CSS files should not be executable 2019-12-16 09:50:02 +01:00
Lennart Poettering
ff2c2d0850 docs: make sure there's only one # markdown header in each file
@bertob wants us to be strict here, and only have one "#" header per
markdown file, and use "##" (or "###", …) for all others. Interestingly,
we mostly got this right already, but this fixes a few cases where this
wasn't correct.
2019-12-13 11:56:08 +01:00
Yu Watanabe
da1b880a3a
Merge pull request #14308 from poettering/man-naming-scheme-typo
superficial fixes to network naming docs
2019-12-12 17:04:06 +09:00
Tobias Bernard
b41a3f66c9 docs: make it pretty
Add custom Jekyll theme, logo, webfont and .gitignore

FIXME: the markdown files have some H1 headers which need to be replaced
with H2
2019-12-11 17:04:20 +01:00
Lennart Poettering
7c4a7c6d13 docs: fix markdown links 2019-12-11 12:08:59 +01:00
Lennart Poettering
471d407eaa docs: use `` quotes for marking identifiers of some form 2019-12-11 12:08:55 +01:00
Lennart Poettering
5d3f5e4081 docs: beef up entrypoint documentation page
Let's use the rough categorization of the markdown pages to add basic
sections, via Jeykll templating. Also, add in a couple of additional
links via a JSON array that lists them.

So much web development, so much wow!
2019-12-11 10:53:14 +01:00
Lennart Poettering
4cdca0af11 docs: place all our markdown docs in rough categories 2019-12-11 10:53:00 +01:00
Zbigniew Jędrzejewski-Szmek
b096d14c41 doc: update list of transient units
Doing this manually seem to work only so well, but it is indeed hard to generate
automatically. Let's add the stuff that is missing for now.

AddRef= is not a unit file setting, remove it from the list.
2019-11-27 13:56:29 +01:00
Zbigniew Jędrzejewski-Szmek
370f0dc81c doc: drop rhs from transient settings list
I don't know why these particular ones had them.
2019-11-27 11:04:36 +01:00
Anita Zhang
05d6628ad2
Merge pull request #14151 from mk-fg/fix-timer-dump-syntax-bug
core.timer: fix "systemd-analyze dump" and docs syntax inconsistencies wrt OnTimezoneChange=
2019-11-25 15:56:33 -08:00
Mike Kazantsev
0810e39628 core.timer: fix "systemd-analyze dump" and docs syntax inconsistencies wrt OnTimezoneChange= 2019-11-26 04:29:03 +05:00
Zbigniew Jędrzejewski-Szmek
2536752dda Rename "system-options" to "systemd-efi-options"
This makes the naming more consistent: we now have
bootctl systemd-efi-options,
$SYSTEMD_EFI_OPTIONS
and the SystemdOptions EFI variable.

(SystemdEFIOptions would be redundant, because it is only used in the context
of efivars, and users don't interact with that name directly.)

bootctl is adjusted to use 2sp indentation, similarly to systemctl and other
programs.

Remove the prefix with the old name from 'bootctl systemd-efi-options' output,
since it's redundant and we don't want the old name anyway.
2019-11-18 20:20:58 +01:00
Zbigniew Jędrzejewski-Szmek
ed4ad48897 Allow overriding /etc/fstab with $SYSTEMD_FSTAB 2019-11-13 22:04:51 +01:00
Zbigniew Jędrzejewski-Szmek
3f5ac3038e cryptsetup-generator: allow overriding /run/systemd/cryptsetup with $RUNTIME_DIRECTORY
I added a fairly vague entry to docs/ENVIRONMENT because I think it is worth
mentioning there (in case someone is looking for any environment variable that
might be relevant).
2019-11-13 22:04:38 +01:00
Zbigniew Jędrzejewski-Szmek
a6c57e74c5 cryptsetup-generator: allow overriding crypttab path with $SYSTEMD_CRYPTAB 2019-11-13 17:55:51 +01:00
Michael Tretter
09ee387e08 boot-loader-spec: add devicetree-overlay key
Device tree overlays are a convenient way to patch device trees, e.g.,
add new devices to a device tree or enable/disable devices. This is
useful for non-discoverable but configurable hardware. Device tree
overlays are commonly used for displays on the Raspberry Pi or for
describing the content of FPGA bitstreams.

Add the devicetree-overlay key to boot loader specification entries to
allow boot loaders to apply overlays.

See #13537
2019-10-29 11:24:19 +01:00
Zbigniew Jędrzejewski-Szmek
a5f6f346d3
Merge pull request #13423 from pwithnall/12035-session-time-limits
Add `RuntimeMaxSec=` support to scope units (time-limited login sessions)
2019-10-28 14:57:00 +01:00
Philip Withnall
9ed7de605d scope: Support RuntimeMaxSec= directive in scope units
Just as `RuntimeMaxSec=` is supported for service units, add support for
it to scope units. This will gracefully kill a scope after the timeout
expires from the moment the scope enters the running state.

This could be used for time-limited login sessions, for example.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Fixes: #12035
2019-10-28 09:44:31 +01:00
Zbigniew Jędrzejewski-Szmek
581004bd33 docs: fix inadvertent change in uid range
a305eda35f (r35378755)
2019-10-06 19:05:57 +02:00
Zbigniew Jędrzejewski-Szmek
86e94d95d0
Merge pull request #13246 from keszybz/add-SystemdOptions-efi-variable
Add efi variable to augment /proc/cmdline
2019-10-03 12:19:44 +02:00
Zbigniew Jędrzejewski-Szmek
c78c095b1e nspawn: rename UNIFIED_CGROUP_HIERARCHY to SYSTEMD_NSPAWN_UNIFIED_HIERARCHY
We should never have used an unprefixed environment variable name.
All other systemd-nspawn variables have the "SYSTEMD_NSPAWN_" prefix,
and all other systemd variables have the "SYSTEMD_" prefix.

The new variable name takes precedence, but we fall back to checking the
old one. If only the old one is found, a warning is emitted.

In addition, SYSTEMD_NSPAWN_UNIFIED_HIERARCHY="" is accepted as an override
to avoid looking for the old variable name.

We have a variable with the same name ($UNIFIED_CGROUP_HIERARCHY) in tests,
which governs both systemd-nspawn and qemu behaviour. It is not renamed.
2019-10-01 10:21:13 -07:00
Pavel Hrdina
047f5d63d7 cgroup: introduce support for cgroup v2 CPUSET controller
Introduce support for configuring cpus and mems for processes using
cgroup v2 CPUSET controller.  This allows users to limit which cpus
and memory NUMA nodes can be used by processes to better utilize
system resources.

The cgroup v2 interfaces to control it are cpuset.cpus and cpuset.mems
where the requested configuration is written.  However, it doesn't mean
that the requested configuration will be actually used as parent cgroup
may limit the cpus or mems as well.  In order to reflect the real
configuration cgroup v2 provides read-only files cpuset.cpus.effective
and cpuset.mems.effective which are exported to users as well.
2019-09-24 15:16:07 +02:00
Zbigniew Jędrzejewski-Szmek
53aa0d02ad Add support for SystemdOptions EFI var to augment /proc/cmdline
In various circumstances, overriding the kernel commandline can be inconvenient.
People have different bootloaders, and e.g. the grub config can be pretty scary.
grubby helps, but it isn't always available.

This option adds an alternative mechanism that can quite convenient on EFI
systems. cmdline settings have higher priority, because they can be (usually)
changed on the bootloader prompt.

$SYSTEMD_EFI_OPTIONS can be used to override, same as $SYSTEMD_PROC_CMDLINE.
2019-09-16 18:08:54 +02:00
Zbigniew Jędrzejewski-Szmek
31e1bbd1ca docs: fix push recipe in RELEASE.md 2019-09-05 13:40:31 +02:00
nikolas
22aba2b969 docs: fix typo in boot loader doc 2019-09-05 07:41:26 +09:00
Zbigniew Jędrzejewski-Szmek
153d597575 docs: create new SECURITY.md page
github has special support for that name:
https://help.github.com/en/articles/adding-a-security-policy-to-your-repository.
2019-08-30 11:45:42 +02:00
Zbigniew Jędrzejewski-Szmek
6d8cf86476 docs: new systemd-security mailing list
In the past, we asked people to open a security bug on one of the "big"
distros. This worked OK as far as getting bugs reported and notifying some
upstream developers went. But we always had trouble getting information to
all the appropriate parties, because each time a bug was reported, a big
thread was created, with a growing CC list. People who were not CCed early
enough were missing some information, etc.

To clean this up, we decided to create a private mailing list. The natural
place would be freedesktop.org, but unfortunately the request to create a
mailing list wasn't handled
(https://gitlab.freedesktop.org/freedesktop/freedesktop/issues/134). And even
if it was, at this point, if there was ever another administrative issue, it
seems likely it could take months to resolve. So instead, we asked for a list
to be created on the redhat mailservers.

Please consider the previous security issue reporting mechanisms rescinded, and
send any senstive bugs to systemd-security@redhat.com.
2019-08-30 09:12:27 +02:00
Lennart Poettering
d35c77412a docs: fix env var name in random seed markdown documentation 2019-08-11 06:10:58 +09:00
Simon Schricker
2d1b928109 docs: fix typo 2019-07-30 08:44:05 +02:00
Lennart Poettering
93f5910078 docs: add longer document about systemd and random number seeds 2019-07-25 18:31:20 +02:00
Lennart Poettering
c7bb4dfcf4 docs: document new random seed EFI vars as part of the boot loader interface 2019-07-25 18:31:20 +02:00
Anita Zhang
31cd5f63ce core: ExecCondition= for services
Closes #10596
2019-07-17 11:35:02 +02:00
Lennart Poettering
a7d9fccd0e locale-util: suppress non-UTF-8 locales when enumerating them
Let's hide non-UTF-8 locales by default. It's 2019 after all.

Let's add an undocumented env var to reenable listing them though.

This should substantially shorten the list of choices we offer users,
and only show realistic choices.

note that only firstboot and localectl make use of this information, and
both allow configuration of values outside of these lists, hence all
this change does is hide legacy options, but they are still available if
you know what you do, and that's how it should be.
2019-07-14 11:05:34 +02:00
Zbigniew Jędrzejewski-Szmek
29c7680ec9 meson: drop varlogdir variable
It was only used for exactly one thing: to substitute in the text in
/var/log/README. But it's use there was completely wrong, because the text
talks about "missing" log files from syslog, so even if we configured systemd
to log to a different directory, the "missing" log files would still be
"missing" from the old location.
2019-07-04 10:16:48 +02:00
Zbigniew Jędrzejewski-Szmek
6ed5ef9819 meson: create /var/log/journal/{,remote/} conditionally
Not everybody has those dirs in the filesystem (and they don't need to).
When creating an installation package using $DESTDIR, it is easy enough to
remove or ignore those directories, but if installing into a real root, it
is ugly to create and remove them. Let's add an option so people can skip
it if they want.

Inspired by #12930.
2019-07-04 10:16:48 +02:00
Michael Prokop
d238709c14 docs: fix typos and duplicate words
s/and and/and/
s/explicity/explicitly/
s/that that/that/
s/the the/the/
s/is is/it is/
s/overriden/overridden/
2019-06-27 10:43:21 +02:00
Lennart Poettering
b5bd7a29f9 some CODING_STYLE additions 2019-06-25 10:56:15 +02:00
Jan Pokorný
1a31d050f2 docs: CGROUP_DELEGATION: fix a typo in "that" 2019-06-18 11:31:47 +09:00
Jeka Pats
53a42e6268 Continuous Fuzzing Integration with Fuzzit
includes two travis ci steps:

1) Every pull-request/push all fuzzing targets will do a quick
sanity run on the generated corpus and crashes (via Fuzzit)
2) On a daily basis the fuzzing targets will be compiled (from
master) and will and their respectible fuzzing job on Fuzzit
will be updated to the new binary.
2019-06-14 21:09:40 +03:00
Frantisek Sumsal
c9a95378ec docs: add documentation for sanitizers 2019-05-27 17:46:10 +02:00
Michael Biebl
4450894653 Drop support for /usr/sbin/halt.local
/usr/sbin/halt.local is a Fedora/Red Hat anachronism from pre-systemd
times.
2019-05-23 10:19:01 +02:00
Lennart Poettering
a305eda35f docs: add comment about high 32bit range and signed uids 2019-05-16 19:24:59 +02:00
Chris Down
acdb4b5236 cgroup: Polish hierarchically aware protection docs a bit
I missed adding a section in `systemd.resource-control` about
DefaultMemoryMin in #12332.

Also, add a NEWS entry going over the general concept.
2019-05-08 12:06:32 +01:00
Ben Boeckel
5238e95759 codespell: fix spelling errors 2019-04-29 16:47:18 +02:00
Anita Zhang
25cc30c4c8 core: support DisableControllers= for transient units 2019-04-22 11:52:08 -07:00
Yu Watanabe
cc83684947
Merge pull request #12296 from poettering/coding-style-sections
split CODING_STYLE document into multiple thematic sections
2019-04-13 18:23:13 +09:00
Jan Klötzke
dc653bf487 service: handle abort stops with dedicated timeout
When shooting down a service with SIGABRT the user might want to have a
much longer stop timeout than on regular stops/shutdowns. Especially in
the face of short stop timeouts the time might not be sufficient to
write huge core dumps before the service is killed.

This commit adds a dedicated (Default)TimeoutAbortSec= timer that is
used when stopping a service via SIGABRT. In all other cases the
existing TimeoutStopSec= is used. The timer value is unset by default
to skip the special handling and use TimeoutStopSec= for state
'stop-watchdog' to keep the old behaviour.

If the service is in state 'stop-watchdog' and the service should be
stopped explicitly we still go to 'stop-sigterm' and re-apply the usual
TimeoutStopSec= timeout.
2019-04-12 17:32:52 +02:00
Chris Down
c52db42b78 cgroup: Implement default propagation of MemoryLow with DefaultMemoryLow
In cgroup v2 we have protection tunables -- currently MemoryLow and
MemoryMin (there will be more in future for other resources, too). The
design of these protection tunables requires not only intermediate
cgroups to propagate protections, but also the units at the leaf of that
resource's operation to accept it (by setting MemoryLow or MemoryMin).

This makes sense from an low-level API design perspective, but it's a
good idea to also have a higher-level abstraction that can, by default,
propagate these resources to children recursively. In this patch, this
happens by having descendants set memory.low to N if their ancestor has
DefaultMemoryLow=N -- assuming they don't set a separate MemoryLow
value.

Any affected unit can opt out of this propagation by manually setting
`MemoryLow` to some value in its unit configuration. A unit can also
stop further propagation by setting `DefaultMemoryLow=` with no
argument. This removes further propagation in the subtree, but has no
effect on the unit itself (for that, use `MemoryLow=0`).

Our use case in production is simplifying the configuration of machines
which heavily rely on memory protection tunables, but currently require
tweaking a huge number of unit files to make that a reality. This
directive makes that significantly less fragile, and decreases the risk
of misconfiguration.

After this patch is merged, I will implement DefaultMemoryMin= using the
same principles.
2019-04-12 17:23:58 +02:00
Lennart Poettering
b4f12824a0 CODING_STYLE: rename "Others" section to "Code Organization and Semantics"
This is a bit of a grabbag, but it's the best I could come up with
without having lots of single-item sections.
2019-04-12 17:01:05 +02:00
Lennart Poettering
4467d39315 CODING_STYLE: split out section about runtime behaviour 2019-04-12 16:59:48 +02:00
Lennart Poettering
78e5b4d7ee CODING_STYLE: add section about C constructs use 2019-04-12 16:53:27 +02:00
Lennart Poettering
3b75e079a8 CODING_STYLE: split out section about deadlocks 2019-04-12 16:50:24 +02:00
Lennart Poettering
96f6cfbf62 CODING_STYLE: split out section about logging 2019-04-12 16:49:02 +02:00
Lennart Poettering
5638076135 CODING_STYLE: export section about exporting symbols 2019-04-12 16:45:03 +02:00
Lennart Poettering
c159efe341 CODING_STYLE: split out section about destructors 2019-04-12 16:42:44 +02:00
Lennart Poettering
996f119d97 CODING_STYLE: split out section about command line parsing 2019-04-12 16:40:34 +02:00
Lennart Poettering
b065e1f176 CODING_STYLE: Split out section about error handling 2019-04-12 16:38:14 +02:00
Lennart Poettering
831781b9c9 CODING_STYLE: split out section about commiting to git 2019-04-12 16:35:17 +02:00
Lennart Poettering
25553cd9cd CODING_STYLE: split out section about file descriptors 2019-04-12 16:34:01 +02:00
Lennart Poettering
0485824030 CODING_STYLE: split out section about memory allocations 2019-04-12 16:31:58 +02:00
Lennart Poettering
f42c1cd4b5 CODING_STYLE: move out section about Types 2019-04-12 16:28:35 +02:00
Lennart Poettering
971dfffab8 CODING_STYLE: add section about how to reference specific concepts 2019-04-12 16:28:35 +02:00
Lennart Poettering
8c9289e705 CODING_STYLE: split out bits about Formatting into its own section
(And, for now, add a section "Other" to separate the rest of the stuff)
2019-04-12 16:28:35 +02:00
Lennart Poettering
2d0dce2afe CODING_STYLE: add a section about functions not to use
Let's add sections to the document. First off, let's add one about
functions not to use.
2019-04-12 16:28:02 +02:00
Zbigniew Jędrzejewski-Szmek
3b69b18fbf CODING_STYLE: adjust indentation rules, and add note about config loading 2019-04-12 08:37:41 +02:00
Zbigniew Jędrzejewski-Szmek
3be4939149 docs: also document updates to stable repo 2019-04-03 16:43:17 +02:00
Zbigniew Jędrzejewski-Szmek
afa4e4a9db docs: let's not close the milestone early 2019-04-03 16:23:43 +02:00
Zbigniew Jędrzejewski-Szmek
f5a44d42af docs: update release steps for meson 2019-04-03 11:25:15 +02:00
Lennart Poettering
570ee29ce1 docs: fix path to unit files 2019-04-03 13:47:12 +09:00
Lennart Poettering
7445db6eb7 man: document the new RestrictSUIDSGID= setting 2019-04-02 16:56:48 +02:00
Lennart Poettering
efebb613c7 core: optionally, trigger .timer units on timezone and clock changes
Fixes: #6228
2019-04-02 08:20:10 +02:00
Lennart Poettering
e178b335f5 docs: adjust the spec a bit with firmware authros in mind
This borrows heavily from Nico Huber's
https://github.com/systemd/systemd/pull/10398, but makes a number of
changes.

Replaces: #10398
2019-03-14 15:13:33 +01:00
Lennart Poettering
957848db22 docs: comprehensively document what a minimal portable service image needs to include
The docs were incomplete on this. Let's fix that.

Fixes: #11870
2019-03-14 15:13:33 +01:00
Lennart Poettering
e86c7a3abc docs: document the new environment variables logind groks 2019-03-05 16:52:46 +01:00
Zbigniew Jędrzejewski-Szmek
57903f93c9 docs: add a note about compilation options
Closes #6371.
2019-03-05 13:58:06 +01:00
Ben Iofel
892cd2f7ac xbootldr: multiple spaces between keys and values (#11872)
The example below the changed line has multiple spaces between e.g. `title` and `Fedora`
2019-03-03 22:51:22 +01:00
Lennart Poettering
82dad52818 docs: enclose all uuids in `` 2019-03-01 12:41:32 +01:00
unixsysadmin
56ee4d7001 Fix typo - "do note use guessable names"
Fix typo - "do note use guessable names" to "do not use guessable names"
2019-02-20 22:46:16 +01:00
Lennart Poettering
b04d849085 docs: document semantics of /tmp and /var/tmp 2019-02-20 18:31:18 +01:00
Lennart Poettering
eca3d5d567
Merge pull request #9594 from filbranden/cpu_quota_period1
core: add CPUQuotaPeriodSec=
2019-02-15 12:11:42 +01:00
Ignat Korchagin
def3c7c791 resolved: use Cloudflare public DNS server as a default fallback alongside Google one
Cloudflare public DNS service is currently the fastest one according to
https://www.dnsperf.com/#!dns-resolvers. Why not improve the experience for
systemd users using this as a default fallback nameserver?
2019-02-15 11:34:11 +01:00
Filipe Brandenburger
10f2864111 core: add CPUQuotaPeriodSec=
This new setting allows configuration of CFS period on the CPU cgroup, instead
of using a hardcoded default of 100ms.

Tested:
- Legacy cgroup + Unified cgroup
- systemctl set-property
- systemctl show
- Confirmed that the cgroup settings (such as cpu.cfs_period_ns) were set
  appropriately, including updating the CPU quota (cpu.cfs_quota_ns) when
  CPUQuotaPeriodSec= is updated.
- Checked that clamping works properly when either period or (quota * period)
  are below the resolution of 1ms, or if period is above the max of 1s.
2019-02-14 11:04:42 -08:00
Дамјан Георгиевски
6f61b14d53 portable: document /etc/machine-id and /etc/resolv.conf
… requirement for portable service images.

systemd will mount the host machine-id and resolv.conf at these
locations, so for read-only images these must exist in the image,
because they can't be created.
2019-02-04 15:59:41 +01:00
Chris Morin
f36712b7c3 CODING_STYLE: fix grammar mistake 2019-01-17 12:37:40 +01:00
Zbigniew Jędrzejewski-Szmek
d27d60b3bc
Merge pull request #11317 from filbranden/docs1
Improvements to systemd.io generation
2019-01-03 18:38:57 +01:00
Chris Down
4e1dfa45e9 cgroup: s/cgroups? ?v?([0-9])/cgroup v\1/gI
Nitpicky, but we've used a lot of random spacings and names in the past,
but we're trying to be completely consistent on "cgroup vN" now.

Generated by `fd -0 | xargs -0 -n1 sed -ri --follow-symlinks 's/cgroups?  ?v?([0-9])/cgroup v\1/gI'`.

I manually ignored places where it's not appropriate to replace (eg.
"cgroup2" fstype and in src/shared/linux).
2019-01-03 11:32:40 +09:00
Filipe Brandenburger
357211a426 docs: generate index.md in Jekyll
This uses a {% for %} loop in Jekyll to render the page, from the "title"
information in the Front Matter of the actual page files.

This also makes `make-index-md` build rule unnecessary, since generation is
done by the template engine itself.

Tested this by running Jekyll locally.
2019-01-02 14:23:18 -08:00
Filipe Brandenburger
c3e270f4ee docs: add a "front matter" snippet to our markdown pages
It turns out Jekyll (the engine behind GitHub Pages) requires that pages
include a "Front Matter" snippet of YAML at the top for proper rendering.

Omitting it will still render the pages, but including it opens up new
possibilities, such as using a {% for %} loop to generate index.md instead of
requiring a separate script.

I'm hoping this will also fix the issue with some of the pages (notably
CODE_OF_CONDUCT.html) not being available under systemd.io

Tested locally by rendering the website with Jekyll. Before this change, the
*.md files were kept unchanged (so not sure how that even works?!), after this
commit, proper *.html files were generated from it.
2019-01-02 14:16:34 -08:00
Lennart Poettering
59f13dd6f8 remount-fs: optionally remount / writable, if we are told through an env var 2018-12-18 14:47:44 +01:00
Lennart Poettering
7db43ec32f docs: add missing section to ENVIRONMENT.md
No, this is not an env var understood by logind. Let's fix the
confusoin.
2018-12-17 20:48:22 +01:00
Zbigniew Jędrzejewski-Szmek
3f9a0a522f tree-wide: s/time-out/timeout/g
From WordNet (r) 3.0 (2006) [wn]:

  time-out
      n 1: a brief suspension of play; "each team has two time-outs left"

From The Free On-line Dictionary of Computing (18 March 2015) [foldoc]:

  timeout

     A period of time after which an error condition is raised if
     some event has not occured.  A common example is sending a
     message.  If the receiver does not acknowledge the message
     within some preset timeout period, a transmission error is
     assumed to have occured.
2018-12-14 11:17:52 +01:00
Zbigniew Jędrzejewski-Szmek
06da5c63dd meson: make net.naming-scheme= default configurable
This is useful for distributions, where the stability of interface names should
be preseved after an upgrade of systemd. So when some specific release of the
distro is made available, systemd defaults to the latest & greatest naming
scheme, and subsequent updates set the same default. This default may still
be overriden through the kernel and env var options.

A special value "latest" is also allowed. Without a specific name, it is harder
to verride from meson. In case of 'combo' options, meson reads the default
during the initial configuration, and "remembers" this choice. When systemd is
updated, old build/ directories could keep the old default, which would be
annoying. Hence, "latest" is introduced to make it explicit, yet follow the
upstream. This is actually useful for the user too, because it may be used
as an override, without having to actually specify a version.
2018-12-12 10:09:36 +01:00
Lennart Poettering
f7e81fd96f udev: introduce udev net_id "naming schemes"
With this we can stabilize how naming works for network interfaces. A
user can request through a kernel cmdline option or an env var which
scheme to follow. The idea is that installers use this to set into stone
(a very soft stone though) the scheme used during installation so that
interface naming doesn't change afterwards anymore.

Why use env vars and kernel cmdline options, and not a config file of
its own?

Well, first of all there's no obvious existing one to use. But more
importantly: I have the feeling that this logic is kind of an incomplete
hack, and I simply don't want to do advertise this as a perfectly
working solution. So far we used env vars for the non-so-official
options and proper config files for the official stuff. Given how
incomplete this logic is (i.e. the big variable for naming remains the
kernel, which might expose sysfs attributes in newer versions that we
check for and didn't exist in older versions — and other problems like
this), I am simply not confident in giving this first-class exposure in
a primary configuration file.

Fixes: #10448
2018-12-11 23:29:46 +01:00
Zbigniew Jędrzejewski-Szmek
a2bd90d38e Merge branch 'predictable-interface-names'
This imports the wiki page for predictable interface names. I think it's
useful to preserve history here because it's a contentious subject, and
it's useful to know when what happened.
2018-12-11 11:13:26 +01:00
Zbigniew Jędrzejewski-Szmek
f9e6d49904 Rename to follow the convention
Also remove trailing whitespace.
2018-12-11 11:02:06 +01:00
LennartPoettering
4368c49697 2018-12-11 10:58:40 +01:00
LennartPoettering
e90d48ae38 2018-12-11 10:58:40 +01:00
TanuKaskinen
27eaa1bc7a fix typo 2018-12-11 10:58:40 +01:00
LennartPoettering
86db1e3532 2018-12-11 10:58:40 +01:00
LennartPoettering
c8f2c6b122 2018-12-11 10:58:40 +01:00
ColinGuthrie
b4584342c0 Deal with 80-net-setup-link.rules introduced in 209. 2018-12-11 10:58:40 +01:00
LennartPoettering
8745120c99 2018-12-11 10:58:40 +01:00
LennartPoettering
56fbd5310f 2018-12-11 10:58:40 +01:00
ColinGuthrie
f42be39a18 Document the net.ifnames kernel command line. 2018-12-11 10:58:40 +01:00
Joe Rayhawk
cedf08c774 moin2mdwn: convert page docs/PredictableNetworkInterfaceNames 2018-12-11 10:58:40 +01:00
LennartPoettering
54313217c1 2018-12-11 10:58:40 +01:00
LennartPoettering
3c31f15cdb 2018-12-11 10:58:40 +01:00
LennartPoettering
e2f9b633c4 2018-12-11 10:58:40 +01:00
LennartPoettering
afce8ff3af 2018-12-11 10:58:40 +01:00
LennartPoettering
d363512c92 2018-12-11 10:58:40 +01:00
LennartPoettering
ee83da3a75 2018-12-11 10:58:40 +01:00