<para>Properties exposing time values are usually encoded in microseconds (usec) on the bus, even if
their corresponding settings in the unit files are in seconds.</para>
- <para>In contrast to most of the other services of the systemd suite, PID 1 does not use PolicyKit for
- controlling access to privileged operations, but relies exclusively on the low-level D-Bus policy
- language. (This is done in order to avoid a cyclic dependency between PolicyKit and systemd/PID 1.) This
+ <para>In contrast to most of the other services of the systemd suite, PID 1 does not use
+ <ulink url="https://www.freedesktop.org/software/polkit/docs/latest/">polkit</ulink>
+ for controlling access to privileged operations, but relies exclusively on the low-level D-Bus policy
+ language. (This is done in order to avoid a cyclic dependency between polkit and systemd/PID 1.) This
means that sensitive operations exposed by PID 1 on the bus are generally not available to unprivileged
processes directly. However, some operations (such as shutdown/reboot/suspend) are made available through the D-Bus
API of logind, see
<para>The main entry point object is available on the fixed
<constant>/org/freedesktop/systemd1</constant> object path:</para>
- <programlisting>
-$ gdbus introspect --system \
- --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1" interface="org.freedesktop.systemd1.Manager">
node /org/freedesktop/systemd1 {
interface org.freedesktop.systemd1.Manager {
methods:
in i signal);
CleanUnit(in s name,
in as mask);
+ FreezeUnit(in s name);
+ ThawUnit(in s name);
ResetFailedUnit(in s name);
SetUnitProperties(in s name,
in b runtime,
CancelJob(in u id);
ClearJobs();
ResetFailed();
+ SetShowStatus(in s mode);
ListUnits(out a(ssssssouso) units);
ListUnitsFiltered(in as states,
out a(ssssssouso) units);
<!--method CleanUnit is not documented!-->
+ <!--method FreezeUnit is not documented!-->
+
+ <!--method ThawUnit is not documented!-->
+
<!--method RefUnit is not documented!-->
<!--method UnrefUnit is not documented!-->
<!--method GetJobBefore is not documented!-->
+ <!--method SetShowStatus is not documented!-->
+
<!--method ListUnitsFiltered is not documented!-->
<!--method ListUnitsByPatterns is not documented!-->
<variablelist class="dbus-method" generated="True" extra-ref="CleanUnit()"/>
+ <variablelist class="dbus-method" generated="True" extra-ref="FreezeUnit()"/>
+
+ <variablelist class="dbus-method" generated="True" extra-ref="ThawUnit()"/>
+
<variablelist class="dbus-method" generated="True" extra-ref="ResetFailedUnit()"/>
<variablelist class="dbus-method" generated="True" extra-ref="SetUnitProperties()"/>
<variablelist class="dbus-method" generated="True" extra-ref="ResetFailed()"/>
+ <variablelist class="dbus-method" generated="True" extra-ref="SetShowStatus()"/>
+
<variablelist class="dbus-method" generated="True" extra-ref="ListUnits()"/>
<variablelist class="dbus-method" generated="True" extra-ref="ListUnitsFiltered()"/>
<para><function>SetUnitProperties()</function> may be used to modify certain unit properties at
runtime. Not all properties may be changed at runtime, but many resource management settings (primarily
those listed in
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
may. The changes are applied instantly and stored on disk for future boots, unless
<varname>runtime</varname> is true, in which case the settings only apply until the next
reboot. <varname>name</varname> is the name of the unit to modify. <varname>properties</varname> are
<title>Security</title>
<para>Read access is generally granted to all clients. Additionally, for unprivileged clients, some
- operations are allowed through the PolicyKit privilege system. Operations which modify unit state
+ operations are allowed through the polkit privilege system. Operations which modify unit state
(<function>StartUnit()</function>, <function>StopUnit()</function>, <function>KillUnit()</function>,
- <function>RestartUnit()</function> and similar, <function>SetProperty</function>) require
+ <function>RestartUnit()</function> and similar, <function>SetProperty()</function>) require
<interfacename>org.freedesktop.systemd1.manage-units</interfacename>. Operations which modify unit file
enablement state (<function>EnableUnitFiles()</function>, <function>DisableUnitFiles()</function>,
<function>ReenableUnitFiles()</function>, <function>LinkUnitFiles()</function>,
<function>PresetUnitFiles</function>, <function>MaskUnitFiles</function>, and similar) require
- <interfacename>org.freedesktop.systemd1.manage-unit-files</interfacename>). Operations which modify the
+ <interfacename>org.freedesktop.systemd1.manage-unit-files</interfacename>. Operations which modify the
exported environment (<function>SetEnvironment()</function>, <function>UnsetEnvironment()</function>,
<function>UnsetAndSetEnvironment()</function>) require
<interfacename>org.freedesktop.systemd1.set-environment</interfacename>. <function>Reload()</function>
<refsect1>
<title>Unit Objects</title>
- <programlisting interface="org.freedesktop.systemd1.Unit">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice" interface="org.freedesktop.systemd1.Unit">
node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
interface org.freedesktop.systemd1.Unit {
methods:
Ref();
Unref();
Clean(in as mask);
+ Freeze();
+ Thaw();
properties:
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s Id = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s LoadState = '...';
readonly s ActiveState = '...';
+ readonly s FreezerState = '...';
readonly s SubState = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s FragmentPath = '...';
readonly b CanIsolate = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly as CanClean = ['...', ...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly b CanFreeze = ...;
readonly (uo) Job = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly b StopWhenUnneeded = ...;
interface org.freedesktop.DBus.Peer { ... };
interface org.freedesktop.DBus.Introspectable { ... };
interface org.freedesktop.DBus.Properties { ... };
- interface org.freedesktop.systemd1.Service { ... };
};
</programlisting>
<!--method Clean is not documented!-->
+ <!--method Freeze is not documented!-->
+
+ <!--method Thaw is not documented!-->
+
<!--property PartOf is not documented!-->
<!--property RequisiteOf is not documented!-->
<!--property JoinsNamespaceOf is not documented!-->
+ <!--property FreezerState is not documented!-->
+
<!--property DropInPaths is not documented!-->
<!--property UnitFilePreset is not documented!-->
<!--property CanClean is not documented!-->
+ <!--property CanFreeze is not documented!-->
+
<!--property OnFailureJobMode is not documented!-->
<!--property JobRunningTimeoutUSec is not documented!-->
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Service"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Service"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-method" generated="True" extra-ref="Start()"/>
<variablelist class="dbus-method" generated="True" extra-ref="Clean()"/>
+ <variablelist class="dbus-method" generated="True" extra-ref="Freeze()"/>
+
+ <variablelist class="dbus-method" generated="True" extra-ref="Thaw()"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="Id"/>
<variablelist class="dbus-property" generated="True" extra-ref="Names"/>
<variablelist class="dbus-property" generated="True" extra-ref="ActiveState"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="FreezerState"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="SubState"/>
<variablelist class="dbus-property" generated="True" extra-ref="FragmentPath"/>
<variablelist class="dbus-property" generated="True" extra-ref="CanClean"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="CanFreeze"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="Job"/>
<variablelist class="dbus-property" generated="True" extra-ref="StopWhenUnneeded"/>
allowed for everyone. All operations are allowed for clients with the
<constant>CAP_SYS_ADMIN</constant> capability or when the
<interfacename>org.freedesktop.systemd1.manage-units</interfacename> privilege is granted by
- PolicyKit.</para>
+ polkit.</para>
</refsect2>
</refsect1>
<interfacename>org.freedesktop.systemd1.Service</interfacename> interface (described here) in addition to
the generic <interfacename>org.freedesktop.systemd1.Unit</interfacename> interface (see above).</para>
- <programlisting interface="org.freedesktop.systemd1.Service">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice" interface="org.freedesktop.systemd1.Service">
node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
interface org.freedesktop.systemd1.Service {
methods:
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
readonly t TimeoutAbortUSec = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
- readonly t RuntimeMaxUSec = ...;
+ readonly s TimeoutStartFailureMode = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s TimeoutStopFailureMode = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly t RuntimeMaxUSec = ...;
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
readonly t WatchdogUSec = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
readonly t WatchdogTimestamp = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s RootImage = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly a(ss) RootImageOptions = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly ay RootHash = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootHashPath = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly ay RootHashSignature = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootHashSignaturePath = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootVerity = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly a(ssba(ss)) MountImages = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly i OOMScoreAdjust = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly t CoredumpFilter = ...;
<!--property TimeoutAbortUSec is not documented!-->
+ <!--property TimeoutStartFailureMode is not documented!-->
+
+ <!--property TimeoutStopFailureMode is not documented!-->
+
<!--property RuntimeMaxUSec is not documented!-->
<!--property WatchdogUSec is not documented!-->
<!--property RootImage is not documented!-->
+ <!--property RootImageOptions is not documented!-->
+
+ <!--property RootHash is not documented!-->
+
+ <!--property RootHashPath is not documented!-->
+
+ <!--property RootHashSignature is not documented!-->
+
+ <!--property RootHashSignaturePath is not documented!-->
+
+ <!--property RootVerity is not documented!-->
+
+ <!--property MountImages is not documented!-->
+
<!--property OOMScoreAdjust is not documented!-->
<!--property CoredumpFilter is not documented!-->
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Service"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Service"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Service"/>
+
<variablelist class="dbus-method" generated="True" extra-ref="GetProcesses()"/>
<variablelist class="dbus-method" generated="True" extra-ref="AttachProcesses()"/>
<variablelist class="dbus-property" generated="True" extra-ref="TimeoutAbortUSec"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="TimeoutStartFailureMode"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="TimeoutStopFailureMode"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="RuntimeMaxUSec"/>
<variablelist class="dbus-property" generated="True" extra-ref="WatchdogUSec"/>
<variablelist class="dbus-property" generated="True" extra-ref="RootImage"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="RootImageOptions"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHash"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashPath"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashSignature"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashSignaturePath"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootVerity"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="MountImages"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="OOMScoreAdjust"/>
<variablelist class="dbus-property" generated="True" extra-ref="CoredumpFilter"/>
<varname>ActiveState</varname> above). The following values are currently known:
<literal>success</literal> is set if the unit didn't fail. <literal>resources</literal> indicates that
not enough resources were available to fork off and execute the service
- processes. <literal>timeout</literal> indicates that a time-out occurred while executing a service
+ processes. <literal>timeout</literal> indicates that a timeout occurred while executing a service
operation. <literal>exit-code</literal> indicates that a service process exited with an unclean exit
code. <literal>signal</literal> indicates that a service process exited with an uncaught
signal. <literal>core-dump</literal> indicates that a service process exited uncleanly and dumped
<refsect1>
<title>Socket Unit Objects</title>
- <programlisting interface="org.freedesktop.systemd1.Socket">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket" interface="org.freedesktop.systemd1.Socket">
node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
interface org.freedesktop.systemd1.Socket {
methods:
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly b PassSecurity = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly b PassPacketInfo = ...;
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly b RemoveOnStop = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly a(ss) Listen = [...];
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s RootImage = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly a(ss) RootImageOptions = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly ay RootHash = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootHashPath = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly ay RootHashSignature = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootHashSignaturePath = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootVerity = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly a(ssba(ss)) MountImages = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly i OOMScoreAdjust = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly t CoredumpFilter = ...;
<!--property PassSecurity is not documented!-->
+ <!--property PassPacketInfo is not documented!-->
+
<!--property RemoveOnStop is not documented!-->
<!--property Listen is not documented!-->
<!--property RootImage is not documented!-->
+ <!--property RootImageOptions is not documented!-->
+
+ <!--property RootHash is not documented!-->
+
+ <!--property RootHashPath is not documented!-->
+
+ <!--property RootHashSignature is not documented!-->
+
+ <!--property RootHashSignaturePath is not documented!-->
+
+ <!--property RootVerity is not documented!-->
+
+ <!--property MountImages is not documented!-->
+
<!--property OOMScoreAdjust is not documented!-->
<!--property CoredumpFilter is not documented!-->
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Socket"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Socket"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Socket"/>
+
<variablelist class="dbus-method" generated="True" extra-ref="GetProcesses()"/>
<variablelist class="dbus-method" generated="True" extra-ref="AttachProcesses()"/>
<variablelist class="dbus-property" generated="True" extra-ref="PassSecurity"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="PassPacketInfo"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="RemoveOnStop"/>
<variablelist class="dbus-property" generated="True" extra-ref="Listen"/>
<variablelist class="dbus-property" generated="True" extra-ref="RootImage"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="RootImageOptions"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHash"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashPath"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashSignature"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashSignaturePath"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootVerity"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="MountImages"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="OOMScoreAdjust"/>
<variablelist class="dbus-property" generated="True" extra-ref="CoredumpFilter"/>
<refsect1>
<title>Target Unit Objects</title>
- <programlisting interface="org.freedesktop.systemd1.Target">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/basic_2etarget
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/basic_2etarget" interface="org.freedesktop.systemd1.Target">
node /org/freedesktop/systemd1/unit/basic_2etarget {
interface org.freedesktop.systemd1.Target {
};
<para>All device unit objects implement the <interfacename>org.freedesktop.systemd1.Device</interfacename> interface (described here)
in addition to the generic <interfacename>org.freedesktop.systemd1.Unit</interfacename> interface (see above).</para>
- <programlisting interface="org.freedesktop.systemd1.Device">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/dev_2dfoo_2edevice
-
-node /org/freedesktop/systemd1/unit/dev_2dfoo_2edevice {
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/dev_2dttyS0_2edevice" interface="org.freedesktop.systemd1.Device">
+node /org/freedesktop/systemd1/unit/dev_2dttyS0_2edevice {
interface org.freedesktop.systemd1.Device {
properties:
readonly s SysFSPath = '...';
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Device"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Device"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Device"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="SysFSPath"/>
<!--End of Autogenerated section-->
interface (described here) in addition to the generic
<interfacename>org.freedesktop.systemd1.Unit</interfacename> interface (see above).</para>
- <programlisting interface="org.freedesktop.systemd1.Mount">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/home_2emount
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/home_2emount" interface="org.freedesktop.systemd1.Mount">
node /org/freedesktop/systemd1/unit/home_2emount {
interface org.freedesktop.systemd1.Mount {
methods:
readonly b LazyUnmount = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly b ForceUnmount = ...;
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly b ReadWriteOnly = ...;
readonly s Result = '...';
readonly u UID = ...;
readonly u GID = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s RootImage = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly a(ss) RootImageOptions = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly ay RootHash = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootHashPath = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly ay RootHashSignature = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootHashSignaturePath = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootVerity = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly a(ssba(ss)) MountImages = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly i OOMScoreAdjust = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly t CoredumpFilter = ...;
<!--property ForceUnmount is not documented!-->
+ <!--property ReadWriteOnly is not documented!-->
+
<!--property UID is not documented!-->
<!--property GID is not documented!-->
<!--property RootImage is not documented!-->
+ <!--property RootImageOptions is not documented!-->
+
+ <!--property RootHash is not documented!-->
+
+ <!--property RootHashPath is not documented!-->
+
+ <!--property RootHashSignature is not documented!-->
+
+ <!--property RootHashSignaturePath is not documented!-->
+
+ <!--property RootVerity is not documented!-->
+
+ <!--property MountImages is not documented!-->
+
<!--property OOMScoreAdjust is not documented!-->
<!--property CoredumpFilter is not documented!-->
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Mount"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Mount"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Mount"/>
+
<variablelist class="dbus-method" generated="True" extra-ref="GetProcesses()"/>
<variablelist class="dbus-method" generated="True" extra-ref="AttachProcesses()"/>
<variablelist class="dbus-property" generated="True" extra-ref="ForceUnmount"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="ReadWriteOnly"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="Result"/>
<variablelist class="dbus-property" generated="True" extra-ref="UID"/>
<variablelist class="dbus-property" generated="True" extra-ref="RootImage"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="RootImageOptions"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHash"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashPath"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashSignature"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashSignaturePath"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootVerity"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="MountImages"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="OOMScoreAdjust"/>
<variablelist class="dbus-property" generated="True" extra-ref="CoredumpFilter"/>
<interfacename>org.freedesktop.systemd1.Automount</interfacename> interface (described here) in addition
to the generic <interfacename>org.freedesktop.systemd1.Unit</interfacename> interface (see above).</para>
- <programlisting interface="org.freedesktop.systemd1.Automount">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/proc_2dsys_2dfs_2dbinfmt_5fmisc_2eautomount
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/proc_2dsys_2dfs_2dbinfmt_5fmisc_2eautomount" interface="org.freedesktop.systemd1.Automount">
node /org/freedesktop/systemd1/unit/proc_2dsys_2dfs_2dbinfmt_5fmisc_2eautomount {
interface org.freedesktop.systemd1.Automount {
properties:
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Automount"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Automount"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Automount"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="Where"/>
<variablelist class="dbus-property" generated="True" extra-ref="DirectoryMode"/>
interface (described here) in addition to the generic
<interfacename>org.freedesktop.systemd1.Unit</interfacename> interface (see above).</para>
- <programlisting interface="org.freedesktop.systemd1.Timer">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/systemd_2dtmpfiles_2dclean_2etimer
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/systemd_2dtmpfiles_2dclean_2etimer" interface="org.freedesktop.systemd1.Timer">
node /org/freedesktop/systemd1/unit/systemd_2dtmpfiles_2dclean_2etimer {
interface org.freedesktop.systemd1.Timer {
properties:
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Timer"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Timer"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Timer"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="Unit"/>
<variablelist class="dbus-property" generated="True" extra-ref="TimersMonotonic"/>
interface (described here) in addition to the generic
<interfacename>org.freedesktop.systemd1.Unit</interfacename> interface (see above).</para>
- <programlisting interface="org.freedesktop.systemd1.Swap">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/dev_2dsda3_2eswap" interface="org.freedesktop.systemd1.Swap">
node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
interface org.freedesktop.systemd1.Swap {
methods:
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s RootImage = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly a(ss) RootImageOptions = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly ay RootHash = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootHashPath = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly ay RootHashSignature = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootHashSignaturePath = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly s RootVerity = '...';
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
+ readonly a(ssba(ss)) MountImages = [...];
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly i OOMScoreAdjust = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly t CoredumpFilter = ...;
<!--property RootImage is not documented!-->
+ <!--property RootImageOptions is not documented!-->
+
+ <!--property RootHash is not documented!-->
+
+ <!--property RootHashPath is not documented!-->
+
+ <!--property RootHashSignature is not documented!-->
+
+ <!--property RootHashSignaturePath is not documented!-->
+
+ <!--property RootVerity is not documented!-->
+
+ <!--property MountImages is not documented!-->
+
<!--property OOMScoreAdjust is not documented!-->
<!--property CoredumpFilter is not documented!-->
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Swap"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Swap"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Swap"/>
+
<variablelist class="dbus-method" generated="True" extra-ref="GetProcesses()"/>
<variablelist class="dbus-method" generated="True" extra-ref="AttachProcesses()"/>
<variablelist class="dbus-property" generated="True" extra-ref="RootImage"/>
+ <variablelist class="dbus-property" generated="True" extra-ref="RootImageOptions"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHash"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashPath"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashSignature"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootHashSignaturePath"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="RootVerity"/>
+
+ <variablelist class="dbus-property" generated="True" extra-ref="MountImages"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="OOMScoreAdjust"/>
<variablelist class="dbus-property" generated="True" extra-ref="CoredumpFilter"/>
<para>Most of the properties map directly to the corresponding settings in swap unit files. As mount
units invoke the
- <citerefentry><refentrytitle>swapon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command,
+ <citerefentry project="man-pages"><refentrytitle>swapon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command,
their bus objects include implicit <varname>ExecActivate</varname> (and similar) fields which contain
information about processes to execute. They also share most of the fields related to the execution
context that Service objects expose (see above). In addition to these properties there are the
following:</para>
<para><varname>ControlPID</varname> contains the PID of the currently running
- <citerefentry><refentrytitle>swapon</refentrytitle><manvolnum>8</manvolnum></citerefentry> or
- <citerefentry><refentrytitle>swapoff</refentrytitle><manvolnum>8</manvolnum></citerefentry> command if
- there is one running, otherwise 0.</para>
+ <citerefentry project="man-pages"><refentrytitle>swapon</refentrytitle><manvolnum>8</manvolnum></citerefentry> or
+ <citerefentry project="man-pages"><refentrytitle>swapoff</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+ command if there is one running, otherwise 0.</para>
<para><varname>Result</varname> contains a value explaining why a mount unit failed if it failed. It
can take the values <literal>success</literal>, <literal>resources</literal>,
<refsect1>
<title>Path Unit Objects</title>
- <programlisting interface="org.freedesktop.systemd1.Path">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/cups_2epath
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/cups_2epath" interface="org.freedesktop.systemd1.Path">
node /org/freedesktop/systemd1/unit/cups_2epath {
interface org.freedesktop.systemd1.Path {
properties:
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Path"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Path"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Path"/>
+
<variablelist class="dbus-property" generated="True" extra-ref="Unit"/>
<variablelist class="dbus-property" generated="True" extra-ref="Paths"/>
interface (described here) in addition to the generic
<interfacename>org.freedesktop.systemd1.Unit</interfacename> interface (see above).</para>
- <programlisting interface="org.freedesktop.systemd1.Slice">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/system_2eslice
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/system_2eslice" interface="org.freedesktop.systemd1.Slice">
node /org/freedesktop/systemd1/unit/system_2eslice {
interface org.freedesktop.systemd1.Slice {
methods:
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Slice"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Slice"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Slice"/>
+
<variablelist class="dbus-method" generated="True" extra-ref="GetProcesses()"/>
<variablelist class="dbus-method" generated="True" extra-ref="AttachProcesses()"/>
<refsect1>
<title>Scope Unit Objects</title>
- <para>All slice unit objects implement the <interfacename>org.freedesktop.systemd1.Scope</interfacename>
+ <para>All scope unit objects implement the <interfacename>org.freedesktop.systemd1.Scope</interfacename>
interface (described here) in addition to the generic
<interfacename>org.freedesktop.systemd1.Unit</interfacename> interface (see above).</para>
- <programlisting interface="org.freedesktop.systemd1.Scope">
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/unit/session_2d1_2escope
-
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/unit/session_2d1_2escope" interface="org.freedesktop.systemd1.Scope">
node /org/freedesktop/systemd1/unit/session_2d1_2escope {
interface org.freedesktop.systemd1.Scope {
methods:
<!--Autogenerated cross-references for systemd.directives, do not edit-->
- <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Scope"/>
-
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Scope"/>
<variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Unit"/>
+ <variablelist class="dbus-interface" generated="True" extra-ref="org.freedesktop.systemd1.Scope"/>
+
<variablelist class="dbus-method" generated="True" extra-ref="Abandon()"/>
<variablelist class="dbus-method" generated="True" extra-ref="GetProcesses()"/>
<para>Job objects encapsulate scheduled or running jobs. Each unit can have none or one jobs in the
execution queue. Each job is attached to exactly one unit.</para>
- <programlisting>
-$ gdbus introspect --system --dest org.freedesktop.systemd1 \
- --object-path /org/freedesktop/systemd1/job/1292
-
-node /org/freedesktop/systemd1/job/1292 {
+ <programlisting executable="systemd" node="/org/freedesktop/systemd1/job/666" interface="org.freedesktop.systemd1.Job">
+node /org/freedesktop/systemd1/job/666 {
interface org.freedesktop.systemd1.Job {
methods:
Cancel();
</refsect2>
</refsect1>
+ <refsect1>
+ <title>Examples</title>
+
+ <example>
+ <title>Introspect <interfacename>org.freedesktop.systemd1.Manager</interfacename> on the bus</title>
+
+ <programlisting>
+$ gdbus introspect --system \
+ --dest org.freedesktop.systemd1 \
+ --object-path /org/freedesktop/systemd1
+ </programlisting>
+ </example>
+
+ <example>
+ <title>Introspect a unit on the bus</title>
+
+ <programlisting>
+$ busctl introspect org.freedesktop.systemd1 \
+ $(busctl call org.freedesktop.systemd1 \
+ /org/freedesktop/systemd1 \
+ org.freedesktop.systemd1.Manager \
+ GetUnit s systemd-resolved.service | cut -d'"' -f2)
+ </programlisting>
+ </example>
+
+ <example>
+ <title>Introspect <interfacename>org.freedesktop.systemd1.Job</interfacename> on the bus</title>
+
+ <programlisting>
+$ gdbus introspect --system --dest org.freedesktop.systemd1 \
+ --object-path /org/freedesktop/systemd1/job/1292
+ </programlisting>
+ </example>
+ </refsect1>
+
<refsect1>
<title>Versioning</title>