diff options
Diffstat (limited to 'po/de/man7/daemon.7.po')
-rw-r--r-- | po/de/man7/daemon.7.po | 1918 |
1 files changed, 1918 insertions, 0 deletions
diff --git a/po/de/man7/daemon.7.po b/po/de/man7/daemon.7.po new file mode 100644 index 00000000..2254401a --- /dev/null +++ b/po/de/man7/daemon.7.po @@ -0,0 +1,1918 @@ +# German translation of manpages +# This file is distributed under the same license as the manpages-l10n package. +# Copyright © of this file: +# Helge Kreutzmann <debian@helgefjell.de>, 2018-2020,2023. +msgid "" +msgstr "" +"Project-Id-Version: manpages-l10n 4.21.0\n" +"POT-Creation-Date: 2024-03-01 16:54+0100\n" +"PO-Revision-Date: 2023-12-27 05:23+0100\n" +"Last-Translator: Helge Kreutzmann <debian@helgefjell.de>\n" +"Language-Team: German <debian-l10n-german@lists.debian.org>\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. type: TH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "DAEMON" +msgstr "DAEMON" + +#. type: TH +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "systemd 255" +msgstr "systemd 255" + +#. type: TH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "daemon" +msgstr "daemon" + +#. ----------------------------------------------------------------- +#. * MAIN CONTENT STARTS HERE * +#. ----------------------------------------------------------------- +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NAME" +msgstr "BEZEICHNUNG" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "daemon - Writing and packaging system daemons" +msgstr "daemon - Schreiben und Paketieren von System-Daemons" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "DESCRIPTION" +msgstr "BESCHREIBUNG" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"A daemon is a service process that runs in the background and supervises the " +"system or provides functionality to other processes\\&. Traditionally, " +"daemons are implemented following a scheme originating in SysV Unix\\&. " +"Modern daemons should follow a simpler yet more powerful scheme (here called " +"\"new-style\" daemons), as implemented by B<systemd>(1)\\&. This manual page " +"covers both schemes, and in particular includes recommendations for daemons " +"that shall be included in the systemd init system\\&." +msgstr "" +"Ein Daemon ist ein Diensteprozess, der im Hintergrund läuft und das System " +"beaufsichtigt oder Funktionalitäten für andere Prozesse bereitstellt\\&. " +"Traditionell werden Daemons so implementiert, dass sie einem ursprünglich " +"aus SysV-Unix stammenden Schema folgen\\&. Moderne Daemons sollten einem " +"einfacheren, aber dennoch leistungsfähigeren Schema folgen (hier »neuartige« " +"Daemons genannt), wie es von B<systemd>(1) implementiert wird\\&. Diese " +"Handbuchseite deckt beide Schemata ab und enthält insbesondere Empfehlungen " +"für Daemons, die im Systemd-Init-System aufgenommen werden sollen\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SysV Daemons" +msgstr "SysV-Daemons" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"When a traditional SysV daemon starts, it should execute the following steps " +"as part of the initialization\\&. Note that these steps are unnecessary for " +"new-style daemons (see below), and should only be implemented if " +"compatibility with SysV is essential\\&." +msgstr "" +"Wenn ein traditioneller SysV-Daemon startet, sollte er die folgenden " +"Schritte als Teil seiner Initialisierung ausführen\\&. Beachten Sie, dass " +"diese Schritte von neuartigen Daemons (siehe unten) nicht benötigt " +"werden\\&. Sie sollten daher nur implementiert werden, wenn die " +"Kompatibilität zu SysV essenziell ist\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Close all open file descriptors except standard input, output, and error " +"(i\\&.e\\&. the first three file descriptors 0, 1, 2)\\&. This ensures that " +"no accidentally passed file descriptor stays around in the daemon " +"process\\&. On Linux, this is best implemented by iterating through /proc/" +"self/fd, with a fallback of iterating from file descriptor 3 to the value " +"returned by B<getrlimit()> for B<RLIMIT_NOFILE>\\&." +msgstr "" +"Alle offenen Dateideskriptoren außer der Standardeingabe, -ausgabe und -" +"fehlerausgabe (d\\&.h\\&. den drei ersten Dateideskriptoren 0, 1, 2) werden " +"geschlossen\\&. Dies stellt sicher, dass kein versehentlich geöffneter " +"Dateideskriptor im Daemon-Prozess verbleibt\\&. Unter Linux wird dies am " +"besten dadurch implementiert, dass durch /proc/self/fd iteriert wird, mit " +"der Rückfalloption, von Dateideskriptor 3 bis zu dem von B<getrlimit()> für " +"B<RLIMIT_NOFILE> zurückgelieferten Wert durchzuiterieren\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Reset all signal handlers to their default\\&. This is best done by " +"iterating through the available signals up to the limit of B<_NSIG> and " +"resetting them to B<SIG_DFL>\\&." +msgstr "" +"Alle Signal-Handler werden auf ihre Vorgaben zurückgesetzt\\&. Dies erfolgt " +"am besten durch Iteration durch alle verfügbaren Signale bis zur Grenze von " +"B<_NSIG> und dem Zurücksetzen dieser auf B<SIG_DFL>\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Reset the signal mask using B<sigprocmask()>\\&." +msgstr "Zurücksetzen der Signal-Maske mittels B<sigprocmask()>\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Sanitize the environment block, removing or resetting environment variables " +"that might negatively impact daemon runtime\\&." +msgstr "" +"Bereinigen des Umgebungsblocks, Entfernen oder Zurücksetzen der " +"Umgebungsvariablen, die einen negativen Einfluss auf die Laufzeit des " +"Daemons haben könnten\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Call B<fork()>, to create a background process\\&." +msgstr "Aufrufen von B<fork()>, um einen Hintergrundprozess zu erzeugen\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In the child, call B<setsid()> to detach from any terminal and create an " +"independent session\\&." +msgstr "" +"Aufruf von B<setsid()> im Kind, um von jedem Terminal zu trennen und eine " +"unabhängige Sitzung zu erzeugen\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In the child, call B<fork()> again, to ensure that the daemon can never re-" +"acquire a terminal again\\&. (This relevant if the program \\(em and all its " +"dependencies \\(em does not carefully specify `O_NOCTTY` on each and every " +"single `open()` call that might potentially open a TTY device node\\&.)" +msgstr "" +"Erneuter Aufruf von B<fork()> im Kind, um sicherzustellen, dass der Daemon " +"niemals wieder ein Terminal erlangen kann\\&. (Dies ist relevant, falls das " +"Programm und alle seine Abhängigkeiten nicht sorgfältig genug sind, um bei " +"jedem »open()«-Aufruf, der möglicherweise einen TTY-Geräteknoten erlangen " +"könnte, stets »O_NOCTTY« festzulegen\\&.)" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Call B<exit()> in the first child, so that only the second child (the actual " +"daemon process) stays around\\&. This ensures that the daemon process is re-" +"parented to init/PID 1, as all daemons should be\\&." +msgstr "" +"Aufruf von B<exit()> im ersten Kind, so dass nur das zweite Kind (der " +"eigentliche Daemon) verbleibt\\&. Dies stellt sicher, dass der Daemon-" +"Prozess PID 1 als neuen Elternprozess bekommt, wie das bei allen Daemons der " +"Fall sein sollte." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In the daemon process, connect /dev/null to standard input, output, and " +"error\\&." +msgstr "" +"Verbinden von /dev/null im Daemon-Prozess mit der Standardeingabe, -ausgabe " +"und -fehlerausgabe\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In the daemon process, reset the umask to 0, so that the file modes passed " +"to B<open()>, B<mkdir()> and suchlike directly control the access mode of " +"the created files and directories\\&." +msgstr "" +"Zurücksetzen der Umask auf 0 im Daemon-Prozess, so dass die an B<open()>, " +"B<mkdir()> und ähnliche weitergegebenen Dateimodi direkt die Zugriffsmodi " +"auf die erstellten Dateien und Verzeichnisse steuern\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In the daemon process, change the current directory to the root directory " +"(/), in order to avoid that the daemon involuntarily blocks mount points " +"from being unmounted\\&." +msgstr "" +"Ändern des aktuellen Verzeichnisses im Daemon-Prozess auf das " +"Wurzelverzeichnis (/), um zu vermeiden, dass der Daemon unfreiwillig die " +"Einhängepunkte vor dem Aushängen blockiert\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In the daemon process, write the daemon PID (as returned by B<getpid()>) to " +"a PID file, for example /run/foobar\\&.pid (for a hypothetical daemon " +"\"foobar\") to ensure that the daemon cannot be started more than once\\&. " +"This must be implemented in race-free fashion so that the PID file is only " +"updated when it is verified at the same time that the PID previously stored " +"in the PID file no longer exists or belongs to a foreign process\\&." +msgstr "" +"Schreiben der Daemon-PID (wie von B<getpid()> zurückgeliefert) im Daemon-" +"Prozess in eine PID-Datei, beispielsweise /run/foobar\\&.pid (für einen " +"hypothetischen Daemon »foobar«), um sicherzustellen, dass der Daemon nicht " +"mehr als einmal gestartet wird\\&. Dies muss so implementiert werden, dass " +"kein Ressourcenwettlauf möglich ist, so dass die PID-Datei nur aktualisiert " +"wird, wenn gleichzeitig sichergestellt ist, dass die vorher in der PID-Datei " +"gespeicherte PID nicht mehr existiert oder zu einem fremden Prozess " +"gehört\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "In the daemon process, drop privileges, if possible and applicable\\&." +msgstr "" +"Abgeben der Privilegien im Daemon-Prozess, falls möglich und zutreffend\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"From the daemon process, notify the original process started that " +"initialization is complete\\&. This can be implemented via an unnamed pipe " +"or similar communication channel that is created before the first B<fork()> " +"and hence available in both the original and the daemon process\\&." +msgstr "" +"Benachrichtigen des ursprünglich gestarteten Prozesses aus dem Daemon-" +"Prozess, dass die Initialisierung abgeschlossen ist\\&. Dies kann über eine " +"unbenannte Pipe oder einen ähnlichen Kommunikationskanal, der vor dem ersten " +"B<fork()> erstellt wurde und daher in sowohl dem ursprünglichen als auch dem " +"Daemon-Prozess verfügbar ist, erfolgen\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Call B<exit()> in the original process\\&. The process that invoked the " +"daemon must be able to rely on that this B<exit()> happens after " +"initialization is complete and all external communication channels are " +"established and accessible\\&." +msgstr "" +"Aufrufen von B<exit()> im ursprünglichen Prozess\\&. Der Prozess, der den " +"Daemon gestartet hat, muss in der Lage sein, sich darauf zu verlassen, dass " +"dieser B<exit()> passiert, nachdem die Initialisierung abgeschlossen und die " +"externen Kommunikationskanäle etabliert und zugreifbar sind\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The BSD B<daemon()> function should not be used, as it implements only a " +"subset of these steps\\&." +msgstr "" +"Die BSD-Funktion B<daemon()> sollte nicht verwandt werden, da sie nur eine " +"Teilmenge dieser Schritte implementiert\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"A daemon that needs to provide compatibility with SysV systems should " +"implement the scheme pointed out above\\&. However, it is recommended to " +"make this behavior optional and configurable via a command line argument to " +"ease debugging as well as to simplify integration into systems using " +"systemd\\&." +msgstr "" +"Ein Daemon, der Kompatibilität mit SysV-Systemen bereitstellen muss, sollte " +"das oben dargestellte Schema implementieren\\&. Es wird allerdings " +"empfohlen, dieses Verhalten über eine Befehlszeilenoption optional und " +"konfigurierbar zu gestalten, um die Fehlersuche zu erleichtern und um die " +"Integration in Systeme, die Systemd verwenden, zu erleichtern\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "New-Style Daemons" +msgstr "Neuartige Daemons" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Modern services for Linux should be implemented as new-style daemons\\&. " +"This makes it easier to supervise and control them at runtime and simplifies " +"their implementation\\&." +msgstr "" +"Moderne Dienste für Linux sollten als neuartige Daemons implementiert " +"werden\\&. Dies erleichtert die Beaufsichtigung und Steuerung zur Laufzeit " +"und vereinfacht ihre Implementierung\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"For developing a new-style daemon, none of the initialization steps " +"recommended for SysV daemons need to be implemented\\&. New-style init " +"systems such as systemd make all of them redundant\\&. Moreover, since some " +"of these steps interfere with process monitoring, file descriptor passing, " +"and other functionality of the service manager, it is recommended not to " +"execute them when run as new-style service\\&." +msgstr "" +"Zur Entwicklung eines neuartigen Daemons muss keiner der für SysV-Daemons " +"empfohlenen Initialisierungsschritte implementiert werden\\&. Bei neuartigen " +"Init-Systemen wie Systemd sind diese alle redundant\\&. Da einige dieser " +"Schritte sogar die Prozessüberwachung, Dateideskriptorweitergabe und andere " +"Funktionalitäten des Diensteverwalters stören, wird empfohlen, sie nicht " +"auszuführen, wenn sie als neuartiger Dienst ausgeführt laufen\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Note that new-style init systems guarantee execution of daemon processes in " +"a clean process context: it is guaranteed that the environment block is " +"sanitized, that the signal handlers and mask is reset and that no left-over " +"file descriptors are passed\\&. Daemons will be executed in their own " +"session, with standard input connected to /dev/null and standard output/" +"error connected to the B<systemd-journald.service>(8) logging service, " +"unless otherwise configured\\&. The umask is reset\\&." +msgstr "" +"Beachten Sie, dass neuartige Init-Systeme die Ausführung eines Daemon-" +"Prozesses in einem sauberen Prozesskontext garantieren: Es wird garantiert, " +"dass der Umgebungsblock bereinigt ist, dass Signal-Handler und -Masken " +"zurückgesetzt sind und dass kein übrig gebliebener Dateideskriptor " +"weitergegeben wird\\&. Daemons werden in ihrer eigenen Sitzung ausgeführt, " +"wobei die Standardeingabe mit /dev/null und die Standardausgabe/" +"Standardfehlerausgabe mit dem Protokollierungsdienst B<systemd-journald." +"service>(8) verbunden ist, außer dies ist anders konfiguriert\\&. Die Umask " +"ist zurückgesetzt\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "It is recommended for new-style daemons to implement the following:" +msgstr "Es wird empfohlen, dass neuartige Daemons folgendes implementieren:" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"If applicable, the daemon should notify the service manager about startup " +"completion or status updates via the B<sd_notify>(3) interface, in " +"particular I<READY=1> and I<STATUS=\\&...>\\&." +msgstr "" +"Falls zutreffend sollte der Daemon über den Abschluss des Startens oder " +"Statusaktualisierungen den Diensteverwalter mittels der Schnittstelle " +"B<sd_notify>(3), insbesondere I<READY=1> und I<STATUS=…>, informieren\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"If B<SIGTERM> is received, shut down the daemon and exit cleanly\\&. A " +"I<STOPPING=1> notification should be sent via B<sd_notify>(3)\\&." +msgstr "" +"Falls B<SIGTERM> empfangen wird, soll der Daemon sich herunterfahren und " +"sauber beenden\\&. Es sollte mittels B<sd_notify>(3) eine Stopp-" +"Benachrichtigung gesandt werden\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"If B<SIGHUP> is received, reload the configuration files, if this " +"applies\\&. This should be combined with notifications via B<sd_notify>(3): " +"I<RELOADING=1> and I<READY=1>\\&." +msgstr "" +"Falls B<SIGHUP> empfangen wird, sollen die Konfigurationsdateien, falls " +"zutreffend, neu geladen werden\\&. Dies sollte mit Benachrichtigungen " +"mittels B<sd_notify>(3) kombiniert werden: I<RELOADING=1> und I<READY=1>\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"Provide a correct exit code from the main daemon process, as this is used by " +"the service manager to detect service errors and problems\\&. It is " +"recommended to follow the exit code scheme as defined in the \\m[blue]B<LSB " +"recommendations for SysV init scripts>\\m[]\\&\\s-2\\u[1]\\d\\s+2\\&." +msgstr "" +"Es soll ein korrekter Exit-Code vom Haupt-Daemon-Prozess bereitgestellt " +"werden, da dieser vom Diensteverwalter benutzt wird, um Dienstefehler und " +"Probleme zu erkennen\\&. Es wird empfohlen, dem in \\m[blue]B<LSB-" +"Empfehlungen für SysV-Init-Skripte>\\m[]\\&\\s-2\\u[1]\\d\\s+2 definierten " +"Exit-Code-System zu folgen\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If possible and applicable, expose the daemon\\*(Aqs control interface via " +"the D-Bus IPC system and grab a bus name as last step of initialization\\&." +msgstr "" +"Falls möglich und zutreffend sollte die Steuerschnittstelle mittels des D-" +"Bus-IPC-Systems zugänglich gemacht und ein Bus-Name als letzten Schritt in " +"der Initialisierung erlangt werden\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"For integration in systemd, provide a \\&.service unit file that carries " +"information about starting, stopping and otherwise maintaining the " +"daemon\\&. See B<systemd.service>(5) for details\\&." +msgstr "" +"Stellen Sie eine \\&.service-Unit-Datei zur Integration mit Systemd bereit, " +"die Informationen zum Starten, Beenden und anderseitigen Verwalten des " +"Daemons enthält\\&. Siehe B<systemd.service>(5) für Details\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"As much as possible, rely on the service manager\\*(Aqs functionality to " +"limit the access of the daemon to files, services, and other resources, i\\&." +"e\\&. in the case of systemd, rely on systemd\\*(Aqs resource limit control " +"instead of implementing your own, rely on systemd\\*(Aqs privilege dropping " +"code instead of implementing it in the daemon, and so on\\&. See B<systemd." +"exec>(5) for the available controls\\&." +msgstr "" +"Verlassen Sie sich soweit möglich auf die Funktionalitäten des " +"Diensteverwalters, den Zugriff des Daemons auf Dateien, Dienste und andere " +"Ressourcen zu begrenzen, d\\&.h\\&. im Falle von Systemd, verlassen Sie sich " +"auf Systemds Ressourenbegrenzungssteuerung statt Ihre eigene zu " +"implementieren, verlassen Sie sich auf den Privilegienabgabe-Code von " +"Systemd, statt ihn in Ihrem Daemon zu implementieren und so weiter\\&. Siehe " +"B<systemd.exec>(5) für die verfügbaren Steuerungen\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If D-Bus is used, make your daemon bus-activatable by supplying a D-Bus " +"service activation configuration file\\&. This has multiple advantages: your " +"daemon may be started lazily on-demand; it may be started in parallel to " +"other daemons requiring it \\(em which maximizes parallelization and boot-up " +"speed; your daemon can be restarted on failure without losing any bus " +"requests, as the bus queues requests for activatable services\\&. See below " +"for details\\&." +msgstr "" +"Falls D-Bus verwandt wird, ermöglichen Sie die Bus-Aktivierung Ihres " +"Daemons, indem Sie eine D-Bus-Dienste-Aktivierungsdatei bereitstellen\\&. " +"Dies hat eine Reihe von Vorteilen: Ihr Daemon kann erst bei Bedarf gestartet " +"werden; er kann parallel zu anderen Daemons, die ihn benötigen, gestartet " +"werden \\(em wodurch die Parallelisierung und die Systemstartgeschwindigkeit " +"maximiert wird; Ihr Daemon kann im Fehlerfall neu gestartet werden, ohne " +"eine Bus-Anfrage zu verlieren, da die Bus-Warteschlagen aktivierbare Dienste " +"erbitten\\&. Siehe unten für Details\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If your daemon provides services to other local processes or remote clients " +"via a socket, it should be made socket-activatable following the scheme " +"pointed out below\\&. Like D-Bus activation, this enables on-demand starting " +"of services as well as it allows improved parallelization of service start-" +"up\\&. Also, for state-less protocols (such as syslog, DNS), a daemon " +"implementing socket-based activation can be restarted without losing a " +"single request\\&. See below for details\\&." +msgstr "" +"Falls Ihr Daemon Dienste für andere lokale Prozesse oder Clients in der " +"Ferne über ein Socket anbietet, sollte es gemäß des nachfolgend " +"dargestellten Schemas Socket-aktivierbar sein\\&. Ähnlich der D-Bus-" +"Aktivierung ermöglicht dies bedarfsgesteuertes Starten von Diensten sowie " +"verbesserte Parallelisierung beim Starten der Dienste\\&. Für zustandslose " +"Protokolle (wie Syslog, DNS) kann ein Daemon, der Socket-basierte " +"Aktivierung implementiert, auch ohne Verlust einer einzelnen Anfrage neu " +"gestartet werden\\&. Siehe unten für Details\\&." + +# FIXME Only one fullstop at the end of the sentence needed. +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"If the service opens sockets or other files on it own, and those file " +"descriptors shall survive a restart, the daemon should store them in the " +"service manager via B<sd_notify>(3) with I<FDSTORE=1>\\&.\\&." +msgstr "" +"Falls der Dienst Sockets oder andere Dateien selbst öffnet und diese " +"Dateideskriptoren einen Neustart überleben sollen, sollte der Daeomen sie im " +"Diensteverwalter mittels B<sd_notify>(3) mit I<FDSTORE=1> speichern\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"Instead of using the B<syslog()> call to log directly to the system syslog " +"service, a new-style daemon may choose to simply log to standard error via " +"B<fprintf()>, which is then forwarded to syslog\\&. If log levels are " +"necessary, these can be encoded by prefixing individual log lines with " +"strings like \"E<lt>4E<gt>\" (for log level 4 \"WARNING\" in the syslog " +"priority scheme), following a similar style as the Linux kernel\\*(Aqs " +"B<printk()> level system\\&. For details, see B<sd-daemon>(3) and B<systemd." +"exec>(5)\\&." +msgstr "" +"Statt den Aufruf B<syslog()> zum direkten Protokollieren in den " +"Systemprotokolldienst zu verwenden, kann ein neuartiger Daemon einfach auf " +"die Standardfehlerausgabe mittels B<fprintf()> protokollieren, was dann an " +"Syslog weitergeleitet wird\\&. Falls Protokollierungsstufen notwendig sind, " +"können diese durch Voranstellen von Zeichenketten wie »E<lt>4E<gt>« (für " +"Protokollierungsstufe 4 »WARNING« im Syslog-Prioritätsschema) vor " +"individuellen Protokollierzeilen kodiert werden. Dies folgt einem ähnlichen " +"Stil wie das B<printk()>-Stufensystem des Linux-Kernels\\&. Für Details " +"siehe B<sd-daemon>(3) und B<systemd.exec>(5)\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"As new-style daemons are invoked without a controlling TTY (but as their own " +"session leaders) care should be taken to always specify B<O_NOCTTY> on " +"B<open>(2) calls that possibly reference a TTY device node, so that no " +"controlling TTY is accidentally acquired\\&." +msgstr "" +"Da neuartige Daemons ohne ein steuerndes TTY (aber sie selbst als ihren " +"eigenen Sitzungsleiter) aufgerufen werden, sollte sichergestellt werden, " +"dass bei B<open>(2)-Aufrufen, die möglicherweise einen TTY-Geräteknoten " +"referenzieren, stets B<O_NOCTTY> festgelegt wird, so dass nicht " +"versehentlich ein steuerndes TTY erlangt wird\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"These recommendations are similar but not identical to the \\m[blue]B<Apple " +"MacOS X Daemon Requirements>\\m[]\\&\\s-2\\u[2]\\d\\s+2\\&." +msgstr "" +"Diese Empfehlungen sind ähnlich zu, aber nicht identisch mit den " +"\\m[blue]B<Apple-MacOS-X-Daemon-Anforderungen>\\m[]\\&\\s-2\\u[2]\\d\\s+2\\&." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "ACTIVATION" +msgstr "AKTIVIERUNG" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"New-style init systems provide multiple additional mechanisms to activate " +"services, as detailed below\\&. It is common that services are configured to " +"be activated via more than one mechanism at the same time\\&. An example for " +"systemd: bluetoothd\\&.service might get activated either when Bluetooth " +"hardware is plugged in, or when an application accesses its programming " +"interfaces via D-Bus\\&. Or, a print server daemon might get activated when " +"traffic arrives at an IPP port, or when a printer is plugged in, or when a " +"file is queued in the printer spool directory\\&. Even for services that are " +"intended to be started on system bootup unconditionally, it is a good idea " +"to implement some of the various activation schemes outlined below, in order " +"to maximize parallelization\\&. If a daemon implements a D-Bus service or " +"listening socket, implementing the full bus and socket activation scheme " +"allows starting of the daemon with its clients in parallel (which speeds up " +"boot-up), since all its communication channels are established already, and " +"no request is lost because client requests will be queued by the bus system " +"(in case of D-Bus) or the kernel (in case of sockets) until the activation " +"is completed\\&." +msgstr "" +"Neuartige Init-Systeme stellen eine Reihe von zusätzlichen Mechanismen " +"bereit, um Dienste zu aktivieren\\&. Details dazu weiter unten\\&. Es ist " +"typisch, dass Dienste konfiguriert wurden, über mehr als einen Mechanismus " +"gleichzeitig aktiviert zu werden\\&. Beispielsweise könnte in einem Systemd-" +"System bluetoothd\\&.service aktiviert werden, wenn eine Bluetooth-Hardware " +"eingesteckt wird oder wenn eine Anwendung mittels D-Bus auf seine " +"Programmierschnittstelle zugreift\\&. Oder ein Drucker-Server-Daemon könnte " +"aktiviert werden, wenn Daten auf einem IPP-Port ankommen oder wenn ein " +"Drucker eingesteckt wird oder wenn eine Datei im Drucker-Spool-Verzeichnis " +"in die Warteschlange kommt\\&. Selbst für Dienste, die dazu gedacht sind, " +"beim Systemstart bedingungslos zu starten, ist es eine gute Idee, einige der " +"unten dargestellten verschiedenen Aktivierungsschemata zu implementieren, um " +"die Parallelisierung zu maximieren\\&. Falls ein Daemon einen D-Bus-Dienst " +"implementiert oder an einem Socket auf Anfragen wartet, erlaubt die " +"Implementierung des kompletten Bus- und Socket-Aktivierungsschematas das " +"Starten des Daemons mit seinen Clients parallel durchzuführen (womit der " +"Systemstart beschleunigt wird), da bereits alle Kommunikationskanäle " +"etabliert sind und keine Anfrage verloren geht, da Client-Anfragen vom Bus-" +"System in Warteschlangen gestellt werden (im Falle von D-Bus) oder durch den " +"Kernel (im Falle von Sockets), bis die Aktivierung abgeschlossen ist\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Activation on Boot" +msgstr "Aktivierung beim Systemstart" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"Old-style daemons are usually activated exclusively on boot (and manually by " +"the administrator) via SysV init scripts, as detailed in the \\m[blue]B<LSB " +"Linux Standard Base Core Specification>\\m[]\\&\\s-2\\u[1]\\d\\s+2\\&. This " +"method of activation is supported ubiquitously on Linux init systems, both " +"old-style and new-style systems\\&. Among other issues, SysV init scripts " +"have the disadvantage of involving shell scripts in the boot process\\&. New-" +"style init systems generally use updated versions of activation, both during " +"boot-up and during runtime and using more minimal service description " +"files\\&." +msgstr "" +"Daemons der alten Art werden typischerweise exklusiv beim Systemstart (oder " +"manuell durch den Systemadministrator) mittels SysV-Init-Skripten aktiviert, " +"wie dies in der \\m[blue]B<LSB Linux Standard Base Kern-" +"Spezifikation>\\m[]\\&\\s-2\\u[1]\\d\\s+2 dargestellt ist\\&. Diese Methode " +"wird universell auf Linux-Init-Systemen unterstützt, sowohl bei denen der " +"alten Art als auch bei neuartigen\\&. Unter anderen Problemen haben die SysV-" +"Init-Skripte den Nachteil, Shell-Skripte im Systemstartprozess zu " +"involvieren\\&. Neuartige Init-Systeme verwenden im Allgemeinen " +"aktualisierte Versionen der Aktivierung, sowohl während des Systemstarts als " +"auch während der Laufzeit und verwenden minimalere " +"Dienstebeschreibungsdateien\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In systemd, if the developer or administrator wants to make sure that a " +"service or other unit is activated automatically on boot, it is recommended " +"to place a symlink to the unit file in the \\&.wants/ directory of either " +"multi-user\\&.target or graphical\\&.target, which are normally used as boot " +"targets at system startup\\&. See B<systemd.unit>(5) for details about the " +"\\&.wants/ directories, and B<systemd.special>(7) for details about the two " +"boot targets\\&." +msgstr "" +"Falls der Entwickler oder Administrator in Systemd sicherstellen möchte, " +"dass ein Dienst oder eine andere Unit automatisch beim Systemstart aktiviert " +"ist, wird empfohlen, einen Symlink auf die Unit-Datei im Verzeichnis \\&." +"wants/ von entweder multi-user\\&.target oder graphical\\&.target, die " +"normalerweise als Systemstartziele beim Systemstart verwandt werden, zu " +"legen\\&. Siehe B<systemd.unit>(5) für Details über die Verzeichnisse \\&." +"wants/ und B<systemd.special>(7) für Details über die zwei " +"Systemstartziele\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Socket-Based Activation" +msgstr "Socket-basierte Aktivierung" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"In order to maximize the possible parallelization and robustness and " +"simplify configuration and development, it is recommended for all new-style " +"daemons that communicate via listening sockets to use socket-based " +"activation\\&. In a socket-based activation scheme, the creation and binding " +"of the listening socket as primary communication channel of daemons to local " +"(and sometimes remote) clients is moved out of the daemon code and into the " +"service manager\\&. Based on per-daemon configuration, the service manager " +"installs the sockets and then hands them off to the spawned process as soon " +"as the respective daemon is to be started\\&. Optionally, activation of the " +"service can be delayed until the first inbound traffic arrives at the socket " +"to implement on-demand activation of daemons\\&. However, the primary " +"advantage of this scheme is that all providers and all consumers of the " +"sockets can be started in parallel as soon as all sockets are " +"established\\&. In addition to that, daemons can be restarted with losing " +"only a minimal number of client transactions, or even any client request at " +"all (the latter is particularly true for state-less protocols, such as DNS " +"or syslog), because the socket stays bound and accessible during the " +"restart, and all requests are queued while the daemon cannot process them\\&." +msgstr "" +"Um die Parallelisierung und Robustheit zu maximieren und die Konfiguration " +"und Entwicklung zu vereinfachen, wird für alle neuartigen Daemons empfohlen, " +"die über Warten an Sockets kommunizieren, eine Socket-basierte Aktivierung " +"zu verwenden\\&. In einem Socket-basierten Aktivierungsschema wird die " +"Erstellung und das Binden des Sockets, an dem gewartet werden soll, als " +"primären Kommunikationskanal von Daemons mit lokalen (und manchmal fernen) " +"Clients aus dem Daemon-Code in den Diensteverwalter verschoben\\&. Basierend " +"auf einer Daemon-basierten Konfiguration installiert der Diensteverwalter " +"die Sockets und gibt sie an die erstellten Prozesse, sobald der respektive " +"Daemon gestartet wird\\&. Optional kann die Aktivierung des Dienstes " +"verzögert werden, bis der erste eingehende Verkehr auf dem Socket eintrifft, " +"um eine bedarfsgesteuerte Aktivierung von Daemons zu realisieren\\&. " +"Allerdings ist der Hauptvorteil dieses Schemas, dass alle Anbieter und " +"Konsumenten des Sockets parallel gestartet werden können, sobald alle " +"Sockets etabliert sind\\&. Zusätzlich können Daemons neugestartet werden und " +"dabei nur eine minimale Anzahl an Client-Transaktionen verlieren oder sogar " +"überhaupt keine Client-Anfrage (Letzteres stimmt insbesondere für " +"zustandslose Protokolle wie DNS oder Syslog), da das Socket während des " +"Neustarts angebunden und zugreifbar verbleibt und alle Anfragen in einer " +"Warteschlange verbleiben, während der Daemon sie nicht verarbeiten kann\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"New-style daemons which support socket activation must be able to receive " +"their sockets from the service manager instead of creating and binding them " +"themselves\\&. For details about the programming interfaces for this scheme " +"provided by systemd, see B<sd_listen_fds>(3) and B<sd-daemon>(3)\\&. For " +"details about porting existing daemons to socket-based activation, see " +"below\\&. With minimal effort, it is possible to implement socket-based " +"activation in addition to traditional internal socket creation in the same " +"codebase in order to support both new-style and old-style init systems from " +"the same daemon binary\\&." +msgstr "" +"Neuartige Daemons, die Socket-Aktivierung unterstützen, müssen in der Lage " +"sein, Sockets vom Diensteverwalter zu erhalten, statt sie selbst zu " +"erstellen und sich daran zu binden\\&. Für Details über die " +"Programmierschnittstellen für dieses von Systemd bereitgestellte Schema, " +"siehe B<sd_listen_fds>(3) und B<sd-daemon>(3)\\&. Für Details über die " +"Portierung bestehender Daemons zu Socket-basierter Aktivierung, siehe " +"unten\\&. Mit minimalem Einsatz ist es möglich, Socket-basierte Aktivierung " +"zusätzlich zu traditioneller interner Socket-Erstellung in der gleichen " +"Codebasis zu erstellen, um sowohl neuartige als auch Init-Systeme der alten " +"Art im gleichen Daemon-Programm zu unterstützen\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"systemd implements socket-based activation via \\&.socket units, which are " +"described in B<systemd.socket>(5)\\&. When configuring socket units for " +"socket-based activation, it is essential that all listening sockets are " +"pulled in by the special target unit sockets\\&.target\\&. It is recommended " +"to place a I<WantedBy=sockets\\&.target> directive in the [Install] section " +"to automatically add such a dependency on installation of a socket unit\\&. " +"Unless I<DefaultDependencies=no> is set, the necessary ordering dependencies " +"are implicitly created for all socket units\\&. For more information about " +"sockets\\&.target, see B<systemd.special>(7)\\&. It is not necessary or " +"recommended to place any additional dependencies on socket units (for " +"example from multi-user\\&.target or suchlike) when one is installed in " +"sockets\\&.target\\&." +msgstr "" +"Systemd implementiert Socket-basierte Aktivierung mittels \\&.socket-Units, " +"die in B<systemd.socket>(5) beschrieben sind\\&. Wenn Socket-Units für " +"Socket-basierte Aktivierung konfiguriert werden, ist es wesentlich, dass " +"alle Sockets, bei denen auf Anfragen gewartet wird, durch eine spezielle " +"Ziel-Unit sockets\\&.target hereingezogen werden\\&. Es wird empfohlen, eine " +"Anweisung I<WantedBy=sockets\\&.target> in den Abschnitt »[Install]« zu " +"setzen, um eine solche Abhängigkeit automatisch bei der Installation einer " +"Socket-Unit hinzuzufügen\\&. Die notwendigen Ordnungs-Abhängigkeiten werden " +"für alle Socket-Units implizit erstellt, falls I<DefaultDependencies=no> " +"nicht gesetzt ist\\&. Für weitere Informationen über sockets\\&.target, " +"siehe B<systemd.special>(7)\\&. Es ist nicht notwendig oder empfohlen, " +"zusätzliche Abhängigkeiten auf Socket-Units abzulegen (zum Beispiel von " +"multi-user\\&.target oder ähnlichem), wenn eine in sockets\\&.target " +"installiert ist\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Bus-Based Activation" +msgstr "Bus-basierte Aktivierung" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"When the D-Bus IPC system is used for communication with clients, new-style " +"daemons should use bus activation so that they are automatically activated " +"when a client application accesses their IPC interfaces\\&. This is " +"configured in D-Bus service files (not to be confused with systemd service " +"unit files!)\\&. To ensure that D-Bus uses systemd to start-up and maintain " +"the daemon, use the I<SystemdService=> directive in these service files to " +"configure the matching systemd service for a D-Bus service\\&. e\\&.g\\&.: " +"For a D-Bus service whose D-Bus activation file is named org\\&." +"freedesktop\\&.RealtimeKit\\&.service, make sure to set " +"I<SystemdService=rtkit-daemon\\&.service> in that file to bind it to the " +"systemd service rtkit-daemon\\&.service\\&. This is needed to make sure that " +"the daemon is started in a race-free fashion when activated via multiple " +"mechanisms simultaneously\\&." +msgstr "" +"Wenn das D-Bus-IPC-System für die Kommunikation mit Clients verwandt wird, " +"sollten neuartige Daemons Bus-Aktivierung verwenden, so dass sie automatisch " +"aktiviert werden, wenn eine Client-Anwendung auf ihre IPC-Schnittstelle " +"zugreift\\&. Dies wird in D-Bus-Dienste-Dateien (die nicht mit Systemds " +"Dienste-Unit-Dateien durcheinandergebracht werden dürfen) konfiguriert\\&. " +"Um sicherzustellen, dass D-Bus Systemd verwendet, um den Daemon zu starten " +"und zu verwalten, verwenden Sie die Anweisung I<SystemdService=> in diesen " +"Dienste-Dateien, um den passenden Systemd-Dienst für einen D-Bus-Dienst zu " +"konfigurieren. Stellen Sie beispielsweise für einen D-Bus-Dienst, dessen D-" +"Bus-Aktivierungsdatei org\\&.freedesktop\\&.RealtimeKit\\&.service heißt, " +"sicher, dass I<SystemdService=rtkit-daemon\\&.service> in dieser Datei " +"gesetzt ist, um ihn an den Systemd-Dienst rtkit-daemon\\&.service zu binden. " +"Dies wird benötigt, um sicherzustellen, dass der Daemon ohne " +"Ressourcenwettläufe gestartet wird, wenn er über mehrere Mechanismen " +"simultan aktiviert wird\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Device-Based Activation" +msgstr "Geräte-basierte Aktivierung" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Often, daemons that manage a particular type of hardware should be activated " +"only when the hardware of the respective kind is plugged in or otherwise " +"becomes available\\&. In a new-style init system, it is possible to bind " +"activation to hardware plug/unplug events\\&. In systemd, kernel devices " +"appearing in the sysfs/udev device tree can be exposed as units if they are " +"tagged with the string \"systemd\"\\&. Like any other kind of unit, they may " +"then pull in other units when activated (i\\&.e\\&. plugged in) and thus " +"implement device-based activation\\&. systemd dependencies may be encoded in " +"the udev database via the I<SYSTEMD_WANTS=> property\\&. See B<systemd." +"device>(5) for details\\&. Often, it is nicer to pull in services from " +"devices only indirectly via dedicated targets\\&. Example: Instead of " +"pulling in bluetoothd\\&.service from all the various bluetooth dongles and " +"other hardware available, pull in bluetooth\\&.target from them and " +"bluetoothd\\&.service from that target\\&. This provides for nicer " +"abstraction and gives administrators the option to enable bluetoothd\\&." +"service via controlling a bluetooth\\&.target\\&.wants/ symlink uniformly " +"with a command like B<enable> of B<systemctl>(1) instead of manipulating " +"the udev ruleset\\&." +msgstr "" +"Oft sollen Daemons, die einen besonderen Hardwaretyp verwalten, nur " +"aktiviert werden, wenn die Hardware der entsprechenden Art eingesteckt oder " +"andernfalls verfügbar gemacht wird\\&. In einem neuartigen Init-System ist " +"es möglich, die Aktivierung an Hardware-Einsteck-/Aussteck-Ereignisse zu " +"binden\\&. In Systemd können Kernel-Geräte, die in dem Gerätebaum sysfs/udev " +"auftauchen, als Units offengelegt werden, falls sie mit der Zeichenkette " +"»systemd« markiert sind\\&. Wie andere Arten von Units können sie dann " +"andere Units bei der Aktivierung (z\\&.B\\&. beim Einstecken) hereinziehen, " +"und daher Geräte-basierte Aktivierung implementieren\\&. Systemd-" +"Abhängigkeiten können in der Udev-Datenbank mittels der Eigenschaft " +"I<SYSTEMD_WANTS=> kodiert werden\\&. Siehe B<systemd.device>(5) für " +"Details\\&. Oft ist es schöner, einen Dienst von Geräten nur indirekt über " +"dedizierte Ziele hereinzuziehen\\&. Beispiel: Statt bluetoothd\\&.service " +"von alle den verschiedenen Bluetooth-Dongles und anderen verfügbaren " +"Hardwaren hereinzuziehen, ziehen Sie von ihnen bluetooth\\&.target herein " +"und dann bluetoothd\\&.service von diesem Ziel\\&. Dies stellt eine nettere " +"Abstraktion bereit und ermöglicht Administratoren die Option, bluetoothd\\&." +"service über einen Symlink bluetooth\\&.target\\&.wants/ uniform mit einem " +"Befehl der Art B<enable> von B<systemctl>(1) zu steuern, statt den Udev-" +"Regelsatz zu bearbeiten\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Path-Based Activation" +msgstr "Pfadbasierte Aktivierung" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Often, runtime of daemons processing spool files or directories (such as a " +"printing system) can be delayed until these file system objects change " +"state, or become non-empty\\&. New-style init systems provide a way to bind " +"service activation to file system changes\\&. systemd implements this scheme " +"via path-based activation configured in \\&.path units, as outlined in " +"B<systemd.path>(5)\\&." +msgstr "" +"Oft können Laufzeit-Daemons, die Spool-Dateien oder -Verzeichnisse (wie bei " +"einem Drucksystem) verarbeiten, verzögert werden, bis diese " +"Dateisystemobjekte den Zustand ändern oder nicht mehr leer sind\\&. " +"Neuartige Init-Systeme stellen einen Weg bereit, die Diensteaktivierung an " +"Dateisystemänderungen zu binden\\&. Systemd implementiert dieses Schema " +"mittels in \\&.path-Units konfigurierter pfadbasierter Aktivierung, wie in " +"B<systemd.path>(5) skizziert\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Timer-Based Activation" +msgstr "Timer-basierte Aktivierung" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Some daemons that implement clean-up jobs that are intended to be executed " +"in regular intervals benefit from timer-based activation\\&. In systemd, " +"this is implemented via \\&.timer units, as described in B<systemd." +"timer>(5)\\&." +msgstr "" +"Einige Daemons, die Aufräumaufgaben erledigen, die regelmäßig ausgeführt " +"werden sollen, ziehen aus Timer-basierter Aktivierung einen Nutzen\\&. In " +"Systemd ist dies mittels \\&.timer-Units implementiert, wie in B<systemd." +"timer>(5) beschrieben\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Other Forms of Activation" +msgstr "Andere Formen der Aktivierung" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"Other forms of activation have been suggested and implemented in some " +"systems\\&. However, there are often simpler or better alternatives, or they " +"can be put together of combinations of the schemes above\\&. Example: " +"Sometimes, it appears useful to start daemons or \\&.socket units when a " +"specific IP address is configured on a network interface, because network " +"sockets shall be bound to the address\\&. However, an alternative to " +"implement this is by utilizing the Linux B<IP_FREEBIND>/B<IPV6_FREEBIND> " +"socket option, as accessible via I<FreeBind=yes> in systemd socket files " +"(see B<systemd.socket>(5) for details)\\&. This option, when enabled, " +"allows sockets to be bound to a non-local, not configured IP address, and " +"hence allows bindings to a particular IP address before it actually becomes " +"available, making such an explicit dependency to the configured address " +"redundant\\&. Another often suggested trigger for service activation is low " +"system load\\&. However, here too, a more convincing approach might be to " +"make proper use of features of the operating system, in particular, the CPU " +"or I/O scheduler of Linux\\&. Instead of scheduling jobs from userspace " +"based on monitoring the OS scheduler, it is advisable to leave the " +"scheduling of processes to the OS scheduler itself\\&. systemd provides fine-" +"grained access to the CPU and I/O schedulers\\&. If a process executed by " +"the service manager shall not negatively impact the amount of CPU or I/O " +"bandwidth available to other processes, it should be configured with " +"I<CPUSchedulingPolicy=idle> and/or I<IOSchedulingClass=idle>\\&. Optionally, " +"this may be combined with timer-based activation to schedule background jobs " +"during runtime and with minimal impact on the system, and remove it from the " +"boot phase itself\\&." +msgstr "" +"Es wurden andere Formen der Aktivierung vorgeschlagen und in einigen " +"Systemen implementiert\\&. Allerdings gibt es oft einfachere und bessere " +"Alternativen oder sie können als Kombination der obigen Schemata " +"zusammengestellt werden\\&. Beispiel: Manchmal erscheint es nützlich, " +"Daemons oder \\&.socket-Units zu starten, wenn eine bestimmte IP-Adresse an " +"einer Netzwerkschnittstelle konfiguriert ist, da Netzwerk-Sockets an diese " +"Adresse gebunden werden sollen\\&. Eine Alternative zur Implementierung " +"hiervon ist die Verwendung der Socket-Option B<IP_FREEBIND>/B<IPV6_FREEBIND> " +"von Linux, die mittels I<FreeBind=yes> in Systemd-Socket-Dateien erreichbar " +"ist (siehe B<systemd.socket>(5) für Details)\\&. Diese Option erlaubt " +"Sockets, wenn sie aktiviert ist, an nichtlokale, nichtkonfigurierte IP-" +"Adressen gebunden zu werden und erlaubt damit Anbindungen an bestimmte IP-" +"Adressen, bevor diese tatsächlich verfügbar werden; dies macht eine solche " +"explizite Abhängigkeit auf die konfigurierte Adresse redundant\\&. Ein " +"anderer oft vorgeschlagener Auslöser für Dienste-Aktivierung ist niedrige " +"Systemlast\\&. Auch hier könnte allerdings ein überzeugender Ansatz sein, " +"die Funktionalitäten des Betriebssystems korrekt zu benutzen, insbesondere " +"des CPU- oder E/A-Schedulers von Linux\\&. Anstatt Aufträge vom " +"Anwenderbereich, basierend auf der Überwachung des Betriebssystem-" +"Schedulers, einzuplanen, ist es empfehlenswert, die Einplanung von Prozessen " +"dem Betriebssystem-Scheduler selbst zu überlassen\\&. Systemd stellt einen " +"feingranularen Zugriff auf die CPU- und E/A-Scheduler bereit\\&. Falls ein " +"vom Diensteverwalter ausgeführter Prozess den Umfang der für andere Prozesse " +"verfügbaren CPU- oder E/A-Bandbreite nicht negativ beeinflussen soll, sollte " +"er mit I<CPUSchedulingPolicy=idle> und/oder I<IOSchedulingClass=idle> " +"konfiguriert werden\\&. Optional kann dies mit Timer-basierter Aktivierung " +"kombiniert werden, um Hintergrund-Aufträge während der Laufzeit und mit " +"minimalen Auswirkungen auf das System einzuplanen und ihn aus der " +"Systemstartphase selbst zu entfernen\\&." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "INTEGRATION WITH SYSTEMD" +msgstr "INTEGRATION MIT SYSTEMD" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Writing systemd Unit Files" +msgstr "Schreiben von Systemd-Unit-Dateien" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"When writing systemd unit files, it is recommended to consider the following " +"suggestions:" +msgstr "" +"Beim Schreiben von Systemd-Unit-Dateien wird empfohlen, die folgenden " +"Vorschläge zu berücksichtigen:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If possible, do not use the I<Type=forking> setting in service files\\&. But " +"if you do, make sure to set the PID file path using I<PIDFile=>\\&. See " +"B<systemd.service>(5) for details\\&." +msgstr "" +"Falls möglich, nutzen Sie die Einstellung I<Type=forking> in Dienstedateien " +"nicht\\&. Falls Sie es aber machen, stellen Sie sicher, den PID-Dateipfad " +"mit I<PIDFile=> zu setzen\\&. Siehe B<systemd.service>(5) für Details\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If your daemon registers a D-Bus name on the bus, make sure to use " +"I<Type=dbus> in the service file if possible\\&." +msgstr "" +"Falls Ihr Daemon einen D-Bus-Namen auf dem Bus registriert, stellen Sie " +"sicher, falls möglich I<Type=dbus> in der Dienstedatei zu verwenden\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Make sure to set a good human-readable description string with " +"I<Description=>\\&." +msgstr "Setzen Sie eine gut lesbare Beschreibung in I<Description=>\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Do not disable I<DefaultDependencies=>, unless you really know what you do " +"and your unit is involved in early boot or late system shutdown\\&." +msgstr "" +"Deaktivieren Sie I<DefaultDependencies=> nicht, außer Sie wissen genau, was " +"Sie tun und Ihre Unit ist in der frühen Systemstartphase oder im späten " +"Herunterfahren beteiligt\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Normally, little if any dependencies should need to be defined " +"explicitly\\&. However, if you do configure explicit dependencies, only " +"refer to unit names listed on B<systemd.special>(7) or names introduced by " +"your own package to keep the unit file operating system-independent\\&." +msgstr "" +"Normalerweise werden wenige, falls überhaupt, Abhängigkeiten explizit " +"definiert werden müssen\\&. Falls Sie allerdings explizite Abhängigkeiten " +"definieren, beziehen Sie sich nur auf Units, die in B<systemd.special>(7) " +"aufgeführt sind oder auf Namen, die von Ihrem eigenen Paket bekanntgegeben " +"sind, um Ihre Unit-Datei Betriebssystem-unabhängig zu halten\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Make sure to include an [Install] section including installation information " +"for the unit file\\&. See B<systemd.unit>(5) for details\\&. To activate " +"your service on boot, make sure to add a I<WantedBy=multi-user\\&.target> or " +"I<WantedBy=graphical\\&.target> directive\\&. To activate your socket on " +"boot, make sure to add I<WantedBy=sockets\\&.target>\\&. Usually, you also " +"want to make sure that when your service is installed, your socket is " +"installed too, hence add I<Also=foo\\&.socket> in your service file foo\\&." +"service, for a hypothetical program foo\\&." +msgstr "" +"Nehmen Sie einen Abschnitt »[Install]« auf, der die Installationsinformation " +"für die Unit-Datei enthält\\&. Siehe B<systemd.unit>(5) für Details\\&. Um " +"Ihren Dienst beim Systemstart zu aktivieren, fügen Sie eine Anweisung " +"I<WantedBy=multi-user\\&.target> oder I<WantedBy=graphical\\&.target> " +"hinzu\\&. Um Ihr Socket beim Systemstart zu aktivieren, fügen Sie " +"I<WantedBy=sockets\\&.target> hinzu\\&. Normalerweise wollen Sie auch " +"sicherstellen, dass bei der Installation Ihres Dienstes auch Ihr Socket " +"installiert wird, daher fügen Sie I<Also=foo\\&.socket> in Ihrer " +"Dienstedatei foo\\&.service für ein hypothetisches Programm foo hinzu\\&." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Installing systemd Service Files" +msgstr "Systemd-Dienstedateien installieren" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"At the build installation time (e\\&.g\\&. B<make install> during package " +"build), packages are recommended to install their systemd unit files in the " +"directory returned by B<pkg-config systemd --variable=systemdsystemunitdir> " +"(for system services) or B<pkg-config systemd --variable=systemduserunitdir> " +"(for user services)\\&. This will make the services available in the system " +"on explicit request but not activate them automatically during boot\\&. " +"Optionally, during package installation (e\\&.g\\&. B<rpm -i> by the " +"administrator), symlinks should be created in the systemd configuration " +"directories via the B<enable> command of the B<systemctl>(1) tool to " +"activate them automatically on boot\\&." +msgstr "" +"Zum Bauinstallationszeitpunkt (d\\&.h\\&. B<make install> während des " +"Paketbaus) wird empfohlen, dass Pakete ihre Systemd-Unit-Dateien im " +"Verzeichnis, das von B<pkg-config systemd --variable=systemdsystemunitdir> " +"(für Systemdienste) oder B<pkg-config systemd --variable=systemduserunitdir> " +"(für Benutzerdienste) zurückgeliefert wird, zu installieren\\&. Damit wird " +"der Dienst im System für explizite Anfragen verfügbar gemacht, aber nicht " +"beim Systemstart automatisch aktiviert\\&. Optional sollten während der " +"Paketinstallation (z\\&.B\\&. B<rpm -i> durch den Administrator) Symlinks in " +"den Systemd-Konfigurationsverzeichnissen mit dem Befehl B<enable> des " +"Werkzeuges B<systemctl>(1) erstellt werden, um sie beim Systemstart " +"automatisch zu aktivieren\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Packages using B<autoconf>(1) are recommended to use a configure script " +"excerpt like the following to determine the unit installation path during " +"source configuration:" +msgstr "" +"Für Pakete, die B<autoconf>(1) verwenden, wird empfohlen, einen Configure-" +"Skript-Auszug wie den nachfolgenden zu verwenden, um den Unit-" +"Installationspfad während der Quellkonfiguration zu ermitteln:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"PKG_PROG_PKG_CONFIG()\n" +"AC_ARG_WITH([systemdsystemunitdir],\n" +" [AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files])],,\n" +" [with_systemdsystemunitdir=auto])\n" +"AS_IF([test \"x$with_systemdsystemunitdir\" = \"xyes\" -o \"x$with_systemdsystemunitdir\" = \"xauto\"], [\n" +" def_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)\n" +msgstr "" +"PKG_PROG_PKG_CONFIG()\n" +"AC_ARG_WITH([systemdsystemunitdir],\n" +" [AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files])],,\n" +" [with_systemdsystemunitdir=auto])\n" +"AS_IF([test \"x$with_systemdsystemunitdir\" = \"xyes\" -o \"x$with_systemdsystemunitdir\" = \"xauto\"], [\n" +" def_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +" AS_IF([test \"x$def_systemdsystemunitdir\" = \"x\"],\n" +" [AS_IF([test \"x$with_systemdsystemunitdir\" = \"xyes\"],\n" +" [AC_MSG_ERROR([systemd support requested but pkg-config unable to query systemd package])])\n" +" with_systemdsystemunitdir=no],\n" +" [with_systemdsystemunitdir=\"$def_systemdsystemunitdir\"])])\n" +"AS_IF([test \"x$with_systemdsystemunitdir\" != \"xno\"],\n" +" [AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])])\n" +"AM_CONDITIONAL([HAVE_SYSTEMD], [test \"x$with_systemdsystemunitdir\" != \"xno\"])\n" +msgstr "" +" AS_IF([test \"x$def_systemdsystemunitdir\" = \"x\"],\n" +" [AS_IF([test \"x$with_systemdsystemunitdir\" = \"xyes\"],\n" +" [AC_MSG_ERROR([systemd support requested but pkg-config unable to query systemd package])])\n" +" with_systemdsystemunitdir=no],\n" +" [with_systemdsystemunitdir=\"$def_systemdsystemunitdir\"])])\n" +"AS_IF([test \"x$with_systemdsystemunitdir\" != \"xno\"],\n" +" [AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])])\n" +"AM_CONDITIONAL([HAVE_SYSTEMD], [test \"x$with_systemdsystemunitdir\" != \"xno\"])\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"This snippet allows automatic installation of the unit files on systemd " +"machines, and optionally allows their installation even on machines lacking " +"systemd\\&. (Modification of this snippet for the user unit directory is " +"left as an exercise for the reader\\&.)" +msgstr "" +"Dieser Schnipsel ermöglicht die automatische Installation der Unit-Dateien " +"auf Systemd-Maschinen und erlaubt optional ihre Installation selbst auf " +"Maschinen, denen Systemd fehlt\\&. (Die Anpassung des Schnipsels auf das " +"Benutzer-Unit-Verzeichnis bleibt als Aufgabe für den Leser\\&.)" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Additionally, to ensure that B<make distcheck> continues to work, it is " +"recommended to add the following to the top-level Makefile\\&.am file in " +"B<automake>(1)-based projects:" +msgstr "" +"Damit B<make distcheck> weiterhin funktioniert, wird auf B<automake>(1) " +"basierenden Projekten zusätzlich empfohlen, folgendes zur Datei Makefile\\&." +"am auf oberster Ebene hinzuzufügen:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"AM_DISTCHECK_CONFIGURE_FLAGS = \\e\n" +" --with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)\n" +msgstr "" +"AM_DISTCHECK_CONFIGURE_FLAGS = \\e\n" +" --with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Finally, unit files should be installed in the system with an automake " +"excerpt like the following:" +msgstr "" +"Schließlich sollten Unit-Dateien im System mit einem Automake-Ausschnitt der " +"folgenden Art installiert werden:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"if HAVE_SYSTEMD\n" +"systemdsystemunit_DATA = \\e\n" +" foobar\\&.socket \\e\n" +" foobar\\&.service\n" +"endif\n" +msgstr "" +"if HAVE_SYSTEMD\n" +"systemdsystemunit_DATA = \\e\n" +" foobar\\&.socket \\e\n" +" foobar\\&.service\n" +"endif\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In the B<rpm>(8) \\&.spec file, use snippets like the following to enable/" +"disable the service during installation/deinstallation\\&. This makes use of " +"the RPM macros shipped along systemd\\&. Consult the packaging guidelines of " +"your distribution for details and the equivalent for other package " +"managers\\&." +msgstr "" +"In der \\&.spec-Datei von B<rpm>(8) verwenden Sie Schnipsel der folgenden " +"Art, um Dienste während der Installation/Deinstallation zu aktivieren/zu " +"deaktivieren\\&. Dies verwendet RPM-Makros, die zusammen mit Systemd " +"ausgeliefert werden\\&. Ziehen Sie die Paketierungsrichtlinien Ihrer " +"Distribution für Details und die Äquivalente anderer Paketverwalter hinzu\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "At the top of the file:" +msgstr "Am Anfang der Datei:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"BuildRequires: systemd\n" +"%{?systemd_requires}\n" +msgstr "" +"BuildRequires: systemd\n" +"%{?systemd_requires}\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "And as scriptlets, further down:" +msgstr "Und als Skriptteile, weiter unten:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"%post\n" +"%systemd_post foobar\\&.service foobar\\&.socket\n" +msgstr "" +"%post\n" +"%systemd_post foobar\\&.service foobar\\&.socket\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"%preun\n" +"%systemd_preun foobar\\&.service foobar\\&.socket\n" +msgstr "" +"%preun\n" +"%systemd_preun foobar\\&.service foobar\\&.socket\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"%postun\n" +"%systemd_postun\n" +msgstr "" +"%postun\n" +"%systemd_postun\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If the service shall be restarted during upgrades, replace the \"%postun\" " +"scriptlet above with the following:" +msgstr "" +"Falls der Dienst während der Aktualisierung neu gestartet werden soll, " +"ersetzen Sie den Skriptteil »%postun« mit nachfolgendem:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"%postun\n" +"%systemd_postun_with_restart foobar\\&.service\n" +msgstr "" +"%postun\n" +"%systemd_postun_with_restart foobar\\&.service\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Note that \"%systemd_post\" and \"%systemd_preun\" expect the names of all " +"units that are installed/removed as arguments, separated by spaces\\&. " +"\"%systemd_postun\" expects no arguments\\&. " +"\"%systemd_postun_with_restart\" expects the units to restart as " +"arguments\\&." +msgstr "" +"Beachten Sie, dass »%systemd_post« und »%systemd_preun« die Namen sämtlicher " +"zu installierender/entfernender Units als durch Leerzeichen getrennte " +"Argumente erwarten\\&. »%systemd_postun« erwartet keine Argumente\\&. " +"»%systemd_postun_with_restart« erwartet die neu zu startenden Units als " +"Argumente\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"To facilitate upgrades from a package version that shipped only SysV init " +"scripts to a package version that ships both a SysV init script and a native " +"systemd service file, use a fragment like the following:" +msgstr "" +"Um Aktualisierungen von einer Paketversion, die nur SysV-Init-Skripte " +"auslieferte, zu einer Paketversion, die sowohl SysV-Init-Skripte als auch " +"eine native Systemd-Dienstedatei ausliefert, zu unterstützen, verwenden Sie " +"Fragmente der folgenden Art:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"%triggerun -- foobar E<lt> 0\\&.47\\&.11-1\n" +"if /sbin/chkconfig --level 5 foobar ; then\n" +" /bin/systemctl --no-reload enable foobar\\&.service foobar\\&.socket E<gt>/dev/null 2E<gt>&1 || :\n" +"fi\n" +msgstr "" +"%triggerun -- foobar E<lt> 0\\&.47\\&.11-1\n" +"if /sbin/chkconfig --level 5 foobar ; then\n" +" /bin/systemctl --no-reload enable foobar\\&.service foobar\\&.socket E<gt>/dev/null 2E<gt>&1 || :\n" +"fi\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Where 0\\&.47\\&.11-1 is the first package version that includes the native " +"unit file\\&. This fragment will ensure that the first time the unit file is " +"installed, it will be enabled if and only if the SysV init script is " +"enabled, thus making sure that the enable status is not changed\\&. Note " +"that B<chkconfig> is a command specific to Fedora which can be used to check " +"whether a SysV init script is enabled\\&. Other operating systems will have " +"to use different commands here\\&." +msgstr "" +"Wobei 0\\&.47\\&.11-1 die erste Paketversion ist, die die native Unit-Datei " +"enthält\\&. Dieses Fragment bewirkt, dass bei der erstmaligen Installation " +"der Unit-Datei diese nur aktiviert wird, falls das SysV-Init-Skript " +"aktiviert ist und stellt damit sicher, dass der Aktivierungsstatus sich " +"nicht ändert\\&. Beachten Sie, dass der Befehl B<chkconfig>, der zum " +"Überprüfen des Aktivitätsstandes eines SysV-Init-Skriptes verwandt werden " +"kann, Fedora-spezifisch ist\\&. Hier werden andere Betriebssysteme andere " +"Befehle verwenden müssen\\&." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "PORTING EXISTING DAEMONS" +msgstr "EXISTIERENDE DAEMONS PORTIEREN" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Since new-style init systems such as systemd are compatible with traditional " +"SysV init systems, it is not strictly necessary to port existing daemons to " +"the new style\\&. However, doing so offers additional functionality to the " +"daemons as well as simplifying integration into new-style init systems\\&." +msgstr "" +"Da neuartige Init-Systeme wie Systemd zu traditionellen SysV-Init-Systemen " +"kompatibel sind, ist es strenggenommen nicht notwendig, Daemons auf die neue " +"Art zu portieren\\&. Erfolgt dies, ermöglicht es aber, zusätzliche " +"Funktionalitäten zum Daemon hinzuzufügen, sowie die Integration in das " +"neuartige Init-System zu vereinfachen\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"To port an existing SysV compatible daemon, the following steps are " +"recommended:" +msgstr "" +"Um einen bestehenden, SysV-kompatiblen Daemon zu portieren, werden die " +"folgenden Schritte empfohlen:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If not already implemented, add an optional command line switch to the " +"daemon to disable daemonization\\&. This is useful not only for using the " +"daemon in new-style init systems, but also to ease debugging\\&." +msgstr "" +"Falls noch nicht implementiert, fügen Sie einen zusätzlichen " +"Befehlszeilenschalter zu dem Daemon hinzu, um die Daemonisierung zu " +"deaktivieren\\&. Dies ist nicht nur für den Einsatz in neuartigen Init-" +"Systemen, sondern auch zur Erleichterung der Fehlersuche nützlich\\&." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"If the daemon offers interfaces to other software running on the local " +"system via local B<AF_UNIX> sockets, consider implementing socket-based " +"activation (see above)\\&. Usually, a minimal patch is sufficient to " +"implement this: Extend the socket creation in the daemon code so that " +"B<sd_listen_fds>(3) is checked for already passed sockets first\\&. If " +"sockets are passed (i\\&.e\\&. when B<sd_listen_fds()> returns a positive " +"value), skip the socket creation step and use the passed sockets\\&. " +"Secondly, ensure that the file system socket nodes for local B<AF_UNIX> " +"sockets used in the socket-based activation are not removed when the daemon " +"shuts down, if sockets have been passed\\&. Third, if the daemon normally " +"closes all remaining open file descriptors as part of its initialization, " +"the sockets passed from the service manager must be spared\\&. Since new-" +"style init systems guarantee that no left-over file descriptors are passed " +"to executed processes, it might be a good choice to simply skip the closing " +"of all remaining open file descriptors if sockets are passed\\&." +msgstr "" +"Falls der Daemon zu anderer, auf dem lokalen System laufenden Software " +"Schnittstellen mittels lokaler B<AF_UNIX>-Sockets anbietet, sollte eine " +"Socket-basierte Aktivierung (siehe oben) überlegt werden\\&. Normalerweise " +"reicht ein minimaler Patch, um dies zu implementieren: Erweitern Sie die " +"Socket-Erstellung im Daemon-Code, so dass zuerst B<sd_listen_fds>(3) auf " +"bereits übergebene Sockets geprüft wird\\&. Falls Sockets übergeben wurden " +"(d\\&.h\\&. wenn B<sd_listen_fds()> einen positiven Wert liefert), " +"überspringen Sie den Socket-Erstellungsschritt und verwenden Sie die " +"übergebenen Sockets\\&. Zweitens sollten die System-Socket-Knoten für " +"lokale, in der Socket-basierten Aktivierung verwandten B<AF_UNIX>-Sockets " +"nicht entfernt werden, wenn der Daemon heruntergefahren wird, falls Sockets " +"übergeben wurden\\&. Falls der Daemon normalerweise alle verbliebenen " +"offenen Dateideskriptoren als Teil seiner Initialisierung schließt, müssen " +"drittens die vom Diensteverwalter übergebenen Sockets verschont werden\\&. " +"Da neuartige Init-Systeme garantieren, dass keine verbliebenen " +"Dateideskriptoren an ausgeführte Prozesse übergeben werden, könnte es eine " +"gute Idee sein, einfach das Schließen aller verbliebenen offenen " +"Dateideskriptoren zu überspringen, falls Sockets übergeben wurden\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Write and install a systemd unit file for the service (and the sockets if " +"socket-based activation is used, as well as a path unit file, if the daemon " +"processes a spool directory), see above for details\\&." +msgstr "" +"Schreiben und installieren Sie eine Systemd-Unit-Datei für den Dienst (und " +"die Sockets, falls Socket-basierte Aktivierung verwandt wird, sowie eine " +"Pfad-Unit-Datei, falls der Daemon ein Spool-Verzeichnis verarbeitet), siehe " +"oben für Details\\&." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If the daemon exposes interfaces via D-Bus, write and install a D-Bus " +"activation file for the service, see above for details\\&." +msgstr "" +"Falls der Daemon Schnittstellen mittels D-Bus offenlegt, schreiben Sie eine " +"D-Bus-Aktivierungsdatei für den Dienst, siehe oben für Details\\&." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "PLACING DAEMON DATA" +msgstr "ABLAGE VON DAEMON-DATEN" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"It is recommended to follow the general guidelines for placing package " +"files, as discussed in B<file-hierarchy>(7)\\&." +msgstr "" +"Es wird empfohlen, den allgemeinen Richtlinien, beschrieben in B<file-" +"hierarchy>(7), für die Ablage von Paketdateien zu folgen\\&." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SEE ALSO" +msgstr "SIEHE AUCH" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<systemd>(1), B<sd-daemon>(3), B<sd_listen_fds>(3), B<sd_notify>(3), " +"B<daemon>(3), B<systemd.service>(5), B<file-hierarchy>(7)" +msgstr "" +"B<systemd>(1), B<sd-daemon>(3), B<sd_listen_fds>(3), B<sd_notify>(3), " +"B<daemon>(3), B<systemd.service>(5), B<file-hierarchy>(7)" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NOTES" +msgstr "ANMERKUNGEN" + +#. type: IP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid " 1." +msgstr " 1." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "LSB recommendations for SysV init scripts" +msgstr "LSB-Empfehlungen für SysV-Init-Skripte" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"\\%http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/" +"iniscrptact.html" +msgstr "" +"\\%http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/" +"iniscrptact.html" + +#. type: IP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid " 2." +msgstr " 2." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Apple MacOS X Daemon Requirements" +msgstr "Apple-MacOS-X-Daemon-Anforderungen" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"\\%https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/" +"BPSystemStartup/Chapters/CreatingLaunchdJobs.html" +msgstr "" +"\\%https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/" +"BPSystemStartup/Chapters/CreatingLaunchdJobs.html" + +#. type: TH +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "systemd 254" +msgstr "systemd 254" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"For developing a new-style daemon, none of the initialization steps " +"recommended for SysV daemons need to be implemented\\&. New-style init " +"systems such as systemd make all of them redundant\\&. Moreover, since some " +"of these steps interfere with process monitoring, file descriptor passing " +"and other functionality of the init system, it is recommended not to execute " +"them when run as new-style service\\&." +msgstr "" +"Zur Entwicklung eines neuartigen Daemons muss keiner der für SysV-Daemons " +"empfohlenen Initialisierungsschritte implementiert werden\\&. Bei neuartigen " +"Init-Systemen wie Systemd sind diese alle redundant\\&. Da einige dieser " +"Schritte sogar die Prozessüberwachung, Dateideskriptorweitergabe und andere " +"Funktionalitäten des Init-Systems stören, wird empfohlen, sie nicht " +"auszuführen, wenn sie als neuartiger Dienst ausgeführt laufen\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "If B<SIGTERM> is received, shut down the daemon and exit cleanly\\&." +msgstr "" +"Falls B<SIGTERM> empfangen wird, soll der Daemon sich herunterfahren und " +"sauber beenden\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If B<SIGHUP> is received, reload the configuration files, if this applies\\&." +msgstr "" +"Falls B<SIGHUP> empfangen wird, sollen die Konfigurationsdateien, falls " +"zutreffend, neu geladen werden\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Provide a correct exit code from the main daemon process, as this is used by " +"the init system to detect service errors and problems\\&. It is recommended " +"to follow the exit code scheme as defined in the \\m[blue]B<LSB " +"recommendations for SysV init scripts>\\m[]\\&\\s-2\\u[1]\\d\\s+2\\&." +msgstr "" +"Es soll ein korrekter Exit-Code vom Haupt-Daemon-Prozess bereitgestellt " +"werden, da dieser vom Init-System benutzt wird, um Dienstefehler und " +"Probleme zu erkennen\\&. Es wird empfohlen, dem in \\m[blue]B<LSB-" +"Empfehlungen für SysV-Init-Skripte>\\m[]\\&\\s-2\\u[1]\\d\\s+2 definierten " +"Exit-Code-System zu folgen\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"As much as possible, rely on the init system\\*(Aqs functionality to limit " +"the access of the daemon to files, services and other resources, i\\&.e\\&. " +"in the case of systemd, rely on systemd\\*(Aqs resource limit control " +"instead of implementing your own, rely on systemd\\*(Aqs privilege dropping " +"code instead of implementing it in the daemon, and similar\\&. See B<systemd." +"exec>(5) for the available controls\\&." +msgstr "" +"Verlassen Sie sich soweit möglich auf die Funktionalitäten des Init-Systems, " +"den Zugriff des Daemons auf Dateien, Dienste und andere Ressourcen zu " +"begrenzen, d\\&.h\\&. im Falle von Systemd, verlassen Sie sich auf Systemds " +"Ressourenbegrenzungssteuerung statt Ihre eigene zu implementieren, verlassen " +"Sie sich auf den Privilegienabgabe-Code von Systemd, statt ihn in Ihrem " +"Daemon zu implementieren und ähnliches\\&. Siehe B<systemd.exec>(5) für die " +"verfügbaren Steuerungen\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If applicable, a daemon should notify the init system about startup " +"completion or status updates via the B<sd_notify>(3) interface\\&." +msgstr "" +"Falls zutreffend sollte ein Daemon über den Abschluss des Startens oder " +"Statusaktualisierungen das Init-System mittels der Schnittstelle " +"B<sd_notify>(3) informieren\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Instead of using the B<syslog()> call to log directly to the system syslog " +"service, a new-style daemon may choose to simply log to standard error via " +"B<fprintf()>, which is then forwarded to syslog by the init system\\&. If " +"log levels are necessary, these can be encoded by prefixing individual log " +"lines with strings like \"E<lt>4E<gt>\" (for log level 4 \"WARNING\" in the " +"syslog priority scheme), following a similar style as the Linux " +"kernel\\*(Aqs B<printk()> level system\\&. For details, see B<sd-daemon>(3) " +"and B<systemd.exec>(5)\\&." +msgstr "" +"Statt den Aufruf B<syslog()> zum direkten Protokollieren in den " +"Systemprotokolldienst zu verwenden, kann ein neuartiger Daemon einfach auf " +"die Standardfehlerausgabe mittels B<fprintf()> protokollieren, was dann " +"durch das Init-System an Syslog weitergeleitet wird\\&. Falls " +"Protokollierungsstufen notwendig sind, können diese durch Voranstellen von " +"Zeichenketten wie »E<lt>4E<gt>« (für Protokollierungsstufe 4 »WARNING« im " +"Syslog-Prioritätsschema) vor individuellen Protokollierzeilen kodiert " +"werden. Dies folgt einem ähnlichen Stil wie das B<printk()>-Stufensystem des " +"Linux-Kernels\\&. Für Details siehe B<sd-daemon>(3) und B<systemd." +"exec>(5)\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"As new-style daemons are invoked without a controlling TTY (but as their own " +"session leaders) care should be taken to always specify `O_NOCTTY` on " +"`open()` calls that possibly reference a TTY device node, so that no " +"controlling TTY is accidentally acquired\\&." +msgstr "" +"Da neuartige Daemons ohne ein steuerndes TTY (aber sie selbst als ihren " +"eigenen Sitzungsleiter) aufgerufen werden, sollte sichergestellt werden, " +"dass bei »open()«-Aufrufen, die möglicherweise einen TTY-Geräteknoten " +"referenzieren, stets »O_NOCTTY« festgelegt wird, so dass nicht versehentlich " +"ein steuerndes TTY erlangt wird\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Old-style daemons are usually activated exclusively on boot (and manually by " +"the administrator) via SysV init scripts, as detailed in the \\m[blue]B<LSB " +"Linux Standard Base Core Specification>\\m[]\\&\\s-2\\u[1]\\d\\s+2\\&. This " +"method of activation is supported ubiquitously on Linux init systems, both " +"old-style and new-style systems\\&. Among other issues, SysV init scripts " +"have the disadvantage of involving shell scripts in the boot process\\&. New-" +"style init systems generally employ updated versions of activation, both " +"during boot-up and during runtime and using more minimal service description " +"files\\&." +msgstr "" +"Daemons der alten Art werden typischerweise exklusiv beim Systemstart (oder " +"manuell durch den Systemadministrator) mittels SysV-Init-Skripten aktiviert, " +"wie dies in der \\m[blue]B<LSB Linux Standard Base Kern-" +"Spezifikation>\\m[]\\&\\s-2\\u[1]\\d\\s+2 dargestellt ist\\&. Diese Methode " +"wird universell auf Linux-Init-Systemen unterstützt, sowohl bei denen der " +"alten Art als auch bei neuartigen\\&. Unter anderen Problemen haben die SysV-" +"Init-Skripte den Nachteil, Shell-Skripte im Systemstartprozess zu " +"involvieren\\&. Neuartige Init-Systeme setzen im Allgemeinen aktualisierte " +"Versionen der Aktivierung ein, sowohl während des Systemstarts als auch " +"während der Laufzeit und verwenden minimalere Dienstebeschreibungsdateien\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In order to maximize the possible parallelization and robustness and " +"simplify configuration and development, it is recommended for all new-style " +"daemons that communicate via listening sockets to employ socket-based " +"activation\\&. In a socket-based activation scheme, the creation and binding " +"of the listening socket as primary communication channel of daemons to local " +"(and sometimes remote) clients is moved out of the daemon code and into the " +"init system\\&. Based on per-daemon configuration, the init system installs " +"the sockets and then hands them off to the spawned process as soon as the " +"respective daemon is to be started\\&. Optionally, activation of the service " +"can be delayed until the first inbound traffic arrives at the socket to " +"implement on-demand activation of daemons\\&. However, the primary advantage " +"of this scheme is that all providers and all consumers of the sockets can be " +"started in parallel as soon as all sockets are established\\&. In addition " +"to that, daemons can be restarted with losing only a minimal number of " +"client transactions, or even any client request at all (the latter is " +"particularly true for state-less protocols, such as DNS or syslog), because " +"the socket stays bound and accessible during the restart, and all requests " +"are queued while the daemon cannot process them\\&." +msgstr "" +"Um die Parallelisierung und Robustheit zu maximieren und die Konfiguration " +"und Entwicklung zu vereinfachen, wird für alle neuartigen Daemons empfohlen, " +"die über Warten an Sockets kommunizieren, eine Socket-basierte Aktivierung " +"einzusetzen\\&. In einem Socket-basierten Aktivierungsschema wird die " +"Erstellung und das Binden des Sockets, an dem gewartet werden soll, als " +"primären Kommunikationskanal von Daemons mit lokalen (und manchmal fernen) " +"Clients aus dem Daemon-Code in das Init-System verschoben\\&. Basierend auf " +"einer Daemon-basierten Konfiguration installiert das Init-System die Sockets " +"und gibt sie an die erstellten Prozesse, sobald der respektive Daemon " +"gestartet wird\\&. Optional kann die Aktivierung des Dienstes verzögert " +"werden, bis der erste eingehende Verkehr auf dem Socket eintrifft, um eine " +"bedarfsgesteuerte Aktivierung von Daemons zu realisieren\\&. Allerdings ist " +"der Hauptvorteil dieses Schemas, dass alle Anbieter und Konsumenten des " +"Sockets parallel gestartet werden können, sobald alle Sockets etabliert " +"sind\\&. Zusätzlich können Daemons neugestartet werden und dabei nur eine " +"minimale Anzahl an Client-Transaktionen verlieren oder sogar überhaupt keine " +"Client-Anfrage (Letzteres stimmt insbesondere für zustandslose Protokolle " +"wie DNS oder Syslog), da das Socket während des Neustarts angebunden und " +"zugreifbar verbleibt und alle Anfragen in einer Warteschlange verbleiben, " +"während der Daemon sie nicht verarbeiten kann\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"New-style daemons which support socket activation must be able to receive " +"their sockets from the init system instead of creating and binding them " +"themselves\\&. For details about the programming interfaces for this scheme " +"provided by systemd, see B<sd_listen_fds>(3) and B<sd-daemon>(3)\\&. For " +"details about porting existing daemons to socket-based activation, see " +"below\\&. With minimal effort, it is possible to implement socket-based " +"activation in addition to traditional internal socket creation in the same " +"codebase in order to support both new-style and old-style init systems from " +"the same daemon binary\\&." +msgstr "" +"Neuartige Daemons, die Socket-Aktivierung unterstützen, müssen in der Lage " +"sein, Sockets vom Init-System zu erhalten, statt sie selbst zu erstellen und " +"sich daran zu binden\\&. Für Details über die Programmierschnittstellen für " +"dieses von Systemd bereitgestellte Schema, siehe B<sd_listen_fds>(3) und " +"B<sd-daemon>(3)\\&. Für Details über die Portierung bestehender Daemons zu " +"Socket-basierter Aktivierung, siehe unten\\&. Mit minimalem Einsatz ist es " +"möglich, Socket-basierte Aktivierung zusätzlich zu traditioneller interner " +"Socket-Erstellung in der gleichen Codebasis zu erstellen, um sowohl " +"neuartige als auch Init-Systeme der alten Art im gleichen Daemon-Programm zu " +"unterstützen\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"When the D-Bus IPC system is used for communication with clients, new-style " +"daemons should employ bus activation so that they are automatically " +"activated when a client application accesses their IPC interfaces\\&. This " +"is configured in D-Bus service files (not to be confused with systemd " +"service unit files!)\\&. To ensure that D-Bus uses systemd to start-up and " +"maintain the daemon, use the I<SystemdService=> directive in these service " +"files to configure the matching systemd service for a D-Bus service\\&. e\\&." +"g\\&.: For a D-Bus service whose D-Bus activation file is named org\\&." +"freedesktop\\&.RealtimeKit\\&.service, make sure to set " +"I<SystemdService=rtkit-daemon\\&.service> in that file to bind it to the " +"systemd service rtkit-daemon\\&.service\\&. This is needed to make sure that " +"the daemon is started in a race-free fashion when activated via multiple " +"mechanisms simultaneously\\&." +msgstr "" +"Wenn das D-Bus-IPC-System für die Kommunikation mit Clients verwandt wird, " +"sollten neuartige Daemons Bus-Aktivierung einsetzen, so dass sie automatisch " +"aktiviert werden, wenn eine Client-Anwendung auf ihre IPC-Schnittstelle " +"zugreift\\&. Dies wird in D-Bus-Dienste-Dateien (die nicht mit Systemds " +"Dienste-Unit-Dateien durcheinandergebracht werden dürfen) konfiguriert\\&. " +"Um sicherzustellen, dass D-Bus Systemd verwendet, um den Daemon zu starten " +"und zu verwalten, verwenden Sie die Anweisung I<SystemdService=> in diesen " +"Dienste-Dateien, um den passenden Systemd-Dienst für einen D-Bus-Dienst zu " +"konfigurieren. Stellen Sie beispielsweise für einen D-Bus-Dienst, dessen D-" +"Bus-Aktivierungsdatei org\\&.freedesktop\\&.RealtimeKit\\&.service heißt, " +"sicher, dass I<SystemdService=rtkit-daemon\\&.service> in dieser Datei " +"gesetzt ist, um ihn an den Systemd-Dienst rtkit-daemon\\&.service zu binden. " +"Dies wird benötigt, um sicherzustellen, dass der Daemon ohne " +"Ressourcenwettläufe gestartet wird, wenn er über mehrere Mechanismen " +"simultan aktiviert wird\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Other forms of activation have been suggested and implemented in some " +"systems\\&. However, there are often simpler or better alternatives, or they " +"can be put together of combinations of the schemes above\\&. Example: " +"Sometimes, it appears useful to start daemons or \\&.socket units when a " +"specific IP address is configured on a network interface, because network " +"sockets shall be bound to the address\\&. However, an alternative to " +"implement this is by utilizing the Linux B<IP_FREEBIND>/B<IPV6_FREEBIND> " +"socket option, as accessible via I<FreeBind=yes> in systemd socket files " +"(see B<systemd.socket>(5) for details)\\&. This option, when enabled, " +"allows sockets to be bound to a non-local, not configured IP address, and " +"hence allows bindings to a particular IP address before it actually becomes " +"available, making such an explicit dependency to the configured address " +"redundant\\&. Another often suggested trigger for service activation is low " +"system load\\&. However, here too, a more convincing approach might be to " +"make proper use of features of the operating system, in particular, the CPU " +"or I/O scheduler of Linux\\&. Instead of scheduling jobs from userspace " +"based on monitoring the OS scheduler, it is advisable to leave the " +"scheduling of processes to the OS scheduler itself\\&. systemd provides fine-" +"grained access to the CPU and I/O schedulers\\&. If a process executed by " +"the init system shall not negatively impact the amount of CPU or I/O " +"bandwidth available to other processes, it should be configured with " +"I<CPUSchedulingPolicy=idle> and/or I<IOSchedulingClass=idle>\\&. Optionally, " +"this may be combined with timer-based activation to schedule background jobs " +"during runtime and with minimal impact on the system, and remove it from the " +"boot phase itself\\&." +msgstr "" +"Es wurden andere Formen der Aktivierung vorgeschlagen und in einigen " +"Systemen implementiert\\&. Allerdings gibt es oft einfachere und bessere " +"Alternativen oder sie können als Kombination der obigen Schemata " +"zusammengestellt werden\\&. Beispiel: Manchmal erscheint es nützlich, " +"Daemons oder \\&.socket-Units zu starten, wenn eine bestimmte IP-Adresse an " +"einer Netzwerkschnittstelle konfiguriert ist, da Netzwerk-Sockets an diese " +"Adresse gebunden werden sollen\\&. Eine Alternative zur Implementierung " +"hiervon ist die Verwendung der Socket-Option B<IP_FREEBIND>/B<IPV6_FREEBIND> " +"von Linux, die mittels I<FreeBind=yes> in Systemd-Socket-Dateien erreichbar " +"ist (siehe B<systemd.socket>(5) für Details)\\&. Diese Option erlaubt " +"Sockets, wenn sie aktiviert ist, an nichtlokale, nichtkonfigurierte IP-" +"Adressen gebunden zu werden und erlaubt damit Anbindungen an bestimmte IP-" +"Adressen, bevor diese tatsächlich verfügbar werden; dies macht eine solche " +"explizite Abhängigkeit auf die konfigurierte Adresse redundant\\&. Ein " +"anderer oft vorgeschlagener Auslöser für Dienste-Aktivierung ist niedrige " +"Systemlast\\&. Auch hier könnte allerdings ein überzeugender Ansatz sein, " +"die Funktionalitäten des Betriebssystems korrekt zu benutzen, insbesondere " +"des CPU- oder E/A-Schedulers von Linux\\&. Anstatt Aufträge vom " +"Anwenderbereich, basierend auf der Überwachung des Betriebssystem-" +"Schedulers, einzuplanen, ist es empfehlenswert, die Einplanung von Prozessen " +"dem Betriebssystem-Scheduler selbst zu überlassen\\&. Systemd stellt einen " +"feingranularen Zugriff auf die CPU- und E/A-Scheduler bereit\\&. Falls ein " +"vom Init-System ausgeführter Prozess den Umfang der für andere Prozesse " +"verfügbaren CPU- oder E/A-Bandbreite nicht negativ beeinflussen soll, sollte " +"er mit I<CPUSchedulingPolicy=idle> und/oder I<IOSchedulingClass=idle> " +"konfiguriert werden\\&. Optional kann dies mit Timer-basierter Aktivierung " +"kombiniert werden, um Hintergrund-Aufträge während der Laufzeit und mit " +"minimalen Auswirkungen auf das System einzuplanen und ihn aus der " +"Systemstartphase selbst zu entfernen\\&." + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If the daemon offers interfaces to other software running on the local " +"system via local B<AF_UNIX> sockets, consider implementing socket-based " +"activation (see above)\\&. Usually, a minimal patch is sufficient to " +"implement this: Extend the socket creation in the daemon code so that " +"B<sd_listen_fds>(3) is checked for already passed sockets first\\&. If " +"sockets are passed (i\\&.e\\&. when B<sd_listen_fds()> returns a positive " +"value), skip the socket creation step and use the passed sockets\\&. " +"Secondly, ensure that the file system socket nodes for local B<AF_UNIX> " +"sockets used in the socket-based activation are not removed when the daemon " +"shuts down, if sockets have been passed\\&. Third, if the daemon normally " +"closes all remaining open file descriptors as part of its initialization, " +"the sockets passed from the init system must be spared\\&. Since new-style " +"init systems guarantee that no left-over file descriptors are passed to " +"executed processes, it might be a good choice to simply skip the closing of " +"all remaining open file descriptors if sockets are passed\\&." +msgstr "" +"Falls der Daemon zu anderer, auf dem lokalen System laufenden Software " +"Schnittstellen mittels lokaler B<AF_UNIX>-Sockets anbietet, sollte eine " +"Socket-basierte Aktivierung (siehe oben) überlegt werden\\&. Normalerweise " +"reicht ein minimaler Patch, um dies zu implementieren: Erweitern Sie die " +"Socket-Erstellung im Daemon-Code, so dass zuerst B<sd_listen_fds>(3) auf " +"bereits übergebene Sockets geprüft wird\\&. Falls Sockets übergeben wurden " +"(d\\&.h\\&. wenn B<sd_listen_fds()> einen positiven Wert liefert), " +"überspringen Sie den Socket-Erstellungsschritt und verwenden Sie die " +"übergebenen Sockets\\&. Zweitens sollten die System-Socket-Knoten für " +"lokale, in der Socket-basierten Aktivierung verwandten B<AF_UNIX>-Sockets " +"nicht entfernt werden, wenn der Daemon heruntergefahren wird, falls Sockets " +"übergeben wurden\\&. Falls der Daemon normalerweise alle verbliebenen " +"offenen Dateideskriptoren als Teil seiner Initialisierung schließt, müssen " +"drittens die vom Init-System übergebenen Sockets verschont werden\\&. Da " +"neuartige Init-Systeme garantieren, dass keine verbliebenen " +"Dateideskriptoren an ausgeführte Prozesse übergeben werden, könnte es eine " +"gute Idee sein, einfach das Schließen aller verbliebenen offenen " +"Dateideskriptoren zu überspringen, falls Sockets übergeben wurden\\&." |