]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/core/special.h
man: typo fixes
[thirdparty/systemd.git] / src / core / special.h
CommitLineData
03467c88 1/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
514f4ef5 2
c2f1db8f 3#pragma once
514f4ef5
LP
4
5/***
6 This file is part of systemd.
7
8 Copyright 2010 Lennart Poettering
9
10 systemd is free software; you can redistribute it and/or modify it
5430f7f2
LP
11 under the terms of the GNU Lesser General Public License as published by
12 the Free Software Foundation; either version 2.1 of the License, or
514f4ef5
LP
13 (at your option) any later version.
14
15 systemd is distributed in the hope that it will be useful, but
16 WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
5430f7f2 18 Lesser General Public License for more details.
514f4ef5 19
5430f7f2 20 You should have received a copy of the GNU Lesser General Public License
514f4ef5
LP
21 along with systemd; If not, see <http://www.gnu.org/licenses/>.
22***/
23
24#define SPECIAL_DEFAULT_TARGET "default.target"
25
f1dd0c3f
LP
26/* Shutdown targets */
27#define SPECIAL_UMOUNT_TARGET "umount.target"
514f4ef5
LP
28/* This is not really intended to be started by directly. This is
29 * mostly so that other targets (reboot/halt/poweroff) can depend on
30 * it to bring all services down that want to be brought down on
31 * system shutdown. */
32#define SPECIAL_SHUTDOWN_TARGET "shutdown.target"
177b3ffe
LP
33#define SPECIAL_HALT_TARGET "halt.target"
34#define SPECIAL_POWEROFF_TARGET "poweroff.target"
35#define SPECIAL_REBOOT_TARGET "reboot.target"
36#define SPECIAL_KEXEC_TARGET "kexec.target"
37#define SPECIAL_EXIT_TARGET "exit.target"
6edd7d0a
LP
38#define SPECIAL_SUSPEND_TARGET "suspend.target"
39#define SPECIAL_HIBERNATE_TARGET "hibernate.target"
6524990f 40#define SPECIAL_HYBRID_SLEEP_TARGET "hybrid-sleep.target"
514f4ef5 41
f1dd0c3f 42/* Special boot targets */
177b3ffe
LP
43#define SPECIAL_RESCUE_TARGET "rescue.target"
44#define SPECIAL_EMERGENCY_TARGET "emergency.target"
514f4ef5 45
f1dd0c3f 46/* Early boot targets */
177b3ffe
LP
47#define SPECIAL_SYSINIT_TARGET "sysinit.target"
48#define SPECIAL_SOCKETS_TARGET "sockets.target"
514f4ef5 49#define SPECIAL_LOCAL_FS_TARGET "local-fs.target" /* LSB's $local_fs */
21e557ed 50#define SPECIAL_LOCAL_FS_PRE_TARGET "local-fs-pre.target"
514f4ef5 51#define SPECIAL_REMOTE_FS_TARGET "remote-fs.target" /* LSB's $remote_fs */
21e557ed 52#define SPECIAL_REMOTE_FS_PRE_TARGET "remote-fs-pre.target"
514f4ef5 53#define SPECIAL_SWAP_TARGET "swap.target"
177b3ffe
LP
54#define SPECIAL_BASIC_TARGET "basic.target"
55
f1dd0c3f 56/* LSB compatibility */
514f4ef5
LP
57#define SPECIAL_NETWORK_TARGET "network.target" /* LSB's $network */
58#define SPECIAL_NSS_LOOKUP_TARGET "nss-lookup.target" /* LSB's $named */
59#define SPECIAL_RPCBIND_TARGET "rpcbind.target" /* LSB's $portmap */
feb88c9f 60#define SPECIAL_SYSLOG_TARGET "syslog.target" /* LSB's $syslog */
4466194c 61#define SPECIAL_TIME_SYNC_TARGET "time-sync.target" /* LSB's $time */
669b04a4
LP
62
63/*
64 * Rules regarding adding further high level targets like the above:
65 *
66 * - Be conservative, only add more of these when we really need
67 * them. We need strong usecases for further additions.
68 *
69 * - When there can be multiple implementations running side-by-side,
70 * it needs to be a .target unit which can pull in all
71 * implementations.
72 *
73 * - If something can be implemented with socket activation, and
74 * without, it needs to be a .target unit, so that it can pull in
75 * the appropriate unit.
76 *
77 * - Otherwise, it should be a .service unit.
78 *
79 * - In some cases it is OK to have both a .service and a .target
80 * unit, i.e. if there can be multiple parallel implementations, but
81 * only one is the "system" one. Example: syslog.
82 *
83 * Or to put this in other words: .service symlinks can be used to
84 * arbitrate between multiple implementations if there can be only one
85 * of a kind. .target units can be used to support multiple
86 * implementations that can run side-by-side.
87 */
177b3ffe 88
f1dd0c3f 89/* Magic early boot services */
93a1d735
LP
90#define SPECIAL_FSCK_SERVICE "systemd-fsck@.service"
91#define SPECIAL_QUOTACHECK_SERVICE "systemd-quotacheck.service"
0c380104 92#define SPECIAL_QUOTAON_SERVICE "quotaon.service"
2b93b027 93#define SPECIAL_REMOUNT_FS_SERVICE "systemd-remount-fs.service"
177b3ffe 94
f1dd0c3f 95/* Services systemd relies on */
514f4ef5 96#define SPECIAL_DBUS_SERVICE "dbus.service"
8f6df3fa 97#define SPECIAL_DBUS_SOCKET "dbus.socket"
64f5002a 98#define SPECIAL_JOURNALD_SOCKET "systemd-journald.socket"
731a676c 99#define SPECIAL_JOURNALD_SERVICE "systemd-journald.service"
177b3ffe 100
f1dd0c3f 101/* Magic init signals */
177b3ffe
LP
102#define SPECIAL_KBREQUEST_TARGET "kbrequest.target"
103#define SPECIAL_SIGPWR_TARGET "sigpwr.target"
104#define SPECIAL_CTRL_ALT_DEL_TARGET "ctrl-alt-del.target"
514f4ef5 105
514f4ef5
LP
106/* For SysV compatibility. Usually an alias for a saner target. On
107 * SysV-free systems this doesn't exist. */
108#define SPECIAL_RUNLEVEL2_TARGET "runlevel2.target"
109#define SPECIAL_RUNLEVEL3_TARGET "runlevel3.target"
110#define SPECIAL_RUNLEVEL4_TARGET "runlevel4.target"
111#define SPECIAL_RUNLEVEL5_TARGET "runlevel5.target"