mirror of
https://github.com/systemd/systemd.git
synced 2024-12-23 21:35:11 +03:00
Improve message for scheduled shutdown or reboot
Depending on if the system has been scheduled for shutdown or for reboot pring the corresponding message (and not only "Shutdown"). Prtinting the "wrong" message when rebooting will mislead and panic people. I get these messages via cron from remote servers and it would be bad if those systems actually *did* shut down, as the email from cron is telling me. Those messages cause an adrenalin spike in our team, which wouldn't happen, if the message was "correct" Fixes #16129.
This commit is contained in:
parent
209b2592ed
commit
6df8a6c753
@ -9053,6 +9053,7 @@ static int logind_schedule_shutdown(void) {
|
||||
_cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
char date[FORMAT_TIMESTAMP_MAX];
|
||||
const char *action;
|
||||
const char *log_action;
|
||||
sd_bus *bus;
|
||||
int r;
|
||||
|
||||
@ -9063,19 +9064,24 @@ static int logind_schedule_shutdown(void) {
|
||||
switch (arg_action) {
|
||||
case ACTION_HALT:
|
||||
action = "halt";
|
||||
log_action = "Shutdown";
|
||||
break;
|
||||
case ACTION_POWEROFF:
|
||||
action = "poweroff";
|
||||
log_action = "Shutdown";
|
||||
break;
|
||||
case ACTION_KEXEC:
|
||||
action = "kexec";
|
||||
log_action = "Reboot via kexec";
|
||||
break;
|
||||
case ACTION_EXIT:
|
||||
action = "exit";
|
||||
log_action = "Shutdown";
|
||||
break;
|
||||
case ACTION_REBOOT:
|
||||
default:
|
||||
action = "reboot";
|
||||
log_action = "Reboot";
|
||||
break;
|
||||
}
|
||||
|
||||
@ -9089,7 +9095,7 @@ static int logind_schedule_shutdown(void) {
|
||||
return log_warning_errno(r, "Failed to call ScheduleShutdown in logind, proceeding with immediate shutdown: %s", bus_error_message(&error, r));
|
||||
|
||||
if (!arg_quiet)
|
||||
log_info("Shutdown scheduled for %s, use 'shutdown -c' to cancel.", format_timestamp(date, sizeof(date), arg_when));
|
||||
log_info("%s scheduled for %s, use 'shutdown -c' to cancel.", log_action, format_timestamp(date, sizeof(date), arg_when));
|
||||
return 0;
|
||||
#else
|
||||
return log_error_errno(SYNTHETIC_ERRNO(ENOSYS),
|
||||
|
Loading…
Reference in New Issue
Block a user