linux 运行级别

# 缺省的运行级,RHS用到的级别如下:
# 0 - 停机 ,机器关闭。
# 1 - 单用户模式 。就像Win9x下的安全模式类似
# 2 - 多用户,但是没有NFS  进入无网络服务的多用户模式
# 3 - 完全多用户模式 ,是标准的运行级。
# 4 - 没有用到 ,一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本 电脑的电池用尽时,可以切换到这个模式来
# 5 - X11   ,进到X Window系统了。 
# 6 - 重新启动 ,运行init 6机器就会重启


sudo apt-get install sysv-rc-conf
sudo sysv-rc-conf


acpi-support 这个是关于电源支持的默认是1,2,3,4,5下启动,我认为你可以把它调整到s级别。
acpid acpi的守护程序,默认是2-5开启,我认为可以不用管。
alsa alsa声音子系统,应该不用开启它。
alsa-utils 这个服务似乎取代了alsa,所以开启这个就可以了,我在S级别开启它。
anacron 这是一个用于执行到时间没有执行的程序的服务,我认为它无所谓,所以关了它,这个可以随便。
apmd 也是一种电源管理,我认为电脑如果不是很老,它就没有开启的必要了。
atd 和anacron类似,我把它关了。
bluez-utiles 传说中的蓝牙服务,然后遗憾我没有,所以关了。
bootlogd 似乎使用来写log的,安全期间开着他也许比较好。
cron 指定时间运行程序的服务,所以开着比较好的。
cupsys 打印机服务,所以如果你有,就开启吧。
dbus 消息总线系统,非常重要,一定要开。
dns-clean 拨号连接用的,如果不用,就关了它。
evms 企业卷管理系统,由于我并不明白什么叫做企业卷,所以我关了它。
fetchmail 用于邮件守护,我关了它。
gdm gnome桌面管理器,我关了它,然后用startx启动gnome。
halt 关机用的,不要更改
hdparm 这个我刚才有讲,如果没有ide硬盘也就不用开启它了。
hotkey-setup 这个是给某些品牌笔记本设计的热键映射,台式机用户请关了它
hotplug 这个是用于热插拔的,我已经测试过了,在某些电脑上关闭它会使声卡无效,请在S级别开启它。
hplip hp打印机专用的,应该可以关了它。
ifrename 网络接口重命名,好像没用,关了。
ifupdown 这个使用来打开网络的,开着它。
ifupdown-clean 同上。
klogd linux守护程序,接受来自内核和发送信息到syslogd的记录,并记录为一个文件,所以请开着它。
linux-restricted-modules-common 这个使用来使用受限制的模块的,你可以从/lib/linux-restricted-modules下查看,如果没有什么,你可以关掉它。
lvm 逻辑卷管理器,如果你没有请关了它。
makedev 用来创建设备到/dev/请不要动他。
mdamd 管理raid用,如果你没有请关闭它。
module-init-tools 从/etc/modules 加在扩展模块的,这个一般开着。
networking 增加网络接口和配置dns用,将它开启。
ntp-server 与ubuntu时间服务器进行同步的,关了。
pcmcia 激活pcmica设备,遗憾我有生以来都没有见过这样的设备,关了它。
powernowd 用于管理cpu的客户端程序,如果有变频功能,比如amd的quite' cool 那么就开启它吧。
ppp 拨号用的,我关了它。
ppp-dns 一样,也关了。
readahead 预加载服务,让我想起了win的预读,当然他们不同,它会使启动变慢3-4妙,所以我关了它。
reboot 重启用的,不要动。
rmnologin 如果发现nologin,就去除它,在笔记本上不用开启。
rsync rsync协议守护,请视情况而定。
screen-cleanup 一个清除开机屏幕的脚本,随便。
sendsigs 重启和关机时向所有进程发送消息。所以不要管它。
single 激活但用户模式,不用管它。
stop-bootlogd 从2,3,4,5级别停止bootlogd,不用管它。
sudo 这个不用说吧,不用管它。
sysklogd 用于记录系统日志信息,不用管它。
udev 用户空间dev文件系统,不用管它。
udev-mab 同上。
umountfs 用来卸载文件卷的,不用管它。
urandom 生成随即数的,不知道怎么用,不用管它。
usplash 那个漂亮的启动画面,但是我关了它,它也存在,所以想关他需要把内核起动参数中的splash一句删掉。
vbesave 显卡bios配置工具,不用管它。
xorg-common 设置x服务ice socket。不用管它。


