
shutdown -h now 立即关机
shutdown -r now 立即重启
Linux命令:shutdown
功能说明:系统关机指令。
语法:shutdown [-efFhknr][-t 秒数][时间][警告信息]
补充说明:shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作。
参数:
-c 当执行"shutdown -h 11:50"指令时,只要按+键就可以中断关机的指令。
-f 重新启动时不执行fsck(磁盘维护)。
-F 重新启动时执行fsck。
-h 将系统关机。
-k 只是送出信息给所有用户,但不会实际关机。
-n 不调用init程序进行关机,而由shutdown自己进行。
-r shutdown之後重新启动。
-t<秒数> 送出警告信息和删除信息之间要延迟多少秒。
[时间] 设置多久时间後执行shutdown指令。
[警告信息] 要传送给所有登入用户的信息。
reboot 快速重启(跳过sync过程,即同步化)
启动级别(0~6),位于/etc/inittab:
对各个运行级的详细解释:
0 为停机,机器关闭。(千万不要设置到此级别)
1 为单用户模式,就像Win9x下的安全模式类似。
2 为多用户模式,但是没有NFS支持。
3 为完整的多用户模式,是标准的运行级。
4 一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置。
5 就是X11,进到X Window系统了。
6 为重启,运行init 6机器就会重启。(千万不要设置到此级别)
shutdown、Halt、init、reboot的区别:
shutdown调用时,会发送信号(signal)给init程序,要求它改变runlevel,具体会根据参数决定(关闭或重起)。
halt和reboot都是shutdown的某个命令的链接,halt相当于shutdown -h now,也就是关闭;reboot相当于shutdown -r now,作用是重启系统。
Init作为Linux系统的首发程序,有多个运行级(runlevel),比如0-关闭 1-单用户模式 3-字符界面 5-图形界面 6-重启,因此使用Init来进行关机或重启 *** 作和shutdown差不多,且比shutdown更直接(不需要发送信号了的说)。
网络故障一般包含网络数据异常,网络丢包和网络延迟。Linux内核从2.2开始提供TC(Traffic Control)去控制Linux内核的流量,一般系统都是自带tc工具。
TC控制流程:
这里使用paping而不是ping,按照原作者说法是为了防止在防火墙开启的状态下可以ping通,但无法进行tcp连接的问题。
网络延迟:
tc qdisc add dev eth0 root netem delay 300ms
网络丢包:
tc qdisc add dev eth0 root netem loss 7% 25% #代表丢掉7%的包,但是成功率只有25%
tc qdisc add dev eth0 root netem loss 7% #只设置7%是代表随机丢掉7%的包
网络数据异常:
tc qdisc add dev eth0 root netem corrupt 10% # 10%的数据包损坏,不是没传过去,而是传过去不对。
网络数据重复:
tc qdisc add dev eth0 root netem duplicate 1% #随机产生1%的包重复
网络数据包乱序:
tc qdisc add dev eth0 root netem delay 10ms reorder 25% 50% #有25%的数据包(50%相关)会被立即发送,其他的延迟10秒
关闭网络异常模拟:
tc qdisc del dev eth0 root netem
监控网卡:
tc qdisc add dev eth0 root netem
其余命令:
tc qdisc change dev eth0 root netem duplicate 1%
tc qdisc replace dev eth0 root netem duplicate 1%
tc是要在client端设置的,因为只能控制数据发出,它模拟的是异常的数据到达Server后如何被处理,前提是数据在到达Server的时候已经异常了。
至于server端的控制,需要使用iptables。
参考文档:
https://honeypps.com/chaos/how-to-simulate-network-fault/
https://www.haxi.cc/archives/Linux%E6%A8%A1%E6%8B%9F%E5%A4%8D%E6%9D%82%E7%BD%91%E7%BB%9C%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%9A%84%E4%BC%A0%E8%BE%93-netem%E5%92%8Ctc.html
流量控制方式流量控制包括以下几种方式:
SHAPING(限制) 当流量被限制,它的传输速率就被控制在某个值以下。限制值可以大大小于有效带宽,这样可以平滑突发数据流量,使网络更为稳定。shaping(限制)只适用于向外的流量。
SCHEDULING(调度) 通过调度数据包的传输,可以在带宽范围内,按照优先级分配带宽。SCHEDULING(调度)也只适于向外的流量。
POLICING(策略) SHAPING用于处理向外的流量,而POLICIING(策略)用于处理接收到的数据。
DROPPING(丢弃) 如果流量超过某个设定的带宽,就丢弃数据包,不管是向内还是向外。
2、流量控制处理对象
流量的处理由三种对象控制,它们是:qdisc(排队规则)、class(类别)和filter(过滤器)。
QDISC(排队规则) QDisc(排队规则)是queueing discipline的简写,它是理解流量控制(traffic control)的基础。无论何时,内核如果需要通过某个网络接口发送数据包,它都需要按照为这个接口配置的qdisc(排队规则)把数据包加入队列。然后,内核会尽可能多地从qdisc里面取出数据包,把它们交给网络适配器驱动模块。最简单的QDisc是pfifo它不对进入的数据包做任何的处理,数据包采用先入先出的方式通过队列。不过,它会保存网络接口一时无法处理的数据包。
QDISC的类别如下:
(1)、CLASSLESS QDisc(不可分类QDisc)
1>无类别QDISC包括:
[p|b]fifo
使用最简单的qdisc,纯粹的先进先出。只有一个参数:limit,用来设置队列的长度,pfifo是以数据包的个数为单位;bfifo是以字节数为单位。
pfifo_fast
在编译内核时,如果打开了高级路由器(Advanced Router)编译选项,pfifo_fast就是系统的标准QDISC。它的队列包括三个波段(band)。在每个波段里面,使用先进先出规则。而三个波段(band)的优先级也不相同,band 0的优先级最高,band 2的最低。如果band里面有数据包,系统就不会处理band 1里面的数据包,band 1和band 2之间也是一样。数据包是按照服务类型(Type of Service,TOS)被分配多三个波段(band)里面的。
red
red是Random Early Detection(随机早期探测)的简写。如果使用这种QDISC,当带宽的占用接近于规定的带宽时,系统会随机地丢弃一些数据包。它非常适合高带宽应用。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)