]> git.ipfire.org Git - thirdparty/systemd.git/blame - docs/TRANSIENT-SETTINGS.md
core: update log message
[thirdparty/systemd.git] / docs / TRANSIENT-SETTINGS.md
CommitLineData
c3e270f4 1---
b35ec8de 2title: What Settings Are Currently Available For Transient Units?
4cdca0af 3category: Interfaces
b41a3f66 4layout: default
0aff7b75 5SPDX-License-Identifier: LGPL-2.1-or-later
c3e270f4
FB
6---
7
b35ec8de 8# What Settings Are Currently Available For Transient Units?
91d2f195
LP
9
10Our intention is to make all settings that are available as unit file settings
b096d14c
ZJS
11also available for transient units, through the D-Bus API. At the moment,
12device, swap, and target units are not supported at all as transient units, but
13others are pretty well supported.
91d2f195
LP
14
15The lists below contain all settings currently available in unit files. The
16ones currently available in transient units are prefixed with `✓`.
17
18## Generic Unit Settings
19
c0d64e0e 20Most generic unit settings are available for transient units.
91d2f195
LP
21
22```
23✓ Description=
c0d64e0e
YW
24✓ Documentation=
25✓ SourcePath=
91d2f195
LP
26✓ Requires=
27✓ Requisite=
28✓ Wants=
29✓ BindsTo=
30✓ Conflicts=
31✓ Before=
32✓ After=
33✓ OnFailure=
34✓ PropagatesReloadTo=
35✓ ReloadPropagatedFrom=
36✓ PartOf=
c0d64e0e
YW
37✓ JoinsNamespaceOf=
38✓ RequiresMountsFor=
39✓ StopWhenUnneeded=
40✓ RefuseManualStart=
41✓ RefuseManualStop=
42✓ AllowIsolate=
91d2f195 43✓ DefaultDependencies=
c0d64e0e
YW
44✓ OnFailureJobMode=
45✓ IgnoreOnIsolate=
46✓ JobTimeoutSec=
47✓ JobRunningTimeoutSec=
48✓ JobTimeoutAction=
49✓ JobTimeoutRebootArgument=
370f0dc8
ZJS
50✓ StartLimitIntervalSec=
51✓ StartLimitBurst=
52✓ StartLimitAction=
91d2f195
LP
53✓ FailureAction=
54✓ SuccessAction=
7af67e9a
LP
55✓ FailureActionExitStatus=
56✓ SuccessActionExitStatus=
370f0dc8 57✓ RebootArgument=
c0d64e0e
YW
58✓ ConditionPathExists=
59✓ ConditionPathExistsGlob=
60✓ ConditionPathIsDirectory=
61✓ ConditionPathIsSymbolicLink=
62✓ ConditionPathIsMountPoint=
63✓ ConditionPathIsReadWrite=
64✓ ConditionDirectoryNotEmpty=
65✓ ConditionFileNotEmpty=
66✓ ConditionFileIsExecutable=
67✓ ConditionNeedsUpdate=
68✓ ConditionFirstBoot=
69✓ ConditionKernelCommandLine=
70✓ ConditionKernelVersion=
71✓ ConditionArchitecture=
cbcdcaaa 72✓ ConditionFirmware=
c0d64e0e
YW
73✓ ConditionVirtualization=
74✓ ConditionSecurity=
75✓ ConditionCapability=
76✓ ConditionHost=
77✓ ConditionACPower=
78✓ ConditionUser=
79✓ ConditionGroup=
80✓ ConditionControlGroupController=
81✓ AssertPathExists=
82✓ AssertPathExistsGlob=
83✓ AssertPathIsDirectory=
84✓ AssertPathIsSymbolicLink=
85✓ AssertPathIsMountPoint=
86✓ AssertPathIsReadWrite=
87✓ AssertDirectoryNotEmpty=
88✓ AssertFileNotEmpty=
89✓ AssertFileIsExecutable=
90✓ AssertNeedsUpdate=
91✓ AssertFirstBoot=
92✓ AssertKernelCommandLine=
93✓ AssertKernelVersion=
94✓ AssertArchitecture=
95✓ AssertVirtualization=
96✓ AssertSecurity=
97✓ AssertCapability=
98✓ AssertHost=
99✓ AssertACPower=
100✓ AssertUser=
101✓ AssertGroup=
102✓ AssertControlGroupController=
91d2f195
LP
103✓ CollectMode=
104```
105
106## Execution-Related Settings
107
108All execution-related settings are available for transient units.
109
110```
111✓ WorkingDirectory=
112✓ RootDirectory=
113✓ RootImage=
114✓ User=
115✓ Group=
116✓ SupplementaryGroups=
117✓ Nice=
118✓ OOMScoreAdjust=
ad21e542 119✓ CoredumpFilter=
91d2f195
LP
120✓ IOSchedulingClass=
121✓ IOSchedulingPriority=
122✓ CPUSchedulingPolicy=
123✓ CPUSchedulingPriority=
124✓ CPUSchedulingResetOnFork=
125✓ CPUAffinity=
126✓ UMask=
127✓ Environment=
128✓ EnvironmentFile=
129✓ PassEnvironment=
130✓ UnsetEnvironment=
131✓ DynamicUser=
132✓ RemoveIPC=
133✓ StandardInput=
134✓ StandardOutput=
135✓ StandardError=
136✓ StandardInputText=
137✓ StandardInputData=
138✓ TTYPath=
139✓ TTYReset=
140✓ TTYVHangup=
141✓ TTYVTDisallocate=
51462135
DDM
142✓ TTYRows=
143✓ TTYColumns=
91d2f195
LP
144✓ SyslogIdentifier=
145✓ SyslogFacility=
146✓ SyslogLevel=
147✓ SyslogLevelPrefix=
148✓ LogLevelMax=
149✓ LogExtraFields=
90fc172e
AZ
150✓ LogRateLimitIntervalSec=
151✓ LogRateLimitBurst=
91d2f195
LP
152✓ SecureBits=
153✓ CapabilityBoundingSet=
154✓ AmbientCapabilities=
155✓ TimerSlackNSec=
156✓ NoNewPrivileges=
157✓ KeyringMode=
4e399953
LP
158✓ ProtectProc=
159✓ ProcSubset=
91d2f195
LP
160✓ SystemCallFilter=
161✓ SystemCallArchitectures=
162✓ SystemCallErrorNumber=
9df2cdd8 163✓ SystemCallLog=
91d2f195
LP
164✓ MemoryDenyWriteExecute=
165✓ RestrictNamespaces=
166✓ RestrictRealtime=
7445db6e 167✓ RestrictSUIDSGID=
91d2f195 168✓ RestrictAddressFamilies=
830ffbce
YW
169✓ RootHash=
170✓ RootHashSignature=
171✓ RootVerity=
91d2f195
LP
172✓ LockPersonality=
173✓ LimitCPU=
174✓ LimitFSIZE=
175✓ LimitDATA=
176✓ LimitSTACK=
177✓ LimitCORE=
178✓ LimitRSS=
179✓ LimitNOFILE=
180✓ LimitAS=
181✓ LimitNPROC=
182✓ LimitMEMLOCK=
183✓ LimitLOCKS=
184✓ LimitSIGPENDING=
185✓ LimitMSGQUEUE=
186✓ LimitNICE=
187✓ LimitRTPRIO=
188✓ LimitRTTIME=
189✓ ReadWritePaths=
190✓ ReadOnlyPaths=
191✓ InaccessiblePaths=
192✓ BindPaths=
193✓ BindReadOnlyPaths=
24743efe 194✓ TemporaryFileSystem=
91d2f195
LP
195✓ PrivateTmp=
196✓ PrivateDevices=
31f06f56 197✓ PrivateMounts=
91d2f195
LP
198✓ ProtectKernelTunables=
199✓ ProtectKernelModules=
b096d14c 200✓ ProtectKernelLogs=
91d2f195
LP
201✓ ProtectControlGroups=
202✓ PrivateNetwork=
203✓ PrivateUsers=
204✓ ProtectSystem=
205✓ ProtectHome=
022d3345 206✓ ProtectClock=
91d2f195
LP
207✓ MountFlags=
208✓ MountAPIVFS=
209✓ Personality=
210✓ RuntimeDirectoryPreserve=
211✓ RuntimeDirectoryMode=
212✓ RuntimeDirectory=
213✓ StateDirectoryMode=
214✓ StateDirectory=
215✓ CacheDirectoryMode=
216✓ CacheDirectory=
217✓ LogsDirectoryMode=
218✓ LogsDirectory=
219✓ ConfigurationDirectoryMode=
220✓ ConfigurationDirectory=
221✓ PAMName=
222✓ IgnoreSIGPIPE=
223✓ UtmpIdentifier=
224✓ UtmpMode=
225✓ SELinuxContext=
226✓ SmackProcessLabel=
227✓ AppArmorProfile=
228✓ Slice=
229```
230
231## Resource Control Settings
232
233All cgroup/resource control settings are available for transient units
234
235```
236✓ CPUAccounting=
237✓ CPUWeight=
238✓ StartupCPUWeight=
239✓ CPUShares=
240✓ StartupCPUShares=
241✓ CPUQuota=
10f28641 242✓ CPUQuotaPeriodSec=
047f5d63 243✓ AllowedCPUs=
c93a7d4a 244✓ StartupAllowedCPUs=
047f5d63 245✓ AllowedMemoryNodes=
c93a7d4a 246✓ StartupAllowedMemoryNodes=
91d2f195 247✓ MemoryAccounting=
acdb4b52 248✓ DefaultMemoryMin=
48422635 249✓ MemoryMin=
c52db42b 250✓ DefaultMemoryLow=
91d2f195
LP
251✓ MemoryLow=
252✓ MemoryHigh=
253✓ MemoryMax=
254✓ MemorySwapMax=
255✓ MemoryLimit=
256✓ DeviceAllow=
257✓ DevicePolicy=
258✓ IOAccounting=
259✓ IOWeight=
260✓ StartupIOWeight=
261✓ IODeviceWeight=
262✓ IOReadBandwidthMax=
263✓ IOWriteBandwidthMax=
264✓ IOReadIOPSMax=
265✓ IOWriteIOPSMax=
266✓ BlockIOAccounting=
267✓ BlockIOWeight=
268✓ StartupBlockIOWeight=
269✓ BlockIODeviceWeight=
270✓ BlockIOReadBandwidth=
271✓ BlockIOWriteBandwidth=
272✓ TasksAccounting=
273✓ TasksMax=
274✓ Delegate=
25cc30c4 275✓ DisableControllers=
91d2f195
LP
276✓ IPAccounting=
277✓ IPAddressAllow=
278✓ IPAddressDeny=
4d824a4e
AZ
279✓ ManagedOOMSwap=
280✓ ManagedOOMMemoryPressure=
0a9f9344 281✓ ManagedOOMMemoryPressureLimit=
4e806bfa 282✓ ManagedOOMPreference=
91d2f195
LP
283```
284
285## Process Killing Settings
286
287All process killing settings are available for transient units:
288
289```
290✓ SendSIGKILL=
291✓ SendSIGHUP=
292✓ KillMode=
293✓ KillSignal=
b096d14c 294✓ RestartKillSignal=
fbb48d4c 295✓ FinalKillSignal=
c87700a1 296✓ WatchdogSignal=
91d2f195
LP
297```
298
299## Service Unit Settings
300
c0d64e0e 301Most service unit settings are available for transient units.
91d2f195
LP
302
303```
830ffbce 304✓ BusName=
31cd5f63 305✓ ExecCondition=
830ffbce 306✓ ExecReload=
91d2f195
LP
307✓ ExecStart=
308✓ ExecStartPost=
830ffbce 309✓ ExecStartPre=
91d2f195
LP
310✓ ExecStop=
311✓ ExecStopPost=
596e4470 312✓ ExitType=
830ffbce 313✓ FileDescriptorStoreMax=
c0d64e0e 314✓ GuessMainPID=
91d2f195 315✓ NonBlocking=
91d2f195 316✓ NotifyAccess=
830ffbce
YW
317✓ OOMPolicy=
318✓ PIDFile=
319✓ RemainAfterExit=
320✓ Restart=
321✓ RestartForceExitStatus=
322✓ RestartPreventExitStatus=
323✓ RestartSec=
324✓ RootDirectoryStartOnly=
325✓ RuntimeMaxSec=
5918a933 326✓ RuntimeRandomizedExtraSec=
91d2f195 327 Sockets=
830ffbce
YW
328✓ SuccessExitStatus=
329✓ TimeoutAbortSec=
330✓ TimeoutSec=
331✓ TimeoutStartFailureMode=
332✓ TimeoutStartSec=
333✓ TimeoutStopFailureMode=
334✓ TimeoutStopSec=
335✓ Type=
c0d64e0e
YW
336✓ USBFunctionDescriptors=
337✓ USBFunctionStrings=
830ffbce 338✓ WatchdogSec=
91d2f195
LP
339```
340
341## Mount Unit Settings
342
c0d64e0e 343All mount unit settings are available to transient units:
91d2f195
LP
344
345```
346✓ What=
c0d64e0e 347✓ Where=
91d2f195
LP
348✓ Options=
349✓ Type=
c0d64e0e
YW
350✓ TimeoutSec=
351✓ DirectoryMode=
352✓ SloppyOptions=
353✓ LazyUnmount=
354✓ ForceUnmount=
75f4bd7f 355✓ ReadWriteOnly=
91d2f195
LP
356```
357
358## Automount Unit Settings
359
c0d64e0e 360All automount unit setting is available to transient units:
91d2f195
LP
361
362```
c0d64e0e
YW
363✓ Where=
364✓ DirectoryMode=
91d2f195
LP
365✓ TimeoutIdleSec=
366```
367
368## Timer Unit Settings
369
370Most timer unit settings are available to transient units.
371
372```
91d2f195
LP
373✓ OnActiveSec=
374✓ OnBootSec=
efebb613
LP
375✓ OnCalendar=
376✓ OnClockChange=
91d2f195 377✓ OnStartupSec=
0810e396 378✓ OnTimezoneChange=
91d2f195
LP
379✓ OnUnitActiveSec=
380✓ OnUnitInactiveSec=
d852bda1 381✓ Persistent=
91d2f195
LP
382✓ WakeSystem=
383✓ RemainAfterElapse=
384✓ AccuracySec=
385✓ RandomizedDelaySec=
acf24a1a 386✓ FixedRandomDelay=
91d2f195
LP
387 Unit=
388```
389
390## Slice Unit Settings
391
392Slice units are fully supported as transient units, but they have no settings
393of their own beyond the generic unit and resource control settings.
394
395## Scope Unit Settings
396
397Scope units are fully supported as transient units (in fact they only exist as
c0d64e0e
YW
398such).
399
400```
9ed7de60 401✓ RuntimeMaxSec=
5918a933 402✓ RuntimeRandomizedExtraSec=
c0d64e0e
YW
403✓ TimeoutStopSec=
404```
91d2f195
LP
405
406## Socket Unit Settings
407
8a211c8e 408Most socket unit settings are available to transient units.
91d2f195
LP
409
410```
8a211c8e
YW
411✓ ListenStream=
412✓ ListenDatagram=
413✓ ListenSequentialPacket=
414✓ ListenFIFO=
415✓ ListenNetlink=
416✓ ListenSpecial=
417✓ ListenMessageQueue=
418✓ ListenUSBFunction=
419✓ SocketProtocol=
420✓ BindIPv6Only=
421✓ Backlog=
422✓ BindToDevice=
423✓ ExecStartPre=
424✓ ExecStartPost=
425✓ ExecStopPre=
426✓ ExecStopPost=
427✓ TimeoutSec=
428✓ SocketUser=
429✓ SocketGroup=
430✓ SocketMode=
431✓ DirectoryMode=
432✓ Accept=
3e5f04bf 433✓ FlushPending=
8a211c8e
YW
434✓ Writable=
435✓ MaxConnections=
436✓ MaxConnectionsPerSource=
437✓ KeepAlive=
438✓ KeepAliveTimeSec=
439✓ KeepAliveIntervalSec=
440✓ KeepAliveProbes=
441✓ DeferAcceptSec=
442✓ NoDelay=
443✓ Priority=
444✓ ReceiveBuffer=
445✓ SendBuffer=
446✓ IPTOS=
447✓ IPTTL=
448✓ Mark=
449✓ PipeSize=
450✓ FreeBind=
451✓ Transparent=
452✓ Broadcast=
453✓ PassCredentials=
454✓ PassSecurity=
a3d19f5d 455✓ PassPacketInfo=
8a211c8e
YW
456✓ TCPCongestion=
457✓ ReusePort=
458✓ MessageQueueMaxMessages=
459✓ MessageQueueMessageSize=
460✓ RemoveOnStop=
461✓ Symlinks=
462✓ FileDescriptorName=
91d2f195 463 Service=
8a211c8e
YW
464✓ TriggerLimitIntervalSec=
465✓ TriggerLimitBurst=
466✓ SmackLabel=
467✓ SmackLabelIPIn=
468✓ SmackLabelIPOut=
469✓ SELinuxContextFromNet=
91d2f195
LP
470```
471
472## Swap Unit Settings
473
474Swap units are currently not available at all as transient units:
475
476```
477 What=
478 Priority=
479 Options=
480 TimeoutSec=
481```
482
483## Path Unit Settings
484
d852bda1 485Most path unit settings are available to transient units.
91d2f195
LP
486
487```
d852bda1
YW
488✓ PathExists=
489✓ PathExistsGlob=
490✓ PathChanged=
491✓ PathModified=
492✓ DirectoryNotEmpty=
91d2f195 493 Unit=
d852bda1
YW
494✓ MakeDirectory=
495✓ DirectoryMode=
91d2f195
LP
496```
497
498## Install Section
499
500The `[Install]` section is currently not available at all for transient units, and it probably doesn't even make sense.
501
502```
503 Alias=
504 WantedBy=
505 RequiredBy=
506 Also=
507 DefaultInstance=
508```