]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - doc/TRANSIENT-SETTINGS.md
docs: move doc/ to docs/
[thirdparty/systemd.git] / doc / TRANSIENT-SETTINGS.md
diff --git a/doc/TRANSIENT-SETTINGS.md b/doc/TRANSIENT-SETTINGS.md
deleted file mode 100644 (file)
index bb13cfd..0000000
+++ /dev/null
@@ -1,457 +0,0 @@
-# What settings are currently available for transient units?
-
-Our intention is to make all settings that are available as unit file settings
-also available for transient units, through the D-Bus API. At the moment, some
-unit types (device, swap, target) are not supported at all via unit types,
-but most others are pretty well supported, with some notable omissions.
-
-The lists below contain all settings currently available in unit files. The
-ones currently available in transient units are prefixed with `✓`.
-
-## Generic Unit Settings
-
-Most generic unit settings are available for transient units.
-
-```
-✓ Description=
-✓ Documentation=
-✓ SourcePath=
-✓ Requires=
-✓ Requisite=
-✓ Wants=
-✓ BindsTo=
-✓ Conflicts=
-✓ Before=
-✓ After=
-✓ OnFailure=
-✓ PropagatesReloadTo=
-✓ ReloadPropagatedFrom=
-✓ PartOf=
-✓ JoinsNamespaceOf=
-✓ RequiresMountsFor=
-✓ StopWhenUnneeded=
-✓ RefuseManualStart=
-✓ RefuseManualStop=
-✓ AllowIsolate=
-✓ DefaultDependencies=
-✓ OnFailureJobMode=
-✓ IgnoreOnIsolate=
-✓ JobTimeoutSec=
-✓ JobRunningTimeoutSec=
-✓ JobTimeoutAction=
-✓ JobTimeoutRebootArgument=
-✓ StartLimitIntervalSec=SECONDS
-✓ StartLimitBurst=UNSIGNED
-✓ StartLimitAction=ACTION
-✓ FailureAction=
-✓ SuccessAction=
-✓ AddRef=
-✓ RebootArgument=STRING
-✓ ConditionPathExists=
-✓ ConditionPathExistsGlob=
-✓ ConditionPathIsDirectory=
-✓ ConditionPathIsSymbolicLink=
-✓ ConditionPathIsMountPoint=
-✓ ConditionPathIsReadWrite=
-✓ ConditionDirectoryNotEmpty=
-✓ ConditionFileNotEmpty=
-✓ ConditionFileIsExecutable=
-✓ ConditionNeedsUpdate=
-✓ ConditionFirstBoot=
-✓ ConditionKernelCommandLine=
-✓ ConditionKernelVersion=
-✓ ConditionArchitecture=
-✓ ConditionVirtualization=
-✓ ConditionSecurity=
-✓ ConditionCapability=
-✓ ConditionHost=
-✓ ConditionACPower=
-✓ ConditionUser=
-✓ ConditionGroup=
-✓ ConditionControlGroupController=
-✓ AssertPathExists=
-✓ AssertPathExistsGlob=
-✓ AssertPathIsDirectory=
-✓ AssertPathIsSymbolicLink=
-✓ AssertPathIsMountPoint=
-✓ AssertPathIsReadWrite=
-✓ AssertDirectoryNotEmpty=
-✓ AssertFileNotEmpty=
-✓ AssertFileIsExecutable=
-✓ AssertNeedsUpdate=
-✓ AssertFirstBoot=
-✓ AssertKernelCommandLine=
-✓ AssertKernelVersion=
-✓ AssertArchitecture=
-✓ AssertVirtualization=
-✓ AssertSecurity=
-✓ AssertCapability=
-✓ AssertHost=
-✓ AssertACPower=
-✓ AssertUser=
-✓ AssertGroup=
-✓ AssertControlGroupController=
-✓ CollectMode=
-```
-
-## Execution-Related Settings
-
-All execution-related settings are available for transient units.
-
-```
-✓ WorkingDirectory=
-✓ RootDirectory=
-✓ RootImage=
-✓ User=
-✓ Group=
-✓ SupplementaryGroups=
-✓ Nice=
-✓ OOMScoreAdjust=
-✓ IOSchedulingClass=
-✓ IOSchedulingPriority=
-✓ CPUSchedulingPolicy=
-✓ CPUSchedulingPriority=
-✓ CPUSchedulingResetOnFork=
-✓ CPUAffinity=
-✓ UMask=
-✓ Environment=
-✓ EnvironmentFile=
-✓ PassEnvironment=
-✓ UnsetEnvironment=
-✓ DynamicUser=
-✓ RemoveIPC=
-✓ StandardInput=
-✓ StandardOutput=
-✓ StandardError=
-✓ StandardInputText=
-✓ StandardInputData=
-✓ TTYPath=
-✓ TTYReset=
-✓ TTYVHangup=
-✓ TTYVTDisallocate=
-✓ SyslogIdentifier=
-✓ SyslogFacility=
-✓ SyslogLevel=
-✓ SyslogLevelPrefix=
-✓ LogLevelMax=
-✓ LogExtraFields=
-✓ SecureBits=
-✓ CapabilityBoundingSet=
-✓ AmbientCapabilities=
-✓ TimerSlackNSec=
-✓ NoNewPrivileges=
-✓ KeyringMode=
-✓ SystemCallFilter=
-✓ SystemCallArchitectures=
-✓ SystemCallErrorNumber=
-✓ MemoryDenyWriteExecute=
-✓ RestrictNamespaces=
-✓ RestrictRealtime=
-✓ RestrictAddressFamilies=
-✓ LockPersonality=
-✓ LimitCPU=
-✓ LimitFSIZE=
-✓ LimitDATA=
-✓ LimitSTACK=
-✓ LimitCORE=
-✓ LimitRSS=
-✓ LimitNOFILE=
-✓ LimitAS=
-✓ LimitNPROC=
-✓ LimitMEMLOCK=
-✓ LimitLOCKS=
-✓ LimitSIGPENDING=
-✓ LimitMSGQUEUE=
-✓ LimitNICE=
-✓ LimitRTPRIO=
-✓ LimitRTTIME=
-✓ ReadWritePaths=
-✓ ReadOnlyPaths=
-✓ InaccessiblePaths=
-✓ BindPaths=
-✓ BindReadOnlyPaths=
-✓ TemporaryFileSystem=
-✓ PrivateTmp=
-✓ PrivateDevices=
-✓ PrivateMounts=
-✓ ProtectKernelTunables=
-✓ ProtectKernelModules=
-✓ ProtectControlGroups=
-✓ PrivateNetwork=
-✓ PrivateUsers=
-✓ ProtectSystem=
-✓ ProtectHome=
-✓ MountFlags=
-✓ MountAPIVFS=
-✓ Personality=
-✓ RuntimeDirectoryPreserve=
-✓ RuntimeDirectoryMode=
-✓ RuntimeDirectory=
-✓ StateDirectoryMode=
-✓ StateDirectory=
-✓ CacheDirectoryMode=
-✓ CacheDirectory=
-✓ LogsDirectoryMode=
-✓ LogsDirectory=
-✓ ConfigurationDirectoryMode=
-✓ ConfigurationDirectory=
-✓ PAMName=
-✓ IgnoreSIGPIPE=
-✓ UtmpIdentifier=
-✓ UtmpMode=
-✓ SELinuxContext=
-✓ SmackProcessLabel=
-✓ AppArmorProfile=
-✓ Slice=
-```
-
-## Resource Control Settings
-
-All cgroup/resource control settings are available for transient units
-
-```
-✓ CPUAccounting=
-✓ CPUWeight=
-✓ StartupCPUWeight=
-✓ CPUShares=
-✓ StartupCPUShares=
-✓ CPUQuota=
-✓ MemoryAccounting=
-✓ MemoryMin=
-✓ MemoryLow=
-✓ MemoryHigh=
-✓ MemoryMax=
-✓ MemorySwapMax=
-✓ MemoryLimit=
-✓ DeviceAllow=
-✓ DevicePolicy=
-✓ IOAccounting=
-✓ IOWeight=
-✓ StartupIOWeight=
-✓ IODeviceWeight=
-✓ IOReadBandwidthMax=
-✓ IOWriteBandwidthMax=
-✓ IOReadIOPSMax=
-✓ IOWriteIOPSMax=
-✓ BlockIOAccounting=
-✓ BlockIOWeight=
-✓ StartupBlockIOWeight=
-✓ BlockIODeviceWeight=
-✓ BlockIOReadBandwidth=
-✓ BlockIOWriteBandwidth=
-✓ TasksAccounting=
-✓ TasksMax=
-✓ Delegate=
-✓ IPAccounting=
-✓ IPAddressAllow=
-✓ IPAddressDeny=
-```
-
-## Process Killing Settings
-
-All process killing settings are available for transient units:
-
-```
-✓ SendSIGKILL=
-✓ SendSIGHUP=
-✓ KillMode=
-✓ KillSignal=
-✓ FinalKillSignal=
-```
-
-## Service Unit Settings
-
-Most service unit settings are available for transient units.
-
-```
-✓ PIDFile=
-✓ ExecStartPre=
-✓ ExecStart=
-✓ ExecStartPost=
-✓ ExecReload=
-✓ ExecStop=
-✓ ExecStopPost=
-✓ RestartSec=
-✓ TimeoutStartSec=
-✓ TimeoutStopSec=
-✓ TimeoutSec=
-✓ RuntimeMaxSec=
-✓ WatchdogSec=
-✓ Type=
-✓ Restart=
-✓ PermissionsStartOnly=
-✓ RootDirectoryStartOnly=
-✓ RemainAfterExit=
-✓ GuessMainPID=
-✓ RestartPreventExitStatus=
-✓ RestartForceExitStatus=
-✓ SuccessExitStatus=
-✓ NonBlocking=
-✓ BusName=
-✓ FileDescriptorStoreMax=
-✓ NotifyAccess=
-  Sockets=
-✓ USBFunctionDescriptors=
-✓ USBFunctionStrings=
-```
-
-## Mount Unit Settings
-
-All mount unit settings are available to transient units:
-
-```
-✓ What=
-✓ Where=
-✓ Options=
-✓ Type=
-✓ TimeoutSec=
-✓ DirectoryMode=
-✓ SloppyOptions=
-✓ LazyUnmount=
-✓ ForceUnmount=
-```
-
-## Automount Unit Settings
-
-All automount unit setting is available to transient units:
-
-```
-✓ Where=
-✓ DirectoryMode=
-✓ TimeoutIdleSec=
-```
-
-## Timer Unit Settings
-
-Most timer unit settings are available to transient units.
-
-```
-✓ OnCalendar=
-✓ OnActiveSec=
-✓ OnBootSec=
-✓ OnStartupSec=
-✓ OnUnitActiveSec=
-✓ OnUnitInactiveSec=
-✓ Persistent=
-✓ WakeSystem=
-✓ RemainAfterElapse=
-✓ AccuracySec=
-✓ RandomizedDelaySec=
-  Unit=
-```
-
-## Slice Unit Settings
-
-Slice units are fully supported as transient units, but they have no settings
-of their own beyond the generic unit and resource control settings.
-
-## Scope Unit Settings
-
-Scope units are fully supported as transient units (in fact they only exist as
-such).
-
-```
-✓ TimeoutStopSec=
-```
-
-## Socket Unit Settings
-
-Most socket unit settings are available to transient units.
-
-```
-✓ ListenStream=
-✓ ListenDatagram=
-✓ ListenSequentialPacket=
-✓ ListenFIFO=
-✓ ListenNetlink=
-✓ ListenSpecial=
-✓ ListenMessageQueue=
-✓ ListenUSBFunction=
-✓ SocketProtocol=
-✓ BindIPv6Only=
-✓ Backlog=
-✓ BindToDevice=
-✓ ExecStartPre=
-✓ ExecStartPost=
-✓ ExecStopPre=
-✓ ExecStopPost=
-✓ TimeoutSec=
-✓ SocketUser=
-✓ SocketGroup=
-✓ SocketMode=
-✓ DirectoryMode=
-✓ Accept=
-✓ Writable=
-✓ MaxConnections=
-✓ MaxConnectionsPerSource=
-✓ KeepAlive=
-✓ KeepAliveTimeSec=
-✓ KeepAliveIntervalSec=
-✓ KeepAliveProbes=
-✓ DeferAcceptSec=
-✓ NoDelay=
-✓ Priority=
-✓ ReceiveBuffer=
-✓ SendBuffer=
-✓ IPTOS=
-✓ IPTTL=
-✓ Mark=
-✓ PipeSize=
-✓ FreeBind=
-✓ Transparent=
-✓ Broadcast=
-✓ PassCredentials=
-✓ PassSecurity=
-✓ TCPCongestion=
-✓ ReusePort=
-✓ MessageQueueMaxMessages=
-✓ MessageQueueMessageSize=
-✓ RemoveOnStop=
-✓ Symlinks=
-✓ FileDescriptorName=
-  Service=
-✓ TriggerLimitIntervalSec=
-✓ TriggerLimitBurst=
-✓ SmackLabel=
-✓ SmackLabelIPIn=
-✓ SmackLabelIPOut=
-✓ SELinuxContextFromNet=
-```
-
-## Swap Unit Settings
-
-Swap units are currently not available at all as transient units:
-
-```
-  What=
-  Priority=
-  Options=
-  TimeoutSec=
-```
-
-## Path Unit Settings
-
-Most path unit settings are available to transient units.
-
-```
-✓ PathExists=
-✓ PathExistsGlob=
-✓ PathChanged=
-✓ PathModified=
-✓ DirectoryNotEmpty=
-  Unit=
-✓ MakeDirectory=
-✓ DirectoryMode=
-```
-
-## Install Section
-
-The `[Install]` section is currently not available at all for transient units, and it probably doesn't even make sense.
-
-```
-  Alias=
-  WantedBy=
-  RequiredBy=
-  Also=
-  DefaultInstance=
-```