mirror of
https://github.com/systemd/systemd
synced 2024-09-06 16:56:43 +00:00
![Zbigniew Jędrzejewski-Szmek](/assets/img/avatar_default.png)
Users may use rules that refer to binaries e.g. in /opt or /usr/local, and those directories may be separate mount points. We don't need the binfmt rules in early boot, so let's delay the service so that we can rely on the full local filesystem being visible. Fixes #21178.
34 lines
1.2 KiB
SYSTEMD
34 lines
1.2 KiB
SYSTEMD
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
#
|
|
# This file is part of systemd.
|
|
#
|
|
# systemd is free software; you can redistribute it and/or modify it
|
|
# under the terms of the GNU Lesser General Public License as published by
|
|
# the Free Software Foundation; either version 2.1 of the License, or
|
|
# (at your option) any later version.
|
|
|
|
[Unit]
|
|
Description=Set Up Additional Binary Formats
|
|
Documentation=man:systemd-binfmt.service(8) man:binfmt.d(5)
|
|
Documentation=https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html
|
|
Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
|
|
DefaultDependencies=no
|
|
Conflicts=shutdown.target
|
|
After=proc-sys-fs-binfmt_misc.automount
|
|
After=proc-sys-fs-binfmt_misc.mount
|
|
After=local-fs.target
|
|
Before=sysinit.target shutdown.target
|
|
ConditionPathIsReadWrite=/proc/sys/
|
|
ConditionDirectoryNotEmpty=|/lib/binfmt.d
|
|
ConditionDirectoryNotEmpty=|/usr/lib/binfmt.d
|
|
ConditionDirectoryNotEmpty=|/usr/local/lib/binfmt.d
|
|
ConditionDirectoryNotEmpty=|/etc/binfmt.d
|
|
ConditionDirectoryNotEmpty=|/run/binfmt.d
|
|
|
|
[Service]
|
|
Type=oneshot
|
|
RemainAfterExit=yes
|
|
ExecStart={{ROOTLIBEXECDIR}}/systemd-binfmt
|
|
ExecStop={{ROOTLIBEXECDIR}}/systemd-binfmt --unregister
|
|
TimeoutSec=90s
|