1

1.4Linux下开机,关机命令

Posted by 撒得一地 on 2015年9月16日 in Linux教程

在Linux下,是多人多任务,一台开启的Linux服务器,可能有多人正在同时工作,所以正常情况下,要关机时需要注意底下几件事:
观察系统的使用状态:
如果要看目前有谁在在线,可以下达『who』这个命令,而如果要看网络的联机状态,可以下达 『 netstat -a 』这个命令,如果要看后台正在运行的程序可以运行『 ps -aux 』这个命令。

通知在线使用者关机的时刻:
要关机前总得给在线的使用者一些时间来结束他们的工作,所以,这个时候你可以使用 shutdown 的特别命令来达到此一功能。

正确的关机命令使用:
例如 shutdown 与 reboot 两个命令!

Linux系统的关机/重新启动是很重大的系统运行,因此只有root才能够进行例如shutdown, reboot等命令。不过在某些distributions当中,比如CentOS系统,它允许你在本机前的tty7使用图形接口登陆时,可以用一般账号来关机或重新启动!但某些distributions则在你要关机时,他会要你输入root的密码。

数据同步写入磁盘: sync
在Linux系统中,为了加快数据的读取速度,所以在默认的情况中,某些已经加载内存中的数据将不会直接被写回硬盘,而是先缓存在内存当中,如此一来, 如果一个数据被你重复的改写,那么由于它尚未被写入硬盘中,因此可以直接由内存当中读取出来, 在速度上一定是快上相当多的!
不过,如此一来也造成些许的困扰,万一你的系统因为某些特殊情况造成不正常关机 (例如停电或者是不小心按到电源)时,由于数据尚未被写入硬盘当中,
所以就会造成数据的升级不正常! 那要怎么办呢?这个时候就需要sync这个命令来进行数据的写入动作! 直接在字符界面下输入sync,那么在内存中尚未被升级的数据,就会被写入硬盘中!
所以,这个命令在系统关机或重新启动之前, 很重要。最好多运行几次!
虽然目前的 shutdown/reboot/halt 等等命令均已经在关机前进行了 sync 这个工具的执行, 不过,多做几次还是比较保险。

关机命令: shutdown
shutdown可以达成如下的工作:
可以自由选择关机模式:是要关机、重新启动或进入单人操作模式均可;
可以配置关机时间: 可以配置成现在立刻关机, 也可以配置某一个特定的时间才关机。
可以自定义关机信息:在关机之前,可以将自己配置的信息传送给在线 user 。
可以仅发出警告信息:有时有可能你要进行一些测试,而不想让其他的使用者干扰, 或者是明白的告诉使用者某段时间要注意一下!这个时候可以使用 shutdown 来吓一吓使用者,但却不是真的要关机。
可以选择是否要 fsck 检查文件系统 。

shutdown的基本语法规则:
[root@lmode ~]# /sbin/shutdown [-t 秒] [-arkhncfF] 时间 [警告信息]
选项与参数: 
-t sec : -t 后面加秒数,亦即『过几秒后关机』的意思 
-k     : 不要真的关机,只是发送警告信息出去! 
-r     : 在将系统的服务停掉之后就重新启动(常用) 
-h     : 将系统的服务停掉后,立即关机。 (常用) 
-n     : 不经过 init 程序,直接以 shutdown 的功能来关机 
-f     : 关机并启动之后,强制略过 fsck 的磁盘检查 
-F     : 系统重新启动之后,强制进行 fsck 的磁盘检查 
-c     : 取消已经在进行的 shutdown 命令内容。 
时间   : 这是一定要加入的参数!指定系统关机的时间!

范例: 
[root@lmode~]# /sbin/shutdown -h 10 'I will shutdown after 10 mins' 
# 告诉大家,这部机器会在十分钟后关机!并且会显示在目前登陆者的屏幕前方! 
# 至于参数有哪些呢?以下介绍几个吧!

[root@lmode ~]# shutdown -h now 
立刻关机,其中 now 相当于时间为 0 的状态 

[root@lmode ~]# shutdown -h 20:25 
系统在今天的 20:25 分会关机,若在21:25才下达此命令,则隔天才关机 

[root@lmode ~]# shutdown -h +10 
系统再过十分钟后自动关机 

[root@lmode ~]# shutdown -r now 
系统立刻重新启动 

[root@lmode ~]# shutdown -r +30 'The system will reboot'  
再过三十分钟系统会重新启动,并显示后面的信息给所有在在线的使用者 

[root@lmode ~]# shutdown -k now 'This system will reboot'  
仅发出警告信件的参数!系统并不会关机啦!吓唬人! 

还有三个命令可以进行重新启动与关机的任务,那就是reboot, halt, poweroff。在重新启动时下达如下的命令:

[root@lmode ~]# sync; sync; sync; reboot 

既然这些命令都能够关机或重新启动,那他有没有什么差异啊?基本上,在默认的情况下, 这几个命令都会完成一样的工作!(因为halt会先呼叫shutdown,而shutdown最后会呼叫halt!)。 不过,shutdown可以依据目前已启动的服务来逐次关闭各服务后才关机;至于halt却能够在不理会目前系统状况下, 进行硬件关机的特殊功能!你可以在你的主机上面使用root进行底下两个命令来关机,比较看看差异在哪里!

	名称:halt 
	使用权限:系统管理者 
	使用方式:halt [-n] [-w] [-d] [-f] [-i] [-p] 
	说明:若系统的 runlevel 为 0 或 6 ,则关闭系统,否则以 shutdown 指令(加上 -h 参数)来取代 
	参数: 
	-n : 在关机前不做将记忆体资料写回硬盘的动作 
	-w : 并不会真的关机,只是把记录写到 /var/log/wtmp 档案里 
	-d : 不把记录写到 /var/log/wtmp 档案里(-n 这个参数包含了 -d) -f : 强迫关机,不呼叫 shutdown 这个指令 
	-i : 在关机之前先把所有网络相关的装置先停止 
	-p : 当关机的时候,顺便做关闭电源(poweroff)的动作 
范例:
halt -p 关闭系统后关闭电源。
halt -d 关闭系统,但不留下纪录。
reboot的工作过程差不多跟halt一样﹐不过它是引发主机重启﹐而halt是关机。它的参数与halt相差不多。 

切换运行等级: init
其实Linux共有七种运行等级, 这里先介绍四种运行等级:

run level 0:关机
run level 3:纯文本模式
run level 5:含有图形接口模式
run level 6:重新启动

那如何切换各模式呢?可以使用init这个命令来处理喔!也就是说,如果你想要关机的话, 除了上述的shutdown -h now以及poweroff之外,你也可以使用如下的命令来关机:

[root@lmode ~]# init 0

标签:, , ,

上一篇:

下一篇:

相关推荐

1 Comment

Comments are closed. Would you like to contact the author directly?
网站地图|XML地图

Copyright © 2015-2024 技术拉近你我! All rights reserved.
闽ICP备15015576号-1 版权所有©psz.