O příkazu Linux Shutdown Command
Linux Shutdown Command se používá k bezpečnému zastavení operačního systému. Přihlášení uživatelé obdrží zprávu, že systém bude vypnut. Příkaz umožňuje vypnutí systému okamžitě nebo podle nastavené doby. V tomto tutoriálu se naučíte základní způsoby použití příkazu vypnutí a také osvědčené postupy při jeho používání. V některých novějších distribucích je příkaz uptime spojen se systémovým příkazem systemctl. Kromě toho prozkoumáme, jak restartovat, jak naplánovat restartování, jak varovat přihlášené uživatele a další.
Čím se budeme v tomto tématu zabývat?
- Základní syntaxe všech příkazů
- Základní postupy pro vypnutí, restart a upozornění uživatele
- Alternativní příkazy
- 60sekundový výukový program pro snadnější přizpůsobení
Základní syntaxe příkazu Linux Shutdown
Než budeme pokračovat, podívejme se na základní syntaxi příkazu.
shutdown [options] [time] [message]
Code language: Bash (bash)
Toto je výstup manuálové stránky:
shutdown may be used to halt, power-off or reboot the machine.
The first argument may be a time string (which is usually "now").
Optionally, this may be followed by a wall message to be sent to all
logged-in users before going down.
The time string may either be in the format "hh:mm" for hour/minutes
specifying the time to execute the shutdown at, specified in 24h clock
format. Alternatively it may be in the syntax "+m" referring to the
specified number of minutes m from now. "now" is an alias for "+0",
i.e. for triggering an immediate shutdown. If no time argument is
specified, "+1" is implied.
Note that to specify a wall message you must specify a time argument,
too.
If the time argument is used, 5 minutes before the system goes down the
/run/nologin file is created to ensure that further logins shall not be
allowed.
Code language: Bash (bash)
vypnutí – výstup nápovědy
shutdown --help
shutdown [OPTIONS...] [TIME] [WALL...]
Shut down the system.
Options:
--help Show this help
-H --halt Halt the machine
-P --poweroff Power-off the machine
-r --reboot Reboot the machine
-h Equivalent to --poweroff, overridden by --halt
-k Don't halt/power-off/reboot, just send warnings
--no-wall Don't send wall message before halt/power-off/reboot
-c Cancel a pending shutdown
Code language: Bash (bash)
Základní postupy použití
První příklad okamžitě vypne operační systém bez jakéhokoli varování pro ostatní uživatele:
shutdown -h now
Code language: Bash (bash)
V tomto případě, pokud používáte ssh připojení, bude okamžitě ukončeno. V dalším příkladu bude vypnutí odloženo o dvě minuty:
# shutdown -h (time in minutes)
$ shutdown -h 2
Shutdown scheduled for Mon 2021-03-22 18:52:31 EET, use 'shutdown -c' to cancel.
Code language: Bash (bash)
Nyní, jak vidíme ve výstupu, můžeme použít další možnost ke zrušení požadavku:
# cancel shutdown request
$ shutdown -c
Code language: Bash (bash)
Po spuštění vypnutí -c neuvidíme jiný výstup než výše uvedený příkaz shutdown -h 2 bude ukončena. Alternativní metoda k vypnutí -h je vypnutí + jako v následujícím příkladu:
# Shutdown server after 10 minutes
$ shutdown +10
Shutdown scheduled for Mon 2021-03-22 19:04:53 EET, use 'shutdown -c' to cancel.
Code language: Bash (bash)
Nyní vytvoříme praktičtější příklad. Chceme server po 30 minutách vypnout a všichni uživatelé být informováni o naší akci.
# Shutdown the server after 30 minutes and inform logged users
$ shutdown +30 "The server will be shutdown for maintenance after 30 minutes please log out all of your sessions!"
Shutdown scheduled for Mon 2021-03-22 19:28:27 EET, use 'shutdown -c' to cancel.
Code language: Bash (bash)
Můžeme udělat ještě jeden lepší, řekněme, že chceme informovat všechny uživatele, že server bude v určitou dobu vypnut:
# Shutdown the server at a specific time and message
$ shutdown -h 21:00 "The server will be shutdown for maintenance at 21:00 please log out all of your sessions!"
Shutdown scheduled for Mon 2021-03-22 21:00:00 EET, use 'shutdown -c' to cancel.
Code language: Bash (bash)
Upozorňujeme, že ve všech příkladech kromě vypnout nyní , můžete použít shutdown -c zrušit proces vypínání. Pokud používáte plánovaná vypínání serveru. S největší pravděpodobností to budou restarty. Naším posledním příkladem by byl příkaz, který provede naplánovaný restart serveru v určitou dobu a upozorní uživatele.# Scheduled server restart
$ shutdown -h 21:00 "The server will be restarted for maintenance at 21:00 on 23-03-2021 please log out all of your sessions!" -r
Reboot scheduled for Tue 2021-03-23 21:00:00 EET, use 'shutdown -c' to cancel.
Code language: Bash (bash)
Metodu rychlého restartu bez varování nebo plánu lze provést pomocí příkazu reboot:
# A immediate reboot method
$ reboot
Code language: Bash (bash)
Restartování lze vynutit jako fyzické resetovací tlačítko počítače:
# A immediate forced reboot
$ reboot -f
Code language: PHP (php)
Alternativní příkazy pro Linux Shutdown Command
Syntaxe a příklady příkazu Halt
Dalším skvělým příkazem pro vypnutí linuxové distribuce je příkaz halt . Zde je základní syntaxe pro halt:
halt [OPTION]
Code language: Bash (bash)
A nápověda k zastavení:
$ halt --help
halt [OPTIONS...]
Halt the system.
Options:
--help Show this help
--halt Halt the machine
-p --poweroff Switch off the machine
--reboot Reboot the machine
-f --force Force immediate halt/power-off/reboot
-w --wtmp-only Don't halt/power-off/reboot, just write wtmp record
-d --no-wtmp Don't write wtmp record
--no-wall Don't send wall message before halt/power-off/reboot
See the halt(8) man page for details.
Code language: Basic (basic)
A pro poslední alternativní příkaz můžete použít vypnutí, zde je syntaxe:
poweroff [OPTION]
Code language: Bash (bash)
Syntaxe a příklady příkazu Poweroff
A nápověda pro vypnutí:
$ poweroff --help
poweroff [OPTIONS...]
Power off the system.
Options:
--help Show this help
--halt Halt the machine
-p --poweroff Switch off the machine
--reboot Reboot the machine
-f --force Force immediate halt/power-off/reboot
-w --wtmp-only Don't halt/power-off/reboot, just write wtmp record
-d --no-wtmp Don't write wtmp record
--no-wall Don't send wall message before halt/power-off/reboot
See the halt(8) man page for details.
Code language: Bash (bash)
Zde je 60sekundový video tutoriál pro snadnější přizpůsobení výše uvedeným příkazům
A co SYSTEMCTL?
Na začátku tohoto článku jsme zmínili systemctl a myslíme si, že je čas říct o tom pár slov. Ve většině nových distribucí můžete tento příkaz použít k vypnutí a restartu operačního systému. Zde je bonusový bonusový tip, jak jej použít 🙂
# Use System Control to shutdown the operating system
$ systemctl poweroff
-----------------------------------------------------
# Use System Control to restart the operating system
$ systemctl reboot
Code language: Bash (bash)