Linux命令學習總結:詳解shutdown命令_Linux

來源:互聯網
上載者:User

本文講訴了Linux命令學習總結:shutdown命令,具體如下:

命令簡介: 

該命令可以安全關閉或者重新啟動系統。你沒有看錯,shutdown命令不僅可以關閉系統、也可以重啟Linux系統。  

命令文法:

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

命令參數:

參數

長參數

描敘

-a

Use /etc/shutdown.allow.

-c

中斷關機:當執行"shutdown -h 12:00"指令時,只要按+鍵就可以中斷關機的指令

-f

重新啟動時不進行磁碟檢測(fsck)

-F

重新啟動時進行磁碟檢測(fsck)

-h

關閉電源

-k

類比關機(不是真的關機),只是向登入者發送警告資訊出去!

-n

不調用init進程進行關機,而是強行關機

-r

關閉系統然後重新啟動,類似於Windows平台restart

-t

延遲關機的時間

-w

僅做測試,並不真的將系統重新開機,只會把重開機的資料寫入/var/log目錄下的wtmp記錄檔案

--help

顯示命令線上協助

使用樣本:

1: 查看reboot命令的協助資訊

[root@db-server ~]# shutdown --helpshutdown: invalid option -- -Usage:  shutdown [-akrhHPfnc] [-t secs] time [warning message]         -a:   use /etc/shutdown.allow         -k:   don't really shutdown, only warn.         -r:   reboot after shutdown.         -h:   halt after shutdown.         -P:   halt action is to turn off power.         -H:   halt action is to just halt.         -f:   do a 'fast' reboot (skip fsck).         -F:   Force fsck on reboot.         -n:   do not go through "init" but go down real fast.         -c:   cancel a running shutdown.         -t secs: delay between warning and kill signal.         ** the "time" argument is mandatory! (try "now") **[root@db-server ~]#
[root@db-server ~]# man shutdownSHUTDOWN(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:馬上關閉Linux系統,其中 now 相當於時間為 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:系統2分鐘後重新啟動,其中+m表示幾分鐘後關機或開機。

[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:設定系統在那個時間點關機

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

或 

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

最好是使用命令&將關機命令至於幕後處理。不影響當前其它操作。

設定多久時間後執行shutdown命令。時間參數有hh:mm或+m兩種模式。hh:mm格式表示在幾點幾分執行shutdown命令。例如 “shutdown 10:45”表示將在10:45執行shutdown.+m表示m分鐘後執行shutdown.比較特別的用法是以now表示立即執行shutdown. 值得注意的是這部分參數不能省略。另外,需要注意如果現在已經22:30,你執行了shutdown -h 22:00 & 那麼第二天才會關機。

5:將前一個shutdown命令取訊息 

如下所示,執行了下面命令讓Linux在12:30關機,但是如果發現這個時間點不合適,那麼可以使用CTRL+C取消

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

也可以在另外一個命令視窗執行下面命令

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

6:向所有登入的使用者發出資訊

[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.

另外登入的會話視窗會收到如下資訊

[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!

一般使用下面文法,如下所示

[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:重新啟動時不進行磁碟檢測

[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:在多少秒後關閉系統並給使用者發送提示資訊

[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!

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援雲棲社區。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.