引自

http://vb118.blog.163.com/blog/static/173933100200961034122705/

http://forum.ubuntu.org.cn/viewtopic.php?t=17813

<think>我们正在讨论Linux运行级别。根据引用内容,运行级别是操作系统当前正在运行的功能级别级别从0到6,每个级别有不同的功能,这些级别定义在/etc/inittab文件中(对于sysvinit系统)。在systemd系统中,运行级别的概念有所改变,但为了兼容性,仍然提供了类似的功能。 用户的问题:Linux运行级别介绍及如何查看和配置运行级别 回答结构: 1. 介绍运行级别的概念和作用 2. 详细说明各个运行级别的含义(0-6) 3. 如何查看当前运行级别(针对sysvinit和systemd分别说明) 4. 如何配置运行级别(包括临时切换和永久设置) 5. 注意事项(特别是关于systemd和sysvinit的区别) 注意:由于现代Linux发行版(如CentOS 7及以上)已经转向systemd,因此需要同时介绍两种方式,但重点放在systemd上,并说明兼容性方法。 根据引用[1]和[3],我们可以整理如下: 一、运行级别介绍 Linux系统有7个运行级别(0-6),每个级别对应特定的系统状态,例如: - 0:关机 - 1:单用户模式(救援模式,用于系统维护) - 2:多用户模式(不带网络) - 3:多用户模式(带网络,文本界面) - 4:未使用(用户可自定义) - 5:图形界面模式 - 6:重启 二、查看运行级别 1. 对于使用sysvinit(传统init)的系统: - 使用`runlevel`命令:显示前一个运行级别和当前运行级别(N表示没有前一个) - 使用`who -r`命令:显示当前运行级别 - 查看配置文件`/etc/inittab`:里面有一行类似`id:5:initdefault`,其中的数字5就是默认运行级别。 2. 对于使用systemd的系统(如CentOS 7及以上): - 运行级别被target替代,但为了兼容,运行级别与target有对应关系: runlevel0 -> poweroff.target runlevel1 -> rescue.target runlevel2 -> multi-user.target runlevel3 -> multi-user.target runlevel4 -> multi-user.target runlevel5 -> graphical.target runlevel6 -> reboot.target - 查看当前运行级别(实际上是查看当前的target): `systemctl get-default`:显示默认的target `systemctl list-units --type target`:查看当前活动的target - 也可以使用`runlevel`和`who -r`,但显示的是与当前target对应的运行级别(通过符号链接实现)。 三、配置运行级别(设置默认运行级别) 1. 对于sysvinit系统: 修改`/etc/inittab`文件中的`id:5:initdefault`一行,将数字改为想要的运行级别(如3)。 2. 对于systemd系统: 使用`systemctl set-default`命令,例如设置默认运行级别为多用户模式(对应运行级别3): `sudo systemctl set-default multi-user.target` 设置图形界面(运行级别5): `sudo systemctl set-default graphical.target` 四、临时切换运行级别 1. 在sysvinit系统中,使用`init`或`telinit`命令,如: `init 3` # 切换到运行级别3 `telinit 5` # 切换到运行级别5 2. 在systemd系统中,可以使用`systemctl isolate`命令,如: `sudo systemctl isolate multi-user.target` # 相当于运行级别3 `sudo systemctl isolate graphical.target` # 相当于运行级别5 或者使用兼容命令: `sudo init 3` 注意:切换运行级别会改变系统状态,比如切换到运行级别0会关机,6会重启。 五、注意事项 1. 在systemd系统中,运行级别只是target的别名,实际上是通过创建符号链接(例如`/etc/systemd/system/default.target`指向具体的target)来实现的。 2. 不要随意修改运行级别,特别是将默认运行级别设置为0或6会导致系统无法正常启动。 3. 在systemd系统中,运行级别2、3、4都被映射到multi-user.target,因此它们没有区别。如果需要自定义,可以创建新的target。 六、示例 查看当前运行级别(systemd系统): ```bash $ systemctl get-default graphical.target ``` 将默认运行级别设置为多用户模式(无图形界面): ```bash $ sudo systemctl set-default multi-user.target ``` 临时切换到图形界面: ```bash $ sudo systemctl isolate graphical.target ``` 七、相关问题 根据内容生成相关问题。 现在开始组织回答:</think>### Linux 运行级别详解与配置指南 #### 一、运行级别基础概念 运行级别Linux 系统的工作状态标识,定义了系统启动时加载的服务和功能。主要分为 **7 个级别**(0-6),每个级别对应特定系统状态: | 运行级别 | 名称 | 功能说明 | |----------|------------------|--------------------------------------------------------------------------| | 0 | Halt | 关机状态 | | 1 | Single User Mode | **救援模式**:仅 root 可登录,用于系统修复[^3] | | 2 | Multi-User | 多用户模式(无网络) | | 3 | Multi-User+Net | **标准服务器模式**:完整多用户支持+网络服务(无图形界面)[^1] | | 4 | Custom | 用户自定义级别 | | 5 | Graphical | **桌面模式**:图形界面+网络服务(默认桌面环境)[^2] | | 6 | Reboot | 重启状态 | > **关键作用**:控制服务启动顺序、管理系统状态切换、故障恢复[^3] #### 二、查看运行级别 根据系统初始化工具不同,查看方式有所差异: ##### 1. SysVinit 系统(传统) ```bash # 查看当前级别 $ runlevel N 5 # 输出格式: [前一级别] [当前级别] # 替代方法 $ who -r run-level 5 2024-06-15 10:00 # 当前为级别5 ``` ##### 2. Systemd 系统(现代) ```bash # 查看当前目标(target) $ systemctl get-default graphical.target # 等价于运行级别5 # 查看级别映射关系 $ ls -l /usr/lib/systemd/system/runlevel*.target lrwxrwxrwx. 1 root root 15 Jan 10 graphical.target -> multi-user.target ``` #### 三、配置运行级别 **重要**:操作前备份配置文件! ##### 1. 永久配置(设置默认级别) ###### SysVinit 系统: ```bash sudo vi /etc/inittab # 修改此行数字 (示例设为级别3) id:3:initdefault ``` ###### Systemd 系统: ```bash # 设置多用户模式(级别3) sudo systemctl set-default multi-user.target # 设置图形模式(级别5) sudo systemctl set-default graphical.target ``` ##### 2. 临时切换级别 ```bash # SysVinit 系统 sudo init 3 # 切换到级别3 # Systemd 系统 sudo systemctl isolate multi-user.target ``` #### 四、运行级别目录结构 服务启动脚本按级别分类存放: ```bash /etc/rc.d/ ├── rc0.d # 级别0脚本 ├── rc1.d # 级别1脚本 ├── rc2.d ├── rc3.d # 级别3脚本(K*停用服务,S*启用服务) ├── rc4.d ├── rc5.d # 级别5脚本 └── rc6.d ``` 示例级别5的启动服务: ```bash ls /etc/rc5.d/S* # 列出所有级别5启动的服务 S01network S10sshd S12rsyslog ... ``` #### 五、注意事项 1. **危险级别**: - 避免将默认级别设为 0 或 6(会导致循环关机/重启) - 生产服务器建议使用级别 3(无图形界面资源开销) 2. **Systemd 兼容性**: ```bash # 查看传统运行级别对应的target $ systemctl list-units --type target runlevel5.target loaded active active Graphical Interface ``` 3. **服务管理**: ```bash # 禁止服务在级别3启动 sudo chkconfig --level 3 servicename off ``` > **最佳实践**:服务器环境使用级别3,桌面环境使用级别5,救援维护使用级别1[^2] #### 六、示例场景 **问题**:系统无法启动图形界面,需临时切换到命令行模式 **解决方案**: ```bash # 查看当前级别 $ systemctl get-default graphical.target # 临时切换到级别3 $ sudo systemctl isolate multi-user.target # 修复后恢复图形界面 $ startx # 或 sudo systemctl isolate graphical.target ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值