L inux关机命令详解
摘要:在l inux下一些常用的关机/重启命令有shutdown、 ha lt、 reb o ot、及init它们都可以达到重启系统的目的但每个命令的内部工作过程是不同的通过本文的介绍希望你可以更加灵活的运用各种关机命令.
在li nux下一些常用的关机/重启命令有shutdown、 ha lt、 reb o ot、及init它们都可以达到重启系统的目的但每个命令的内部工作过程是不同的通过本文的介绍希望你可以更加灵活的运用各种关机命令。
1.s hutd o w nshutdo wn命令安全地将系统关机。 有些用户会使用直接断掉电源的方式来关闭li nux这是十分危险的。因为linux与w indo ws不同其后台运行着许多进程所以强制关机可能会导致进程的数据丢失使系统处于不稳定的状态甚至在有的系统中会损坏硬件设备。
而在系统关机前使用shutd own命令系统管理员会通知所有登录的用户系统将要关闭。并且login指令会被冻结即新的用户不能再登录。直接关机或者延迟一定的时间才关机都是可能的还可能重启。这是由所有进程〔proces s〕都会收到系统所送达的信号〔s ignal〕决定的。这让像vi之类的程序有时间储存目前正在编辑的文档而像处理邮件〔mail〕和新闻〔news〕的程序则可以正常地离开等等。shutdo wn执行它的工作是送信号〔signa l〕给init程序要求它改变runleve l。 Runleve l 0被用来停机〔halt〕 runleve l 6是用来重新激活〔reb oot〕系统而runlevel 1则是被用来让系统进入管理工作可以进行的状态这是预设的假定没有-h也没有-r参数给s hutd own。要想了解在停机〔ha lt〕或者重新开机
〔reb o ot〕过程中做了哪些动作你可以在这个文件/etc/initt a b里看到这些runl eve ls相关的资料。 shutdown-h no w(立即关机且关闭电源)shut down参数说明:
[-t]在改变到其它runle ve l之前告诉init多久以后关机。
[-r]重启计算器。
[-k]并不真正关机只是送警告信号给每位登录者〔 login〕 。
[-h]关机后关闭电源〔halt〕 。
[-n]不用in it 而是自己来关机。不鼓励使用这个选项而且该选项所产生的后果往往不总是你所预期得到的。
[-c]cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数但是可以输入一个用来解释的讯息而这信息将会送到每位使用者。
[-f]在重启计算器〔rebo ot〕时忽略fsck。
[-F]在重启计算器〔reboot〕时强迫fs c k。
[-t ime]设定关机〔s hutdo w n〕前的时间。
2.halt----最简单的关机命令halt-p(关机后关闭电源)
其实ha lt就是调用s hutdo wn-h。 ha lt执行时杀死应用进程执行sync系统调用文件系统写操作完成后就会停止内核。
参数说明:
[-n]防止sync系统调用它用在用fsck修补根分区之后以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块。
[-w]并不是真正的重启或关机只是写wtmp 〔/var/lo g/wtmp〕纪录。
[-d]不写wtmp纪录〔已包含在选项[-n]中〕 。
[-f]没有调用s hutdo wn而强制关机或重启。
[-i]关机〔或重启〕前关掉所有的网络接口。
[-p]该选项为缺省选项。就是关机时调用powe roff。
3.reb o otreboot的工作过程差不多跟halt一样不过它是引发主机重启而halt是关机。它的参数与halt相差不多。
4.in itinit是所有进程的祖先它的进程号始终为1 所以发送TERM信号给in it会终止所有的用户进程守护进程等。 s hutd o w n就是使用这种机制。 in it定义了8个运行级别(runleve l) init 0为关机 init 1为重启。关于init可以长篇大论这里就不再叙述。另外还有t elinit命令可以改变init的运行级别比如 te lin it-iS可使系统进入单用户模式并且得不到使用shutd own时的信息和等待时间。
最简单的L inux关机命令程序
#inc lude<s ignal.h>
#inc lude<std io.h>
#inc lude<unis td.h>
#inc lude<sys/reboo t.h>int main(int argc, char **argv)
{
/* first disable all our signals*/sigset_t set;sigfillset(&set);s igproc mask(SIG_B LO CK,&set,NULL);
/* send signals to all processes _except_pid 1 */printf("sending SIGTERM signal to all processes\n");kill(-1,SIGTERM);sync();s le ep(3);printf("sending SIGKILL signal to all processes\n");kill(-1,SIGKILL);sync();s leep(3);
/* s hutd own*/printf("s yste m shutdown\n");sleep(2);reboot(RB_POWER_OFF);
}
6元虚拟主机是否值得购买?近期各商家都纷纷推出了优质便宜的虚拟主机产品,其中不少6元的虚拟主机,这种主机是否值得购买,下面我们一起来看看。1、百度云6元体验三个月(活动时间有限抓紧体验)体验地址:https://cloud.baidu.com/campaign/experience/index.html?from=bchPromotion20182、Ucloud 10元云主机体验地址:https:...
今年1月的时候Hosteons开始提供1Gbps端口KVM架构VPS,目前商家在LET发布消息,到本月30日之前,用户下单洛杉矶/纽约/达拉斯三个地区机房KVM主机可以从1Gbps免费升级到10Gbps端口,最低年付仅21美元起。Hosteons是一家成立于2018年的国外VPS主机商,主要提供VPS、Hybrid Dedicated Servers及独立服务器租用等,提供IPv4+IPv6,支持...
hostodo从2014年年底运作至今一直都是走低价促销侧率运作VPS,在市场上一直都是那种不温不火的品牌知名度,好在坚持了7年都还运作得好好的,站长觉得hostodo还是值得大家在买VPS的时候作为一个候选考虑项的。当前,hostodo有拉斯维加斯和迈阿密两个数据中心的VPS在促销,专门列出了2款VPS给8T流量/月,基于KVM虚拟+NVMe整列,年付送DirectAdmin授权(发ticket...