Lennart Poettering
d2e1b2fd67
systemctl: print a more accurate error message when we can
2019-04-02 05:44:12 +09:00
Lennart Poettering
8a016c746e
util-lib: when copying files make sure to apply some chattrs early, some late
...
Some chattrs only work sensible if you set them right after opening a
file for create (think: FS_NOCOW_FL). Others only work when they are
applied when the file is fully written (think: FS_IMMUTABLE_FL). Let's
take that into account when copying files and applying a chattr to them.
2019-03-28 18:43:04 +01:00
Zbigniew Jędrzejewski-Szmek
c6335c3b51
Merge pull request #12115 from poettering/verbose-job-enqueue
...
add "systemctl --show-transaction start" as a more verbose "systemctl start" that shows enqueued jobs
2019-03-28 11:04:26 +01:00
Lennart Poettering
36dbf97170
Merge pull request #12119 from keszybz/voidify-mkdir-p
...
Voidify mkdir_p() and normalize util.h includes
2019-03-27 15:05:51 +01:00
Lennart Poettering
85d9b5981b
systemctl: add new --show-transaction switch
...
This new switch uses the new method call EnqueueUnitJob() for enqueuing
a job and showing the jobs it enqueued.
Fixes : #2297
2019-03-27 12:37:37 +01:00
Lennart Poettering
94369fc066
systemctl: split out extra args generation into helper function of its own
2019-03-27 12:37:37 +01:00
Lennart Poettering
5fd77930ad
systemctl: reindent table
2019-03-27 12:37:37 +01:00
Lennart Poettering
ee4296496f
systemctl: more SYNTHETIC_ERRNO() conversion
2019-03-27 12:37:37 +01:00
Lennart Poettering
c45e5fb877
systemctl: replace switch statement by table of structures
2019-03-27 12:37:37 +01:00
Zbigniew Jędrzejewski-Szmek
ca78ad1de9
headers: remove unneeded includes from util.h
...
This means we need to include many more headers in various files that simply
included util.h before, but it seems cleaner to do it this way.
2019-03-27 11:53:12 +01:00
Zbigniew Jędrzejewski-Szmek
2771aaf571
systemctl: define less stuff when !HAVE_SYSV_COMPAT
...
We'd translate our action to sysv runlevel action, only to discard the result
in talk_initctl(). Let's just ifdef the whole thing away.
Fixes #12103 .
2019-03-26 19:06:48 +01:00
Lennart Poettering
1d52a931c6
systemctl: move --failed close to --state= in help text
2019-03-25 15:25:58 +01:00
Lennart Poettering
8e54300425
systemctl: underline sections in help text
...
Taking inspiration from the recent commit that added that to nspawn's
help text.
2019-03-25 15:25:58 +01:00
Lennart Poettering
3bfa8668b0
systemctl: use structured initialization
2019-03-25 15:25:57 +01:00
Lennart Poettering
2f50e59f2b
systemctl: use SYNTHETIC_ERRNO everywhere
2019-03-25 15:23:08 +01:00
Lennart Poettering
63a3b3cb70
systemctl: split out some SysV compat stuff into its own C file
...
systemctl.c is way to large already. Let's split out some stuff out that
is easy to split out.
2019-03-25 15:23:08 +01:00
Lennart Poettering
16b4623620
Merge pull request #11602 from vesajaaskelainen/dbus-reboot-with-parameters
...
dbus-manager: Add RebootWithParameters d-bus method
2019-03-22 21:07:47 +01:00
Vesa Jääskeläinen
77defcf538
systemctl: restore "systemctl reboot ARG" functionality
...
Commit d85515edcf
changed logic how reboot is
executed. That commit changed behavior to use emergency action reboot code path
to perform the reboot.
This inadvertently broke rebooting with argument:
$ systemctl reboot custom-reason
Restore original behavior so that if reboot service unit similar to
systemd-reboot.service is executed it is possible to override reboot reason
with "systemctl reboot ARG".
When "systemctl reboot ARG" is executed ARG is placed in file
/run/systemd/reboot-param and reboot is issued using logind's Reboot
dbus-service.
If RebootArgument is specified in systemd-reboot.service it takes precedence
over what systemctl sets.
Fixes : #11828
2019-03-22 17:38:54 +02:00
Lennart Poettering
8d1ee64829
systemctl: make a copy of the "verb" from argv[] before forking off a child
2019-03-21 18:10:06 +01:00
Lennart Poettering
290cb8e883
systemctl: tiny optimization
2019-03-21 18:10:06 +01:00
Lennart Poettering
b1dffbb91b
systemctl: add missing OOM check
2019-03-21 18:10:06 +01:00
Lennart Poettering
3483460cb8
systemctl: document argv[] array
2019-03-21 18:10:06 +01:00
Lennart Poettering
d86e4c979a
systemctl: use saved_argv where we can
...
No need to have another variable where we keep the original argv[].
Let's juse reuse the one DEFINE_MAIN_FUNCTION() stores for us anyway.
2019-03-21 18:10:06 +01:00
Zbigniew Jędrzejewski-Szmek
9dd6ccf7c0
Merge pull request #12014 from poettering/systemctl-exit-fix
...
systemctl fallback error propagation fix
2019-03-21 17:37:09 +01:00
Lennart Poettering
2e13c0c354
systemctl: start_unit() returns > 0 on error, let's catch that properly
...
Let's make sure we fall back correctly to initctl when start_unit()
returns an error > 0.
Fixes : #11546
2019-03-20 15:05:27 +01:00
Lennart Poettering
9dccc6d3ae
systemctl: use strv_consume() where we can
2019-03-20 14:53:07 +01:00
Lennart Poettering
61ff45db95
systemctl: port to static destructors
2019-03-20 14:53:07 +01:00
Lennart Poettering
25b1d72dcc
bus-unit-util: split out code that shows a unit's process tree
...
The code is complex enough to deserve its own .c file. Let's split this
out.
2019-03-13 17:41:41 +01:00
Lennart Poettering
e45c81b8bc
shared: split out code to wait for jobs to complet into its own source file
...
It's complex enough and quite a few functions. Let's hence split this
out.
No code change, just some rearranging of source files.
2019-03-13 17:39:24 +01:00
Lennart Poettering
aee7082fbd
systemctl: drop unnecessary {}
2019-03-13 17:38:43 +01:00
Lennart Poettering
96e895efaf
systemctl: use strv_consume() where appropriate
2019-03-13 17:38:43 +01:00
Lennart Poettering
fb1ac50e4e
systemctl: minimize scope of 'p'
2019-03-13 17:38:43 +01:00
Lennart Poettering
9a1996455e
systemctl: refactor code to watch unit ActiveState a bit
...
let's split out one function, to make this reusable
2019-03-13 17:38:43 +01:00
Lennart Poettering
cc5957dca0
bootspec: don't log in boot_entries_load_config_auto() about no ESP
...
Let's do it in the caller instead. That way, logind can stay silent
about it.
Fixes : #11950
2019-03-13 17:06:24 +01:00
Lennart Poettering
760877e90c
util: split out sorting related calls to new sort-util.[ch]
2019-03-13 12:16:43 +01:00
Lennart Poettering
0a9707187b
util: split out memcmp()/memset() related calls into memory-util.[ch]
...
Just some source rearranging.
2019-03-13 12:16:43 +01:00
Lennart Poettering
97af80c5a7
systemctl: add support for booting into boot menu/entry
...
(This also removes support for booting into the EFI firmware setup
without logind. That's because otherwise the non-EFI fallback logind
implements can't work.)
Fixes : #9896
2019-03-05 16:52:46 +01:00
Lennart Poettering
38bd74d67e
bootspec: get rid of find_default_boot_entry() entirely
...
Now only two operations are left. Let's just move this into the caller,
since it should make things simpler, clearer and shorter, in particular
as there's only a single user for this.
2019-03-05 16:50:58 +01:00
Lennart Poettering
5b1da1ba6d
bootspec: simplify find_default_boot_entry()
...
If the only caller passes NULL for the two paths, let's remove the
parameter altogether.
2019-03-05 16:50:58 +01:00
Lennart Poettering
c943e95f89
systemctl: let's FORK_WAIT where we can
2019-03-05 16:50:58 +01:00
Lennart Poettering
0f88d82979
systemctl: when something is not supported use EOPNOTSUPP
2019-03-05 16:50:58 +01:00
Lennart Poettering
78c38fe79c
systemctl: be careful with boot loader entries lacking a 'linux' line
...
A boot loader entry might not have a 'linux' line, but an 'efi' line or
something else. Let's handle that case nicely.
2019-03-05 16:50:58 +01:00
Lennart Poettering
7800322ca5
bootspec: move log msg from systemctl.c to bootspec.c
...
find_default_boot_entry() is only used by systemctl.c, and currently
handles one log message in the caller instead of the callee. Let's
simplify that and move it over, too
2019-03-05 16:50:58 +01:00
Yu Watanabe
305a285092
systemctl: format LogExtraFields= in 'show' command
2019-03-04 23:45:07 +09:00
Yu Watanabe
4c787df72f
systemctl: format BindPaths= or TemporaryFileSystems= in 'show' command
2019-03-04 23:45:07 +09:00
Yu Watanabe
04749e4003
systemctl: print RestrictAddressFamilies= in 'show' command
2019-03-04 23:45:07 +09:00
Yu Watanabe
48d3358db1
systemctl: show nothing if no LoadError=
2019-03-04 23:45:07 +09:00
Yu Watanabe
9c1f946566
systemctl: show IPAddressAllow= and IPAddressDeny= in 'show' command
2019-03-04 23:45:07 +09:00
Yu Watanabe
4a22071201
systemctl: show SuccessExitStatus= and friends
2019-03-04 23:35:56 +09:00
Yu Watanabe
8e066ef316
systemctl: use streq() if arguments must be non-NULL
2019-03-04 23:35:56 +09:00