shutdown, poweroff
— close down the system at a
given time
shutdown |
[-] [-c |
-f | -h |
-p | -r |
-k] [-o
[-n]] [-q]
time [warning-message
...] |
The shutdown utility provides an automated
shutdown procedure for super-users to nicely notify users when the system is
shutting down, saving them from system administrators, hackers, and gurus,
who would otherwise not bother with such niceties. In order to use the
shutdown command, the user must have root privileges
or be a member of the operator group.
The following options are available:
-c
- The system is power cycled (power turned off and then back on) at the
specified time. If the hardware doesn't support power cycle, the system
will be rebooted. At the present time, only systems with BMC supported by
the
ipmi(4) driver that implement this functionality support
this flag. The amount of time the system is off is dependent on the device
that implements this feature.
-f
- The
shutdown command ignores the presence of the
/var/run/noshutdown file.
-h
- The system is halted at the specified time.
-p
- The system is halted and the power is turned off (hardware support
required, otherwise the system is halted) at the specified
time.
-r
- The system is rebooted at the specified time.
-k
- Kick everybody off. The
-k option does not
actually halt the system, but leaves the system multi-user with logins
disabled (for all but super-user).
-o
- If one of the
-c, -h,
-p, or -r options is
specified, shutdown will execute
halt(8) or
reboot(8) instead of sending a signal to
init(8).
-n
- If the
-o option is specified, prevent the file
system cache from being flushed by passing -n to
halt(8) or
reboot(8). This option should probably not be used.
-q
- Shut down quietly. Suppress the warning message to all logged in users
about system shutdown. It is an error to supply a
warning-message when warnings are suppressed.
- time
- Time is the time at which
shutdown will bring the system down and may be the
case-insensitive word now (indicating an immediate
shutdown) or a future time in one of two formats:
+number or an absolute time specification. The first
form brings the system down in number time units
(defaulting to minutes), and the second at the absolute time specified.
An absolute time may be specified in one of the following
formats, where unspecified parts default to the current date:
- hhmm
- Hour and minute.
- DDhhmm
- Day, hour, and minute.
- MMDDhhmm
- Month, day, hour, and minute.
- YYMMDDhhmm
- Year (within the century), month, day, hour, and minute.
The year YY is interpreted relative to
the current century, with a one-year tolerance for values slightly in
the past (to accommodate entry at year boundaries).
+number may be specified in units other than
minutes by appending the corresponding suffix:
“s”,
“sec”,
“secs”,
“m”,
“min”,
“mins”,
“h”,
“hour”,
“hours”. The unit suffixes are
case-insensitive.
If an absolute time is specified, but not a date, and that
time today has already passed, shutdown will
assume that the same time tomorrow was meant. (If a complete date is
specified which has already passed, shutdown
will print an error and exit without shutting the system down.)
- warning-message
- Any other arguments comprise the warning message that is broadcast to
users currently logged into the system.
-
- If ‘
-’ is supplied as an option, the
warning message is read from the standard input.
At intervals, becoming more frequent as apocalypse approaches and
starting at ten hours before shutdown, warning messages are displayed on the
terminals of all users logged in. Five minutes before shutdown, or
immediately if shutdown is in less than five minutes, logins are disabled by
creating /var/run/nologin and copying the warning
message there. If this file exists when a user attempts to log in,
login(1) prints its contents and exits. The file is removed
just before shutdown exits.
At shutdown time a message is written to the system log,
containing the time of shutdown, the person who initiated the shutdown and
the reason. The corresponding signal is then sent to
init(8) to respectively halt, reboot, or bring the system
down to single-user state (depending on the above options). The time of the
shutdown and the warning message are placed in
/var/run/nologin and should be used to inform the
users about when the system will be back up and why it is going down (or
anything else).
A scheduled shutdown can be canceled by killing the
shutdown process (a SIGTERM
should suffice). The /var/run/nologin file that
shutdown created will be removed automatically.
If the /var/run/noshutdown file is
present, shutdown exits without executing any action
on the system.
When run without options, the shutdown
utility will place the system into single-user mode at the
time specified.
Calling “poweroff” is
equivalent to running:
- /var/run/nologin
- tells
login(1) not to let anyone log in.
- /var/run/noshutdown
- prevents
shutdown from initiating an action on the
system. Can be overridden with the -f option.
Reboot the system in 30 minutes and display a warning message on
the terminals of all users currently logged in:
# shutdown -r +30 "System will
reboot"
Halt the system at 23:30 (using either format):
# shutdown -h 2330
# shutdown -h 23:30
Power off the system on June 15th at 10:00:
# shutdown -p 06151000
The hours and minutes in any absolute time format may be separated
by a colon (``:'') for backward compatibility. For example,
hh:mm is accepted as equivalent to
hhmm.
A shutdown command was originally written
by Ian Johnstone for UNSW's modified AT&T UNIX 6th
Edn. It was modified and then incorporated in
4.1BSD.