linux 系统的7个运行级别

一、Linux的运行级别(runlevel)

1 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
2 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
3 运行级别2:多用户状态(没有NFS)
4 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
5 运行级别4:系统未使用,保留
6 运行级别5:X11控制台,登陆后进入图形GUI模式
7 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

二、运行级别的原理

1、在目录/etc/rc.d/init.d下有许多服务器脚本程序,一般称为服务(service)
2、在/etc/rc.d下有7个名为rcN.d的目录,对应系统的7个运行级别
3、rcN.d目录下都是一些符号链接文件,这些链接文件都指向init.d目录下的service脚本文件,命名规则为K+nn+服务名或S+nn+服务名,其中nn为两位数字。
4、系统会根据指定的运行级别进入对应的rcN.d目录,并按照文件名顺序检索目录下的链接文件

对于以K开头的文件,系统将终止对应的服务
对于以S开头的文件,系统将启动对应的服务

5、查看运行级别用:runlevel
6、进入其它运行级别用:(sudo) init N
7、另外init0为关机,init 6为重启系统

另外,当使用runlevel查看运行级别时,结果会显示前一次的运行级别和现在的运行级别,如果前次的运行级别为N,那么说明前次没有运行级别(可能刚刚power on)

三、在运行模式中加入启动服务

要在某个运行模式中加入一个启动服务
1、首先要新建该服务启动脚本
2、然后把它放置于/etc/rc.d/init.d或者/etc/init.d/(根据你的linux版本有所不同)目录下
3、要将该启动脚本与运行模式关联起来,你需要这个运行模式的目录下建立一个与/etc/rc.d/init.d/下启动脚本的symbolic link

文件名的前缀通常为SXX,XX为数字,这个数字是用来控制该运行模式下服务的启动顺序。
脚本的执行顺序是按照数字大小升序执行,就是数字越小越先执行。如:

下面就是一个在运行模式中加入启动服务具体的例子:

$ cp myservice /etc/rc.d/init.d/
$ ln -s /etc/rc.d/init.d/myservice /etc/rc3.d/S99myservice

这样,下次以runlevel 3启动时,myservice就会自动启动。

四、注意

多数的桌面的linux系统缺省的runlevel是5,用户登陆时是图形界面,而多数的服务器版本的linux系统缺省的runlevel是3,用户登陆时是字符界面,runlevel 1和2除了调试之外很少使用,runlevel s和S并不是直接给用户使用,而是用来为Single user mode作准备。

参考:https://www.jianshu.com/p/635e8480a75e

原文地址:https://www.cnblogs.com/xmnote/p/12143979.html

时间: 2024-10-09 19:50:16

linux 系统的7个运行级别的相关文章

Linux系统有7个运行级别(runlevel)

Linux系统有7个运行级别(runlevel)运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆运行级别2:多用户状态(没有NFS)运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式运行级别4:系统未使用,保留运行级别5:X11控制台,登陆后进入图形GUI模式运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动 运行级别的原理:1.在目录/etc/rc.d/init.d

【转】 linux系统的7种运行级别

文章来源:http://blog.chinaunix.net/uid-22746363-id-383989.html Linux系统有7个运行级别(runlevel)运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆运行级别2:多用户状态(没有NFS)运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式运行级别4:系统未使用,保留运行级别5:X11控制台,登陆后进入图形GUI模式运行级别6:系

linux系统的7种运行级别

转自:http://blog.chinaunix.net/uid-22746363-id-383989.html Linux系统有7个运行级别(runlevel)运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆运行级别2:多用户状态(没有NFS)运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式运行级别4:系统未使用,保留运行级别5:X11控制台,登陆后进入图形GUI模式运行级别6:系统正

Linux系统有7个运行级别

Linux系统有7个运行级别(runlevel)运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆运行级别2:多用户状态(没有NFS)运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式运行级别4:系统未使用,保留运行级别5:X11控制台,登陆后进入图形GUI模式运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动 运行级别的原理:1.在目录/etc/rc.d/init.d

[开机启动]Linux开机自启和运行级别

嵌入式系统中程序自启动方法 在很多嵌入式系统中,由于可用资源较少,常常在系统启动后就直接让应用程序自动启动,以减少用户操作和节省资源.如何让自己的应用程序自动启动呢?    在Linux系统中,配置应用程序自动启动的方法有以下三种:1.通过/Linuxrc脚本直接启动Linux内核一旦开始执行,它将通过驱动程序来初始化所有硬件设备,这个初始化过程可以在启动时的PC显示器上看到,每个驱动程序都打印一些相关信息.初始化完成后,通常调用的是init,通过loader调用init内的init=/app_

Linux系统下程序后台运行nohup,&,screen等

"nohup" 在用户ssh终端断开或者网络端口时,终端没有HUP信号则会关闭所有子进程. nohup则会让进程忽略HUP信号,不受终端断开限制 一般在结尾加上"&"将命令同时放到中断后台运行 nohup标准输出和标准错误输出会被重定向到nohup.out文件中 [[email protected] ~]# nohup ping www.ibm.com & [1] 3059 nohup: appending output to `nohup.out'

Linux开机启动流程及运行级别和常用组合键 == 第一次所学知识框架==

第一次写经验总结 望体谅 linux开机启动过程总结=简化版 1)  加载bios,获取cpu,内存,硬盘 2)  读取MBR,获取bootloader(grub) 3)  根据grub的内容加载内核 4)  内核执行/sbin/init,根据/etc/inittab完成初始化 5)  init执行 /etc/rc.d/rc.sysinit 6)  启动内核模块,根据/etc/modprobe.conf或/etc/modprobe.d/目录下的的文件来加载模块 7)  根据运行级别不同,init

linux 系统下查询当前raid级别

Linux系统下不安装第三方软件查询当前raid级别 测试环境   HP BL685 G7     SUSE 11 SP4 udevadmin info --query=all --name=/dev/sda --attribute-walk|grep raid ATTRS{raid_level}=="RAID 1(1+0)"

如何在Windows下使用Linux系统来编译和运行程序?

很多开发人员都有这样的疑问:自己平时是在Windows下面办公的,而自己编写的程序的运行环境又是Linux的,如何从Windows切换到Linux呢?是不是要专门到Linux机器上去编写代码呢? 实际上,只要在Windows下安装一个叫做SecureCRT的软件和一个叫做FileZilla的软件,便可轻松解决问题. SecureCRT和FileZilla简介 SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录Linux服务器主机的软件. Fil