diff --git a/man/machinectl.xml b/man/machinectl.xml index 8bebdcf9a1..38cf919a78 100644 --- a/man/machinectl.xml +++ b/man/machinectl.xml @@ -428,6 +428,9 @@ user may be selected. Use to set environment variables for the executed process. + Note that machinectl shell does not propagate the exit code/status of the invoked + shell process. Use systemd-run instead if that information is required (see below). + When using the shell command without arguments, (thus invoking the executed shell or command on the local host), it is in many ways similar to a - Note that - systemd-run1 - may be used in place of the shell command, - and allows more detailed, low-level configuration of the - invoked unit. However, it is frequently more privileged than - the shell command. + Note that systemd-run1 + with its switch may be used in place of the machinectl shell + command, and allows non-interactive operation, more detailed and low-level configuration of the invoked unit, + as well as access to runtime and exit code/status information of the invoked shell process. In particular, use + systemd-run's switch to propagate exit status information of the + invoked process. Use systemd-run's switch for acquiring an + interactive shell, similar to machinectl shell. In general, systemd-run + is preferable for scripting purposes. However, note that systemd-run might require higher + privileges than machinectl shell. diff --git a/man/systemd-run.xml b/man/systemd-run.xml index 2ad8cb0835..8d881f15d6 100644 --- a/man/systemd-run.xml +++ b/man/systemd-run.xml @@ -221,7 +221,12 @@ When invoking the command, the transient service connects its standard input and output to the terminal systemd-run is invoked on, via a pseudo TTY device. This allows running binaries - that expect interactive user input as services, such as interactive command shells. + that expect interactive user input as services, such as interactive command shells. + + Note that + machinectl1's + shell command is usually a better alternative for requesting a new, interactive login + session on the local host or a local container.