summaryrefslogtreecommitdiff
path: root/man/systemctl.xml
AgeCommit message (Collapse)Author
2015-11-22core: allow 'SetUnitProperties()' to run on inactive units tooFranck Bui
'set-property' has been primarly designed to change some properties of *active* units. However it can easily work on inactive units as well. In that case changes are only saved in a drop-in for futur uses and changes will be effective when unit will be started. Actually it already works on inactive units but that was not documented and not fully supported. Indeed the inactive units had to be known by the manager otherwise it was reported as not loaded: $ systemctl status my-test.service * my-test.service - My Testing Unit Loaded: loaded (/etc/systemd/system/my-test.service; static; vendor preset: disabled) Drop-In: /etc/systemd/system/my-test.service.d Active: inactive (dead) $ systemctl set-property my-test.service MemoryLimit=1000000 Failed to set unit properties on my-test.service: Unit my-test.service is not loaded. [ Note: that the unit load state reported by the 'status' command might be confusing since it claimed the unit as loaded but 'set-property' reported the contrary. ] One can possibily workaround this by making the unit a dependency of another active unit so the manager will keep it around: $ systemctl add-wants multi-user.target my-test.service Created symlink from /etc/systemd/system/multi-user.target.wants/my-test.service to /etc/systemd/system/my-test.service. $ systemctl set-property my-test.service MemoryLimit=1000000 $ systemctl status my-test.service * my-test.service - My Testing Unit Loaded: loaded (/etc/systemd/system/my-test.service; enabled; vendor preset: disabled) Drop-In: /etc/systemd/system/my-test.service.d `-50-MemoryLimit.conf Active: inactive (dead) This patch simply forces 'SetUnitProperties()' to load the unit if it's not already the case. It also documents the fact that 'set-property' can be used on inactive units.
2015-11-13Merge pull request #1869 from poettering/kill-overridableMichal Schmidt
Remove support for RequiresOverridable= and RequisiteOverridable=
2015-11-12core: remove support for RequiresOverridable= and RequisiteOverridable=Lennart Poettering
As discussed at systemd.conf 2015 and on also raised on the ML: http://lists.freedesktop.org/archives/systemd-devel/2015-November/034880.html This removes the two XyzOverridable= unit dependencies, that were basically never used, and do not enhance user experience in any way. Most folks looking for the functionality this provides probably opt for the "ignore-dependencies" job mode, and that's probably a good idea. Hence, let's simplify systemd's dependency engine and remove these two dependency types (and their inverses). The unit file parser and the dbus property parser will now redirect the settings/properties to result in an equivalent non-overridable dependency. In the case of the unit file parser we generate a warning, to inform the user. The dbus properties for this unit type stay available on the unit objects, but they are now hidden from usual introspection and will always return the empty list when queried. This should provide enough compatibility for the few unit files that actually ever made use of this.
2015-11-12man: improve the unit file enable state table a bitLennart Poettering
2015-11-12install: follow unit file symlinks in /usr, but not /etc when looking for ↵Lennart Poettering
[Install] data Some distributions use alias unit files via symlinks in /usr to cover for legacy service names. With this change we'll allow "systemctl enable" on such aliases. Previously, our rule was that symlinks are user configuration that "systemctl enable" + "systemctl disable" creates and removes, while unit files is where the instructions to do so are store. As a result of the rule we'd never read install information through symlinks, since that would mix enablement state with installation instructions. Now, the new rule is that only symlinks inside of /etc are configuration. Unit files, and symlinks in /usr are now valid for installation instructions. This patch is quite a rework of the whole install logic, and makes the following addional changes: - Adds a complete test "test-instal-root" that tests the install logic pretty comprehensively. - Never uses canonicalize_file_name(), because that's incompatible with operation relative to a specific root directory. - unit_file_get_state() is reworked to return a proper error, and returns the state in a call-by-ref parameter. This cleans up confusion between the enum type and errno-like errors. - The new logic puts a limit on how long to follow unit file symlinks: it will do so only for 64 steps at max. - The InstallContext object's fields are renamed to will_process and has_processed (will_install and has_installed) since they are also used for deinstallation and all kinds of other operations. - The root directory is always verified before use. - install.c is reordered to place the exported functions together. - Stricter rules are followed when traversing symlinks: the unit suffix must say identical, and it's not allowed to link between regular units and templated units. - Various modernizations - The "invalid" unit file state has been renamed to "bad", in order to avoid confusion between UNIT_FILE_INVALID and _UNIT_FILE_STATE_INVALID. Given that the state should normally not be seen and is not documented this should not be a problematic change. The new name is now documented however. Fixes #1375, #1718, #1706
2015-11-10Remove snapshot unit typeZbigniew Jędrzejewski-Szmek
Snapshots were never useful or used for anything. Many systemd developers that I spoke to at systemd.conf2015, didn't even know they existed, so it is fairly safe to assume that this type can be deleted without harm. The fundamental problem with snapshots is that the state of the system is dynamic, devices come and go, users log in and out, timers fire... and restoring all units to some state from the past would "undo" those changes, which isn't really possible. Tested by creating a snapshot, running the new binary, and checking that the transition did not cause errors, and the snapshot is gone, and snapshots cannot be created anymore. New systemctl says: Unknown operation snapshot. Old systemctl says: Failed to create snapshot: Support for snapshots has been removed. IgnoreOnSnaphost settings are warned about and ignored: Support for option IgnoreOnSnapshot= has been removed and it is ignored http://lists.freedesktop.org/archives/systemd-devel/2015-November/034872.html
2015-11-06doc: correct orthography, word forms and missing/extraneous wordsJan Engelhardt
2015-11-06doc: correct punctuation and improve typography in documentationJan Engelhardt
2015-11-04systemctl: update documentation for --plain optionMark Theunissen
- Existing documentation did not mention that --plain omits the bullets and works on list-units and list-machines.
2015-09-30Merge pull request #1419 from keszybz/shell-completionLennart Poettering
Shell completion tweaks
2015-09-29systemctl: make "systemctl is-system-running" return "offline" if we are not ↵Lennart Poettering
booted with systemd This sounds like the better place to expose this than in "systemd-notify --booted". Also document the so far undocumented "unknown" state the command might return. And rearrange the table of states documented to be more like the one for "is-running". Also, don't document the precise exit code of this function, just say errors are reported != 0 or > 0...
2015-09-28systemctl: add --state=helpZbigniew Jędrzejewski-Szmek
This mirrors --type=help and simplifies completion scripts. The array of states is dense, so the is no need to check if the string is null.
2015-09-21containers: systemd exits with non-zero codeAlban Crequy
When a systemd service running in a container exits with a non-zero code, it can be useful to terminate the container immediately and get the exit code back to the host, when systemd-nspawn returns. This was not possible to do. This patch adds the following to make it possible: - Add a read-only "ExitCode" property on PID 1's "Manager" bus object. By default, it is 0 so the behaviour stays the same as previously. - Add a method "SetExitCode" on the same object. The method fails when called on baremetal: it is only allowed in containers or in user session. - Add support in systemctl to call "systemctl exit 42". It reuses the existing code for user session. - Add exit.target and systemd-exit.service to the system instance. - Change main() to actually call systemd-shutdown to exit() with the correct value. - Add verb 'exit' in systemd-shutdown with parameter --exit-code - Update systemctl manpage. I used the following to test it: | $ sudo rkt --debug --insecure-skip-verify run \ | --mds-register=false --local docker://busybox \ | --exec=/bin/chroot -- /proc/1/root \ | systemctl --force exit 42 | ... | Container rkt-895a0cba-5c66-4fa5-831c-e3f8ddc5810d failed with error code 42. | $ echo $? | 42 Fixes https://github.com/systemd/systemd/issues/1290
2015-09-21core: extend KillUnit() to return error when no unit was killedJan Synacek
2015-09-08systemctl: add ConsistsOf as the inverse of PartOfEvgeny Vereshchagin
2015-08-25logind/systemctl: introduce SetWallMessage and --messageJan Synacek
Enable unprivileged users to set wall message on a shutdown operation. When the message is set via the --message option, it is logged together with the default shutdown message. $ systemctl reboot --message "Applied kernel updates." $ journalctl -b -1 ... systemd-logind[27]: System is rebooting. (Applied kernel updates.) ...
2015-08-05man: update description of --quietZbigniew Jędrzejewski-Szmek
This description should provide the general rule, without listing all the subcommands, which is bound to get out of date too often. https://github.com/systemd/systemd/issues/216
2015-07-02man: information about available propertiesZbigniew Jędrzejewski-Szmek
https://bugzilla.redhat.com/show_bug.cgi?id=1144496
2015-06-29man: Remove instances of pseudo-English "resp."Andrew Eikum
Me again :) Just noticed one of these in a manpage and did another pass to clean them up. See 16dad32e437fdf2ffca03cc60a083d84bd31886f for explanation, though the link needs updating: <http://transblawg.eu/2004/02/26/resp-and-other-non-existent-english-wordsnicht-existente-englische-worter/>
2015-06-03systemctl: Use /usr/bin/editor if availableMichael Biebl
If the EDITOR environment variable is not set, the Debian policy recommends to use the /usr/bin/editor program as default editor. This file is managed via the dpkg alternatives mechanism and typically used in Debian/Ubuntu and derivatives to configure the default editor. See section 11.4 of the Debian policy [1]. Therefor prefer /usr/bin/editor over specific editors if available. [1] https://www.debian.org/doc/debian-policy/ch-customized-programs.html
2015-05-28man: use configured path for mount and umount binaries in manpagesFilipe Brandenburger
Export the MOUNT_PATH and UMOUNT_PATH variables as XML entities and use them in the systemctl.1 manpage instead of hardcoding the path in /usr/bin. Tested: - Ran ./configure ac_cv_path_MOUNT_PATH=/bin/mount (same for umount) and rebuilt the manpages, confirmed that the correct path was in man/systemctl.1 - Rebuilt man/systemd.directives.xml and the man pages derived from it, confirmed that the correct paths were there as well.
2015-05-28man: generate configured paths in manpagesFilipe Brandenburger
In particular, use /lib/systemd instead of /usr/lib/systemd in distributions like Debian which still have not adopted a /usr merge setup. Use XML entities from man/custom-entities.ent to replace configured paths while doing XSLT processing of the original XML files. There was precedent of some files (such as systemd.generator.xml) which were already using this approach. This addresses most of the (manual) fixes from this patch: http://anonscm.debian.org/cgit/pkg-systemd/systemd.git/tree/debian/patches/Fix-paths-in-man-pages.patch?h=experimental-220 The idea of using generic XML entities was presented here: http://lists.freedesktop.org/archives/systemd-devel/2015-May/032240.html This patch solves almost all the issues, with the exception of: - Path to /bin/mount and /bin/umount. - Generic statements about preference of /lib over /etc. These will be handled separately by follow up patches. Tested: - With default configure settings, ran "make install" to two separate directories and compared the output to confirm they matched exactly. - Used a set of configure flags including $CONFFLAGS from Debian: http://anonscm.debian.org/cgit/pkg-systemd/systemd.git/tree/debian/rules Installed the tree and confirmed the paths use /lib/systemd instead of /usr/lib/systemd and that no other unexpected differences exist. - Confirmed that `make distcheck` still passes.
2015-05-18Use "new" --job-mode= option in more placesZbigniew Jędrzejewski-Szmek
--irreversible/--ignore-dependencies/--fail are deprececated since 4dc5b821ae737914499119e29811fc3346e3d97c. Also add shell completions for --jobs-mode.
2015-05-15systemctl: introduce --now for enable, disable and maskJan Synacek
https://bugs.freedesktop.org/show_bug.cgi?id=42940
2015-05-11treewide: Correct typos and spell plural of bus consistentTorstein Husebø
2015-04-28run: by default, wait until the transient unit finished start-upLennart Poettering
Make this blocking behaviour optional with --no-block, similar to systemctl's switch of this name.
2015-04-07logind,systemctl: add reboot to EFI firmware supportJan Janssen
2015-03-13man: fix name of systemd.resource-control(5)Zbigniew Jędrzejewski-Szmek
2015-03-13man: fix a bunch of linksZbigniew Jędrzejewski-Szmek
All hail linkchecker!
2015-02-10man: boilerplate unificationZbigniew Jędrzejewski-Szmek
2015-02-10man: fix reference to glob manpageZbigniew Jędrzejewski-Szmek
2015-02-10man: add systemd.generator(7)Zbigniew Jędrzejewski-Szmek
This is largely based on http://www.freedesktop.org/wiki/Software/systemd/Generators/, and obsoletes that page. It seems that we do a much better job of keeping man pages up-to-date compared to wiki pages. Man pages are also easier to find for users. https://bugs.freedesktop.org/show_bug.cgi?id=89048
2015-01-19man: use one description of --no-legendZbigniew Jędrzejewski-Szmek
2015-01-19systemctl: fix import-environment description, trim help to 80 colsZbigniew Jędrzejewski-Szmek
2015-01-08man: remove references to systemadm from systemctl man pageLennart Poettering
The tool is badly maintained and we shouldn't refence such old cruft.
2015-01-08man: bring systemctl man page and --help text into the same orderLennart Poettering
2014-12-30man: Fix spellingSusant Sahani
2014-11-29systemctl: add edit verbRonny Chevalier
It helps editing units by either creating a drop-in file, like /etc/systemd/system/my.service.d/override.conf, or by copying the original unit from /usr/lib/systemd/ to /etc/systemd/ if the --full option is specified. It invokes an editor on temporary files related to the unit files and if the editor exited successfully, then it renames the temporary files to their original names (e.g. my.service or override.conf) and daemon-reload is invoked. If the temporary file is empty the modification is canceled. See https://bugzilla.redhat.com/show_bug.cgi?id=906824
2014-11-29man: update description of default extension for isolateChris Atkinson
2014-11-23man: reword list-dependencies descriptionZbigniew Jędrzejewski-Szmek
The previous version was a bit too vague. It is better to simply list all dependency types that are followed. Previous version also made an emphasis on dependencies introduced by configuration. But this command (or systemd) don't care about this distinction between configured and automatically added dependencies at all. This distinctionis removed from the main description, and an explanatory paragraph is added to remind the user that all dependencies are shown, no matter where they come from.
2014-11-21man: add emacs header to get correct indention in nxml-mode for the manpage ↵Lennart Poettering
XML files that use 2ch indenting In the long run we really should figure out if we want to stick with 8ch or 2ch indenting, and not continue with half-and-half. For now, just make emacs aware of the files that use 2ch indenting.
2014-11-10man: improve documentation for "indirect" unit file state a bitLennart Poettering
Also, correct mentions of "units" instead of "unit files" in the table, and terminate all sentences with a full stop.
2014-11-10shared/install: when unit contains only Also=, report 'indirect'Jan Synacek
If a unit contains only Also=, with no Alias= or WantedBy=, it shouldn't be reported as static. New 'indirect' status shall be introduced. https://bugzilla.redhat.com/show_bug.cgi?id=864298
2014-11-10man: don't refer to undocumented option '--failed'Michal Schmidt
2014-11-10man: don't document systemctl --failedLennart Poettering
This effectively reverts 599b6322f19ec619ddc294d0e7880b669040cf66, which in turn partially reverted 4dc5b821ae737914499119e29811fc3346e3d97c. The --failed switch is not documented on purpose, since it is redundant due to --state=failed, which it predates. Due to that it's not documented in --help either. We generally try to avoid redundant interfaces, but if we need to keep them for compatibility we do so, however remove them from documentation to ensure they are not used in future. The man page is now changed to include a comment about the fact that --failed is not documented on purpose. Also, explicitly mention --state=failed as example for --state.
2014-11-07man: document --failedZbigniew Jędrzejewski-Szmek
https://bugs.debian.org/767267
2014-10-28man: minor corrections on how the overall system states are actually definedLennart Poettering
2014-10-27man: add table of manager statesZbigniew Jędrzejewski-Szmek
2014-10-08man/systemctl: document enable on masked unitsJan Synacek
2014-10-08systemctl: add add-wants and add-requires verbsLukas Nykryn