Home  >  Article  >  php教程  >  Linux command: shutdown

Linux command: shutdown

高洛峰
高洛峰Original
2016-12-13 15:43:171830browse

Command introduction:

This command can safely shut down or restart the system. You read that right, the shutdown command can not only shut down the system, but also restart the Linux system.

Command syntax:

/sbin/shutdown [-t sec] [-arkhncfFHP] time [warning-message]

Command parameters:

Linux command: shutdown

Usage example:

1: View the help information of the reboot command

[root@db-server ~]# shutdown --help
shutdown: invalid option -- -
Usage: shutdown [-akrhHPfnc] [-t secs] time [warning message]
                                                                                                                                                                                                                                                -h: halt after shutdown.
switch off power. -n: do not go through "init" but go down real fast.
                                                                                                                                                                                                   - db-server ~]#

[root@db-server ~]# man shutdown
SHUTDOWN(8)           Linux System Administrator鈥檚 Manual          SHUTDOWN(8)
 
NAME
       shutdown - bring the system down
 
SYNOPSIS
       /sbin/shutdown [-t sec] [-arkhncfFHP] time [warning-message]
 
DESCRIPTION
       shutdown  brings  the  system  down in a secure way.  All logged-in users are notified that the system is going
       down, and login(1) is blocked.  It is possible to shut the system down immediately or after a specified  delay.
       All processes are first notified that the system is going down by the signal SIGTERM.  This gives programs like
       vi(1) the time to save the file being edited, mail and news processing programs a chance to exit cleanly,  etc.
       shutdown  does its job by signalling the init process, asking it to change the runlevel.  Runlevel 0 is used to
       halt the system, runlevel 6 is used to reboot the system, and runlevel 1 is used to put to system into a  state
       where administrative tasks can be performed; this is the default if neither the -h or -r flag is given to shut-
       down.  To see which actions are taken on halt or reboot see the appropriate entries for these runlevels in  the
       file /etc/inittab.
 
OPTIONS
       -a     Use /etc/shutdown.allow.
 
       -t sec Tell  init(8)  to  wait  sec  seconds  between sending processes the warning and the kill signal, before
              changing to another runlevel.
 
       -k     Don鈥檛 really shutdown; only send the warning messages to everybody.
 
       -r     Reboot after shutdown.
 
       -h     Halt or poweroff after shutdown.
 
       -H     Halt action is to halt or drop into boot monitor on systems that support it.
 
       -P     Halt action is to turn off the power.
 
       -n     [DEPRECATED] Don鈥檛 call init(8) to do the shutdown but do it ourself.  The use of this  option  is  dis-
              couraged, and its results are not always what you鈥檇 expect.
 
       -f     Skip fsck on reboot.
 
       -F     Force fsck on reboot.
 
       -c     Cancel an already running shutdown. With this option it is of course not possible to give the time argu-
              ment, but you can enter a explanatory message on the command line that will be sent to all users.
 
       time   When to shutdown.
 
       warning-message
              Message to send to all users.
 
       The time argument can have different formats.  First, it can be an absolute time in the format hh:mm, in  which
       hh is the hour (1 or 2 digits) and mm is the minute of the hour (in two digits).  Second, it can be in the for-
       mat +m, in which m is the number of minutes to wait.  The word now is an alias for +0.
 
       If shutdown is called with a delay, it creates the advisory file /etc/nologin which  causes  programs  such  as
       login(1)  to  not  allow new user logins. Shutdown removes this file if it is stopped before it can signal init
       (i.e. it is cancelled or something goes wrong).  It also removes it before calling init to change the runlevel.
 
       The  -f flag means 鈥榬eboot fast鈥?  This only creates an advisory file /fastboot which can be tested by the sys-
       tem when it comes up again.  The boot rc file can test if this file is present, and decide not to  run  fsck(1)
       since the system has been shut down in the proper way.  After that, the boot process should remove /fastboot.
 
       The  -F flag means 鈥榝orce fsck鈥?  This only creates an advisory file /forcefsck which can be tested by the sys-
       tem when it comes up again.  The boot rc file can test if this file is present, and decide to run fsck(1)  with
       a  special  鈥榝orce鈥?flag so that even properly unmounted filesystems get checked.  After that, the boot process
       should remove /forcefsck.
 
       The -n flag causes shutdown not to call init, but to kill all running processes  itself.   shutdown  will  then
       turn off quota, accounting, and swapping and unmount all filesystems.
 
