Linux系统——运行级别
学习之前先了解下Linux系统的运行级别和其原理,博主使用的是Linux系统中的Redhat9.0版本,之后的学习也是基于这个系统版本。
Linux系统的7个运行级别(runlevel)
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别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。进入其它运行级别用:init N
7。另外init0为关机,init 6为重启系统
由于现在的Linux系统安装完后就运行在第5个级别,即系统启动后直接进入图形界面,而不用在字符模式下登录后用startx或者xinit 来起动图形界面。建议在系统安装完成后把系统的默认运行等级设置在第3级,在字符终端登录后,再手工输入startx 命令起动图形界面。可以用如下的方法修改:
用文本编辑器修改 /etc/inittab文件,把
代码:
id:5:initdefault:这一行,修改成
代码:
id:3:initdefault:保存后就reboot重起,系统就默认启动到字符界面。不同运行级别之间的 差别的在于系统默认起动的服务的不同,如运行级别3默认不启动X图形界面服务,而运行级别5 却默认起动。本质上是没有区别的,更无所谓不同级别间功能强弱的问题。用户完全可自给定义不同级别的默认服务。在任何运行级别,用户都可用init 命令来切换到其他运行级别。
具体操作过程:
- 虚拟机安装Redhat9.0版本(网上自行搜索教程,要镜像文件可以私信我)
- 系统启动后默认进入级别5(图形界面),之后的实验在此级别上展开
系统运行级的查看,可以通过执行命令方式或查看配置文件方式实现:
(1).执行命令方式:用runlevel命令可以查看以前和当前系统的运行级。 在命令行下输入 runlevel 命令,它查看的是/etc/run/utmp 文件,并在标准输出设备上输出以前和当前运行级情况,如下图所示:
N 5表示以前运行级未知,当前运行级为5,也就是当前运行级为自动启动的XFree86系统(图形方式)。
用vi编辑器打开文件etc/inittab
修改系统默认级别具体方法: 用方向键将光标移动到id:5:initdefault:一行,放到5上,Delete——>Insert 3 , 修改后结果id:3:initdefault——>Esc——>Shift——>:wq(保存并退出)——>输入命令reboot,重启后进入级别3(由于切换系统级别时后台会改变一些配置文件,因此过程会稍慢,请耐心等待)
进入系统级别3,登录用户名和密码
注意,这里输入密码是不会显示的,输入密码后直接回车
登录成功以后的界面↓,以后启动电脑后默认都是进的这个界面
(2).查看配置文件的方式,查看配置文件的方式只能查看系统当前的运行级,系统的配置文件是/etc/inittab: 我们可以通过文件编辑器打开,也可以使用打开文件的命令来查看,在命令行下输入:gedit /etc/inittab,即:(下图引用于:http://blog.csdn.net/u012561176/article/details/44248945)
看到上图红色箭头指向框框处,id:5:initdefault:,这行中的5表示当前默认的系统运行级为5,直接修改为3即可,保存,reboot,同样修改了默认系统级别为3,效果同上.
系统级别之间的快速互相切换:
演示一个级别3——>5的切换:终端命令行直接输入命令init N(N为数字0-6,不要输入0或者6),这里输入init 5,回车,进入系统级别5的图形界面,打开终端,输入命令runlevel,结果如下图所示,完成3——5的切换,其它级别互相切换同理:
- 管理系统服务
在目录/etc/rc.d/init.d下有许多服务器脚本程序,一般称为服务(service);在/etc/rc.d下有7个名为rcN.d的目录,对应系统的7个运行级别.
- 终端输入命令chkconfig --list,查看各运行级别服务启动情况
附:Linux系统服务简述和作用:
http://files.cnblogs.com/files/lj-cn/Linux%E7%B3%BB%E7%BB%9F%E6%9C%8D%E5%8A%A1.js
2.如果需要自启动某些服务,只需输入chkconfig 服务名 on即可,若想关闭,将on改为off
注:在默认情况下,chkconfig会自启动2345这四个级别,如果想自定义可以加上--level选项
3.下面我们先将random服务的所有启动级别关闭,然后使用--level选项启动自定义级别
部分内容引用自该文章,转载请注明出处!
Linux系统——运行级别的更多相关文章
- Linux系统运行级别和关机重启命令介绍
Linux系统运行级别介绍 Linux系统有七种运行级别(Run Level),各个运行级别下,系统有不同的状态,各个级别的意义描述如下. 0:关键级别1:单用户运行级别,运行rc.sysinit和r ...
- 『学了就忘』Linux启动引导与修复 — 68、Linux系统运行级别
目录 1.Linux系统运行级别介绍 2.查看运行级别 3.修改当前系统的运行级别 4.系统默认运行级别 5./etc/rc.d/rc.local文件说明 1.Linux系统运行级别介绍 Linux默 ...
- linux 系统运行级别及修改[转]
Linux运行级别从0-6,共7个. 0:关机.不能将系统缺省运行级别设置为0,否则无法启动. 1:单用户模式,只允许root用户对系统进行维护. 2:多用户模式,但不能使用NFS(相当于Window ...
- Linux系统运行级别配置
Linux的运行级别 Linux的运行级别有七种,可以通过查看/etc/inittab文件进行了解: Level0:系统停机状态,默认系统运行级别不能设置为0,否则系统不能正常启动: Level1:单 ...
- Linux 系统运行级别
Linux运行级别从0-6,共7个. 0:关机.不能将系统缺省运行级别设置为0,否则无法启动. 1:单用户模式,只允许root用户对系统进行维护. 2:多用户模式,但不能使用NFS(相当于Win ...
- linux 系统运行级别(转)
Linux系统有7个运行级别(runlevel)运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆运行级别2:多 ...
- linux 系统运行级别一般为 0-6,请分别写出每个级别的含义
每个运行级别的含义 0 关机模式(不要把启动级别 运行级别设置为0) 1 单用户模式 2 无NFS多用户模式 3 文本模式(命令行模式,完整的多用户模式) 4 未使用的 5 ...
- Linux系统运行级别
- 第14章 Linux启动管理(1)_系统运行级别
1. CentOS 6.x 启动管理 (1)系统运行级别 ①运行级别 运行级别 含义 0 关机 1 单用户模式,可以想象为Windows的安全模式,主要用于系统修复.(但不是Linux的安全模式) 2 ...
随机推荐
- js 实现倒计时效果
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- nodejs零基础详细教程2:模块化、fs文件操作模块、http创建服务模块
第二章 建议学习时间4小时 课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑 ...
- js 排序:sort()方法、冒泡排序、二分法排序。
js中的排序,这里介绍三种,sort()方法.冒泡排序.二分法排序. 1.sort方法 写法: 数组.sort(); 返回排好序的数组,如果数组里是数字,则由小到大,如果是字符串,就按照第一个字符的 ...
- cpp(第九章)
1.静态外部,不在任何函数内定义.静态内部,不在任何函数内,使用关键字static.静态无连接性,在代码块中,使用关键字static. 2.静态变量会自动零初始化. 3.单定义规则,在每个使用外部变量 ...
- 获取Skype用户IP地址
#!/usr/bin/env bash ESC_SEQ="\x1b[" COL_RESET=$ESC_SEQ"39;49;00m" COL_RED=$ESC_S ...
- ubuntu16.04-x64系统中Jexus web server部署.NetCore和端口分析引发的猜想!
您有这样的牢骚么? 有一周没更新博客了,简单说下在干什么吧:主要是公司安排对接某旅游大公司的接口,接口数量倒也就10个左右,对接完后还需要加入到业务系统中和App端,因此还是需要花点时间的:时间上来说 ...
- ecshop商品页增加编辑器fckeditor
最近在做ecshop的项目,需要在商品单页中增加一项FCKEditor的文本编辑器,但在ecshop的论坛和百度里搜出的方法,试了好几个都没有用,终于找到一个可以正确使用的,和大家分享. ecshop ...
- 使用 Socket.IO 开发聊天室
前言 Socket.IO 是一个用来实现实时双向通信的框架,其本质是基于 WebSocket 技术. 我们首先来聊聊 WebSocket 技术,先设想这么一个场景: · 用户小A,打开了某个网站的充值 ...
- 各开放平台API接口通用SDK序列文章 前言
最近两年一直在做API接口相关的工作,在平时工作中以及网上看到很多刚接触API接口调用的新人一开始会感到很不适应,要看的文档一大堆,自己要调用的接口找不着,或都找着了不知道怎么去调用,记得包括自己刚开 ...
- 【JavaScript学习】-事件响应,让网页交互
什么是事件: JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 比如说,当用户单 ...