Linux系统不能强制关机,已避免数据丢失。关机时,应当使用正确的关机指令,让系统在关机之前提示所有服务有序关闭。shutdown命令可以更安全的关闭计算机,推荐使用。 同时,由于服务器系统的特殊性,服务器不能做关机操作。
shutdown 命令
命令名称:shutdown
命令所在路径:/usr/sbin/shutdown
执行权限:root
功能描述:执行系统关机的命令
shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作。
语法:shutdown [选项] [参数]
-c:取消前一个关机命令
-h:关机
-r:重启
-k:并不会真的关机,只是将警告讯息传送给所有使用者
-t seconds:设定在几秒钟之后进行关机程序
## 范例
shutdown -h now ## 立刻关机(服务器不能关机)
shutdown -r 20:30 ## 在20:30自动重启
shutdown -h 10 ## 10分钟后强制关机
shutdown -c ## 取消前一个关机命令,并将消息传给所有终端
shutdown -k ## 给所有终端提送关机警告信息,但不关机
shutdown -t 5 "System will shutdown after 5 minutes" ## 5分钟后关机,同时将警告信息给所有终端
此外,通过halt
、poweroff
、init 0
等命令也能关闭计算机,通过reboot
、init 6
等命令也可以重启Linux系统,但在此不推荐使用,我们只需要熟练使用shutdown
命令即可。
系统的运行级别
即 init num 命令中的数字,init命令即表示调用对应的系统运行级别。 init进程是所有Linux进程的父进程。 init命令是Linux下的进程初始化工具,init进程是所有Linux进程的父进程,它的进程号为1。init命令是Linux操作系统中不可缺少的程序之一,init进程是Linux内核引导运行的,是系统中的第一个进程。
编号(num) | 说明 |
---|---|
0 | 关机 |
1 | 单用户 |
2 | 不完全多用户,不含NFS服务 |
3 | 完全多用户 |
4 | 未分配 |
5 | 图形界面 |
6 | 重启 |
关于每一个运行级别,在对应的学习视频章节中有详细的介绍。
level 命令
打印当前Linux的系统运行级别
Linux操作系统自从开始启动至启动完毕需要经历几个不同的阶段,这几个阶段就叫做runlevel。同样,当linux操作系统关闭时也要经历另外几个不同的runlevel。
runlevel可以认为是系统状态,进入每个runlevel都需要启动或关闭相应的一系列服务(services),这些服务(services)以初始化脚本的方式放置于/etc/rc.d/rc?.d/
或者/etc/rc?.d
目录下(?代表runlevel的对应序号)。
多数的桌面的linux系统缺省的runlevel是5,用户登陆时为图形界面,而多数的服务器版本的Linux系统缺省的runlevel是3,用户登陆时是字符界面。
runlevel 1和2除了调试之外很少使用,也并不是直接给用户使用,而是用来为单用户模式作准备。
Linux的运行模式比起windows的启动模式的优势在于:你可以在系统空闲时使用init命令切换你现在使用的runlevel。
当你关闭或者启动Linux系统时你已经不知不觉中切换你的runlevel,系统关机进程需要调用runlevel(0或6)来关闭所有正在运行中的进程。
## 范例
init 5 ## 切换系统的运行级别为5
[root@localhost /]# runlevel ## 查看当前系统的运行级别
N 5
logout 命令
命令名称:logout
执行权限:所有用户
功能描述:退出当前登录的Shell,logout指令让用户退出系统,其功能和login指令相互对应。
语法:logout
## 范例
logout ## 退出当前用户
## 运维服务器时,不再使用Linux系统之后,应当及时退出当前用户,避免账号被他人使用。