1
0
mirror of https://github.com/systemd/systemd synced 2026-04-23 23:44:50 +02:00

Compare commits

..

No commits in common. "a4cc838e8cbd63a675a3683f5e9843002903e304" and "9b01798b98d1d8e7cecb2eaf49aa6cc39d57ae0d" have entirely different histories.

17 changed files with 28 additions and 44 deletions

2
NEWS
View File

@ -12493,7 +12493,7 @@ CHANGES WITH 197:
based on a calendar time specification such as "Thu,Fri based on a calendar time specification such as "Thu,Fri
2013-*-1,5 11:12:13" which refers to 11:12:13 of the first 2013-*-1,5 11:12:13" which refers to 11:12:13 of the first
or fifth day of any month of the year 2013, given that it is or fifth day of any month of the year 2013, given that it is
a Thursday or a Friday. This brings timer event support a thursday or friday. This brings timer event support
considerably closer to cron's capabilities. For details on considerably closer to cron's capabilities. For details on
the supported calendar time specification language see the supported calendar time specification language see
systemd.time(7). systemd.time(7).

11
TODO
View File

@ -78,17 +78,6 @@ Janitorial Clean-ups:
Features: Features:
* per-service sandboxing option: ProtectIds=. If used, will overmount
/etc/machine-id and /proc/sys/kernel/random/boot_id with synthetic files, to
make it harder for the service to identify the host. Depending on the user
setting it should be fully randomized at invocation time, or a hash of the
real thing, keyed by the unit name or so. Of course, there are other ways to
get these IDs (e.g. journal) or similar ids (e.g. MAC addresses, DMI ids, CPU
ids), so this knob would only be useful in combination with other lockdown
options. Particularly useful for portable services, and anything else that
uses RootDirectory= or RootImage=. (Might also over-mount
/sys/class/dmi/id/*{uuid,serial} with /dev/null).
* journalctl/timesyncd: whenever timesyncd acquires a synchronization from NTP, * journalctl/timesyncd: whenever timesyncd acquires a synchronization from NTP,
create a structured log entry that contains boot ID, monotonic clock and create a structured log entry that contains boot ID, monotonic clock and
realtime clock (I mean, this requires no special work, as these three fields realtime clock (I mean, this requires no special work, as these three fields

View File

@ -30,11 +30,10 @@
<title>Description</title> <title>Description</title>
<para> <para>
<citerefentry><refentrytitle>systemd-boot</refentrytitle><manvolnum>7</manvolnum></citerefentry> will <citerefentry><refentrytitle>systemd-boot</refentrytitle><manvolnum>7</manvolnum></citerefentry>
read <filename><replaceable>ESP</replaceable>/loader/loader.conf</filename>, and any files with the will read <filename><replaceable>ESP</replaceable>/loader/loader.conf</filename> and any files with the
<literal>.conf</literal> extension under <literal>.conf</literal> extension under
<filename><replaceable>ESP</replaceable>/loader/entries/</filename> on the EFI system partition (ESP) as <filename><replaceable>ESP</replaceable>/loader/entries/</filename> on the EFI system partition (ESP).
defined by <ulink url="https://systemd.io/BOOT_LOADER_SPECIFICATION">Boot Loader Specification</ulink>.
</para> </para>
<para>Each configuration file must consist of an option name, followed by <para>Each configuration file must consist of an option name, followed by

View File

@ -39,22 +39,23 @@
<itemizedlist> <itemizedlist>
<listitem><para>Boot entries defined with <ulink <listitem><para>Boot entries defined with <ulink
url="https://systemd.io/BOOT_LOADER_SPECIFICATION">Boot Loader Specification</ulink> Type #1 url="https://systemd.io/BOOT_LOADER_SPECIFICATION">Boot Loader Specification</ulink> description files
description files located in <filename>/loader/entries/</filename> on the ESP and the Extended Boot located in <filename>/loader/entries/</filename> on the ESP and the Extended Boot Loader
Loader Partition. These usually describe Linux kernel images with associated initrd images, but Partition. These usually describe Linux kernel images with associated initrd images, but alternatively
alternatively may also describe other arbitrary EFI executables.</para></listitem> may also describe arbitrary other EFI executables.</para></listitem>
<listitem><para>Unified kernel images, <ulink url="https://systemd.io/BOOT_LOADER_SPECIFICATION">Boot <listitem><para>Unified kernel images following the <ulink
Loader Specification</ulink> Type #2, which are executable EFI binaries in url="https://systemd.io/BOOT_LOADER_SPECIFICATION">Boot Loader Specification</ulink>, as executable EFI
<filename>/EFI/Linux/</filename> on the ESP and the Extended Boot Loader Partition.</para></listitem> binaries in <filename>/EFI/Linux/</filename> on the ESP and the Extended Boot Loader Partition.
</para></listitem>
<listitem><para>The Microsoft Windows EFI boot manager, if installed.</para></listitem> <listitem><para>The Microsoft Windows EFI boot manager, if installed</para></listitem>
<listitem><para>The Apple macOS boot manager, if installed.</para></listitem> <listitem><para>The Apple macOS boot manager, if installed</para></listitem>
<listitem><para>The EFI Shell binary, if installed.</para></listitem> <listitem><para>The EFI Shell binary, if installed</para></listitem>
<listitem><para>A reboot into the UEFI firmware setup option, if supported by the firmware.</para></listitem> <listitem><para>A reboot into the UEFI firmware setup option, if supported by the firmware</para></listitem>
</itemizedlist> </itemizedlist>
<para><command>systemd-boot</command> supports the following features:</para> <para><command>systemd-boot</command> supports the following features:</para>

View File

@ -44,9 +44,9 @@
<para>This tool implements file, directory, or partition based update schemes, supporting multiple <para>This tool implements file, directory, or partition based update schemes, supporting multiple
parallel installed versions of specific resources in an A/B (or even: A/B/C, A/B/C/D/, …) style. A/B parallel installed versions of specific resources in an A/B (or even: A/B/C, A/B/C/D/, …) style. A/B
updating means that when one version of a resource is currently being used, the next version can be updating means that when one version of a resource is currently being used, the next version can be
downloaded, unpacked, and prepared in an entirely separate location, independently of the first, and — once downloaded, unpacked, and prepared in an entirely separate location, indepdently of the first, and — once
complete — be activated, swapping the roles so that it becomes the used one and the previously used one complete — be activated, swapping the roles so that it becomes the used one and the previously used one
becomes the one that is replaced by the next update, and so on. The resources to update are defined becomes the the one that is replaced by the next update, and so on. The resources to update are defined
in transfer files, one for each resource to be updated. For example, resources that may be updated with in transfer files, one for each resource to be updated. For example, resources that may be updated with
this tool could be: a root file system partition, a matching Verity partition plus one kernel image. The this tool could be: a root file system partition, a matching Verity partition plus one kernel image. The
combination of the three would be considered a complete OS update.</para> combination of the three would be considered a complete OS update.</para>

View File

@ -119,7 +119,7 @@ fuzzers += [
[libsystemd_network, [libsystemd_network,
libshared]], libshared]],
[files('fuzz-dhcp-server-relay.c'), [files('fuzz-dhcp-server-relay-message.c'),
[libsystemd_network, [libsystemd_network,
libshared]], libshared]],

View File

@ -613,7 +613,7 @@ tests += [
'nss-test-util.h'), 'nss-test-util.h'),
[], [],
[libdl], [libdl],
[], 'ENABLE_NSS', 'timeout=120'], [], 'ENABLE_NSS'],
[files('test-nss-users.c', [files('test-nss-users.c',
'nss-test-util.c', 'nss-test-util.c',

View File

@ -13,23 +13,18 @@ _ORIG_NSPAWN="${SYSTEMD_NSPAWN:?}"
SYSTEMD_NSPAWN="${STATEDIR:?}/run-nspawn" SYSTEMD_NSPAWN="${STATEDIR:?}/run-nspawn"
setup_nspawn_root_hook() { setup_nspawn_root_hook() {
cat >"${STATEDIR:?}/run-nspawn" <<EOF cat > "${STATEDIR:?}"/run-nspawn <<-EOF
#!/bin/bash #!/bin/bash
exec "${TEST_BASE_DIR:?}/test-shutdown.py" -v -- "$_ORIG_NSPAWN" "\$@" exec "${TEST_BASE_DIR:?}"/test-shutdown.py -- "$_ORIG_NSPAWN" "\$@"
exit 1 exit 1
EOF EOF
chmod 755 "${STATEDIR:?}"/run-nspawn chmod 755 "${STATEDIR:?}"/run-nspawn
} }
test_append_files() { test_append_files() {
local workspace="${1:?}" local workspace="${1:?}"
# prevent shutdown in test suite, the expect script does that manually. # prevent shutdown in test suite, the expect script does that manually.
mkdir -p "${workspace:?}/etc/systemd/system/end.service.d" rm "${workspace:?}/usr/lib/systemd/tests/testdata/units/end.service"
cat >"$workspace/etc/systemd/system/end.service.d/99-override.conf" <<EOF
[Service]
ExecStart=
ExecStart=/bin/true
EOF
inst /usr/bin/screen inst /usr/bin/screen
echo "PS1='screen\$WINDOW # '" >>"$workspace/root/.bashrc" echo "PS1='screen\$WINDOW # '" >>"$workspace/root/.bashrc"
echo 'startup_message off' >"$workspace/etc/screenrc" echo 'startup_message off' >"$workspace/etc/screenrc"

View File

@ -4,4 +4,4 @@ Description=TEST-69-SHUTDOWN
[Service] [Service]
Type=oneshot Type=oneshot
ExecStart=/bin/true ExecStart=/usr/lib/systemd/tests/testdata/units/%N.sh

View File

@ -18,7 +18,7 @@ ConditionVirtualization=!container
[Timer] [Timer]
# Trigger the update 15min after boot, and then on average every 6h, but # Trigger the update 15min after boot, and then on average every 6h, but
# randomly distributed in a 2h…6h interval. In addition trigger things # randomly distributed in a 2h…6h interval. In addition trigger things
# persistently once on each Saturday, to ensure that even on systems that are # persistently once on each saturday, to ensure that even on systems that are
# never booted up for long we have a chance to to do the update. # never booted up for long we have a chance to to do the update.
OnBootSec=15min OnBootSec=15min
OnUnitActiveSec=2h OnUnitActiveSec=2h