ACCESS CONTROL
       shutdown  can  be  called from init(8) when the magic keys CTRL-ALT-DEL are pressed, by creating an appropriate
       entry in /etc/inittab. This means that everyone who has physical access to the console keyboard  can  shut  the
       system  down.  To prevent this, shutdown can check to see if an authorized user is logged in on one of the vir-
       tual consoles. If shutdown is called with the -a argument (add this to the invocation of shutdown in /etc/init-
       tab),  it  checks  to see if the file /etc/shutdown.allow is present.  It then compares the login names in that
       file with the list of people that are logged in on a virtual console (from /var/run/utmp). Only if one of those
       authorized users or root is logged in, it will proceed. Otherwise it will write the message
 
       shutdown: no authorized users logged in
 
       to  the (physical) system console. The format of /etc/shutdown.allow is one user name per line. Empty lines and
       comment lines (prefixed by a #) are allowed. Currently there is a limit of 32 users in this file.
 
       Note that if /etc/shutdown.allow is not present, the -a argument is ignored.
 
HALT OR POWEROFF
       The -H option just sets the init environment variable INIT_HALT to HALT, and the -P option just sets that vari-
       able  to  POWEROFF.  The  shutdown  script that calls halt(8) as the last thing in the shutdown sequence should
       check these environment variables and call halt(8) with the right options for these options  to  actually  have
       any effect.  Debian 3.1 (sarge) supports this.
 
FILES
       /fastboot
       /etc/inittab
       /etc/init.d/halt
       /etc/init.d/reboot
       /etc/shutdown.allow
 
NOTES
       A  lot  of  users forget to give the time argument and are then puzzled by the error message shutdown produces.
       The time argument is mandatory; in 90 percent of all cases this argument will be the word now.
 
       Init can only capture CTRL-ALT-DEL and start shutdown in console mode.  If the system is running the  X  window
       System, the X server processes all key strokes. Some X11 environments make it possible to capture CTRL-ALT-DEL,
       but what exactly is done with that event depends on that environment.
 
       Shutdown wasn鈥檛 designed to be run setuid. /etc/shutdown.allow is not used to find out who is  executing  shut-
       down, it ONLY checks who is currently logged in on (one of the) console(s).
 
AUTHOR
       Miquel van Smoorenburg, miquels@cistron.nl
 
SEE ALSO
       fsck(8), init(8), halt(8), poweroff(8), reboot(8)
 
                               November 12, 2003                   SHUTDOWN(8)
(END)

2: Shut down the Linux system immediately, where now is equivalent to the state of time 0
[root@db-server ~]# shutdown -h now
 
Broadcast message from root (pts/1) (Sat Jan 10 18:51:34 2015):
 
The system is going down for system halt NOW!

3: The system will restart after 2 minutes, where +m means shutdown or startup after a few minutes.
[root@db-server ~]# shutdown -r +2
 
Broadcast message from root (pts/2) (Sat Jan 10 19:56:00 2015):
 
The system is going DOWN for reboot in 2 minutes!

4: Set the system to shut down at that point in time
[root@db-server ~]# shutdown -h 12:30
 
或
 
[root@db-server ~]# shutdown -h 12:30 &
[1] 4578

It is best to use command & process the shutdown command in the background. It does not affect other current operations.

Set how long it takes to execute the shutdown command. The time parameters have two modes: hh: mm or +m. hh:mm format indicates at what time the shutdown command is executed. For example, "shutdown 10:45" means that shutdown will be executed at 10:45. +m means that shutdown will be executed in m minutes. A more special usage is to use now to mean that shutdown will be executed immediately. It is worth noting that this part of the parameter cannot be omitted. In addition, it should be noted that if it is already 22:30 and you execute shutdown -h 22:00 &, the computer will not shut down until the next day.

5: Get the message from the previous shutdown command

as shown below, execute the following command to shut down Linux at 12:30, but if you find that this time point is not appropriate, you can use CTRL+C Cancel

[root@db-server ~]# shutdown -h 12:30

Shutdown canceled.

[root@db-server ~]#

You can also execute the following command in another command window

[root@db-server ~]# shutdown -c

6: Send a message to all logged in users

[root@db-server ~]# shutdown -k "now"
 
Broadcast message from root (pts/2) (Sat Jan 10 20:09:14 2015):
 
The system is going down to maintenance mode NOW!
 
Shutdown cancelled.

In addition, the logged in session window will receive the following message

[root@db-server ~]# 
[root@db-server ~]# 
Broadcast message from root (pts/2) (Sat Jan 10 20:11:34 2015):
 
The system is going down to maintenance mode NOW!

Generally use the following syntax, as follows Display

[root@db-server ~]# shutdown -k now "The Server will shutdown now"
 
Broadcast message from root (pts/1) (Sat Jan 10 20:14:54 2015):
 
The Server will shutdown now 
The system is going down to maintenance mode NOW!
 
Shutdown cancelled.

7: No disk detection when restarting

[root@db-server ~]# shutdown -fr now
 
Broadcast message from root (pts/1) (Sat Jan 10 20:23:59 2015):
 
The system is going down for reboot NOW!

8: After how many seconds to shut down the system and send a prompt message to the user

[root@db-server ~]# shutdown -t 10 -h now "System will shutdown 10 sencond later"
 
Broadcast message from root (pts/1) (Sat Jan 10 20:33:36 2015):
 
System will shutdown 10 sencond later 
The system is going down for system halt NOW!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn