
1,系统启动的处理
在系统上电启动时,会加载/etc/inittab,进行初始化处理,然后执行各个脚本。如S13ntp..类似,分区时将文件系统放在分区1的话,mount时最好read only的方式,否则上下几次,系统遇到阻塞的情况断电就很容易损坏该分区。初始化脚本也尽量优化,不要让系统阻塞。
2,检测掉电事件
加上一个线程专门用于检测掉电事件,其他线程通过标志如果知道了掉电事件,也尽快退出。
一、意思不同
poweroff就是掉电关机了,但实际过程依然是先关闭系统,然后掉电的。
halt是停掉系统而已,并没有掉电,主板是通电的。
shutdown -h now就是halt,后边不写now而是写一个具体时间可以设置几秒后执行这一语句,实际上halt后是掉电关机的。
二、用法不同
shutdown命令,通过参数-h或-r的配合来完成关机或重启,不过在linux系统中只有拥有root权限才可以使用这个命令。
用halt命令来关机时,实际调用的是shutdown -h,halt 执行时将杀死应用进程,执行sync系统调用文件系统写 *** 作完成后就会停止内核。
poweroff,基本用法和halt差不多。
扩展资料:注意事项
shutdown直接断掉电源的方式来关闭linux,这是十分危险的。因为linux与windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失﹐使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备。
而在系统关机前使用shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录,直接关机或者延迟一定的时间才关机都是可能的,还可能重启。
1.可能:写数据的过程被中断,只完成了一部分。可能会出现乱码(因为只写了几个字节,不完整)、文件错误等。2.更大的可能: *** 作系统写文件 *** 作有个缓存,并不会直接写入硬盘。
内存可能有个缓存,磁盘也可能有个缓存,在数据会先保存在缓存中一段时间,累积到一定大小或者时间限度再一起写入磁盘中。
如果在这段时间内断电,那么缓存中的文件就丢失了,极端情况是写入了一部分数据,导致文件损坏。(可以通过“sync”命令强制同步,写入磁盘。)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)