linux下有关关机重启的命令主要有:shutdown、reboot、halt、poweroff、telinit、init。它们都可以达到关机或重启的目的,但是每个命令的工作流程并不一样。它们都由软件包sysvinit产生,你可以从网上下载它的源码来分析各个命令的流程,同时,sysvinit也包含了与登陆等有关的命令。下面分析sysvinit-2.86软件包的源码,同时参考它们的手册来对它们深入了解。
1、从Makefile可以知道,上面的命令并不都是互相独立的,poweroff、reboot是halt的链接,telinit是init的链接。
ln -sf halt $(ROOT)/sbin/reboot
ln -sf halt $(ROOT)/sbin/poweroff
ln -sf init $(ROOT)/sbin/telinit
在终端输入
# ls -l /sbin/poweroff
# ls -l /sbin/reboot
# ls -l /sbin/telinit
也可以看到上面的结果。
2、halt。
参数说明:
[-n] 防止sync系统调用﹐它用在用fsck修补根分区之后﹐以阻止
1、从Makefile可以知道,上面的命令并不都是互相独立的,poweroff、reboot是halt的链接,telinit是init的链接。
ln -sf halt $(ROOT)/sbin/reboot
ln -sf halt $(ROOT)/sbin/poweroff
ln -sf init $(ROOT)/sbin/telinit
在终端输入
# ls -l /sbin/poweroff
# ls -l /sbin/reboot
# ls -l /sbin/telinit
也可以看到上面的结果。
2、halt。
参数说明:
[-n] 防止sync系统调用﹐它用在用fsck修补根分区之后﹐以阻止