首先说一句,不要认为关机就是直接关闭电源,很简单。如果你做运维的话,你就知道这种做法对你的服务器有多大伤害了。当然一个服务器是很少遇到关机的操作的,但是也许就会遇到特殊情况呢。
因为Linux后台有很多进程正在运行,用户的数据还没有进行存储,强行关机会导致进程数据丢失,所以应该等数据全部写入再进行关机才是最正确的做法,并且强制关机还会影响系统的稳定性,还有可能造成系统的硬件损坏。
首先不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中,然后再运行以下提到的关机与重启命令。
下面讲解一下关机与重启的命令
init
init命令是Linux下的进程初始化工具,init进程是所有Linux进程的父进程,它的进程号为1。init命令是Linux操作系统中不可缺少的程序之一,init进程是Linux内核引导运行的,是系统中的第一个进程。
init定义了7个运行级别(runlevel),分别是:
0 停机(千万不能把initdefault 设置为0)
1 单用户模式
2 多用户,没有 NFS(和级别3相似,会停止部分服务)
3 完全多用户模式
4 没有用到
5 x11(Xwindow)
6 重新启动(千万不要把initdefault 设置为6)
实例:1
2init 0 #关机
init 6 #重启
shutdown
重要参数:
[-t] 在改变到其它runlevel之前﹐告诉init多久以后关机。
[-r] 重启计算器。
[-k] 并不真正关机﹐只是送警告信号给每位登录者〔login〕。
[-h] 关机后关闭电源〔halt〕。
[-c] 取消目前正在执行的关机程序。、
[-f] 在重启计算器〔reboot〕时忽略fsck
[-F] 在重启计算器〔reboot〕时强迫fsck。
[-time] 设定关机〔shutdown〕前的时间。
实例:1
2
3
4shutdown -h now #指定现在立刻关机
shutdown +5 #5分钟后自动关机
shutdown -r #关机后重启
shutdown 16:00 #16:00关机
reboot
实例:1
reboot #立即重启
halt
实例:1
2halt #关闭系统后关闭电源。
halt -d #关闭系统,但不留下纪录
poweroff
重要参数:
-n:关闭操作系统时不执行sync操作;
-w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中;
-d:关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录;
-f:强制关闭操作系统;
-i:关闭操作系统之前关闭所有的网络接口;
-h:关闭操作系统之前将系统中所有的硬件设置为备用模式。
实例:1
poweroff #立即关闭系统
本文作者:冰羽
本文地址: https://bingyublog.com/2018/03/30/关于Linux关机与重启的那些事/
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!