对于绝大多数Linux程序员来说,进入Linux系统后一般看到的是黑乎乎的界面(开发模式),因为系统如果启动选择开发模式,会减少启动时间,优化内存等。但是通常我们刚安装完Linux系统,然后进去以后是图形的界面,(如果要切换到开发模式,使用快捷键Ctrl + F2即可),从开发模式返回到图形界面则使用快捷键(Ctrl + F1),或者在命令行里输入命令 startx 命令就可以切换到图形界面。

注意:如果你是开机启动模式设置的是图形界面启动,则通过快捷键( Ctrl + Alt + F2~F7 )进入到终端界面后,
你输入命令 startx 是返回不了图形界面的。但是如果你开机启动模式设置的是开发模式,则输入命令 statx 就可以返回到图形界面

Linux系统设置系统启动模式的方式可以修改(必须要以root身份登录才能修改)。修改系统启动模式的配置文件是   /etc/inittab

我们在切换到root用户后,然后 vi /etc/inittab, 就可以修改并查看该配置文件:

[root@xiaoluo ~]:# vi /etc/inittab

在输入上面的命令后,我们可以看到该配置文件里面的信息如下:

# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# System initialization is started by /etc/init/rcS.conf
#
# Individual runlevels are started by /etc/init/rc.conf
#
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf
#
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,
# with configuration in /etc/sysconfig/init.
#
# For information on how to write upstart event handlers, or how
# upstart works, see init(), init(), and initctl().
#
# Default runlevel. The runlevels used are:
#
- halt (Do NOT set initdefault to this)
# - Single user mode
# - Multiuser, without NFS (The same as , if you do not have networking)
# - Full multiuser mode
# - unused
# - X11
# - reboot (Do NOT set initdefault to this)
#
id::initdefault:
~

我们之间看到最后那几行,就可以看到Linux系统中默认的系统启动基本一共有7种,分别是:

:关机(不要设置这个!)
:单用户(类似于windows操作系统的安全模式)
:多用户状态没有网络服务
:多用户状态由网络服务(在做开发时,通常设置成这个启动级别,直接进入到命令行的界面)
:系统未使用保留给用户(不要设置这个!)
:图形界面(这是linux默认的启动级别,直接进入图形界面)
:系统重启(不要设置这个!)

下面那句:

id::initdefault:   // 设置系统默认的启动级别

就是用来设定系统的默认启动级别,Linux系统中默认是启动级别5,也就是图形界面启动

如果需要修改成默认级别为开发模式,只需要将 5 改成 3 即可

如:

将 id::initdefault:  改成   id::initdefault:

然后保存退出,重新启动一下系统 输入  reboot 命令即可。

警告:千万不要将启动基本设置为0, 4, 6!!!!!!

这时就会发现进入Linux系统的界面已经变成开发者模式了!

如果我们只是需要在Linux上做开发、部署项目的话,建议一般将系统启动模式设置为 开发模式!

【注】
如果有恶意用户将系统启动级别设置成0、、,我们该怎么解决这个问题?

在linux系统启动界面,我们快速按键盘上的 【e】 按钮,然后进入到了grub引导界面(这个根据Linux的版本可能有不同,我的CentOS6.4是需要在启动时按F2进入引导界面,
这个可以根据自己安装的Linux系统在开机时的提示进入引导界面),
在这个界面中选择第二个选项,然后再按下键盘上的 【e】按钮,在进入修改界面后,在最后输入【 1】(1前面有空格)
这样,linux系统在启动时就会以 单用户级别 启动起来(为什么这里不将其设置成3或者5,是因为linux系统
在启动时首先会去检查 /etc/inittab 文件的设定启动级别,如果在这时设置成5或者3,系统还是进不去,只能设置成1)
在设置好以后,按下键盘的【b】按钮,系统就能重新启动,并进入 单用户级别,这样我们就可以按照之前的方法修改
linux系统的启动级别。

这篇随笔主要是记录怎么设置Linux系统的启动级别,后面将会陆续学习Linux系统更多的东西!!!

参考

Linux学习笔记之Linux启动级别的更多相关文章

  1. linux学习笔记2 - linux常用命令

    转载请标注原链接:http://www.cnblogs.com/xczyd/p/5543731.html 第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装lin ...

  2. Linux学习笔记(22) Linux启动管理

    1. 系统运行级别 运行级别 含义 关机 1 单用户模式,可想象为windows的安全模式,主要用于系统修复 2 不完全的命令行模式,不含NFS服务 完全的命令行模式,就是标准字符界面 4 系统保留 ...

  3. Linux学习笔记之Linux启动引导过程

    早期时,启动一台计算机意味着要给计算机喂一条包含引导程序的纸带,或者手工使用前端面板地址/数据/控制开关来加载引导程序.尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行 ...

  4. Linux学习笔记之Linux系统启动过程

    Linux系统的启动过程可以分为五个阶段: 内核的引导 运行init 系统初始化 建立终端 用户登录系统 1.内核引导: 当计算机打开电源后,首先进行BIOS开机自检,按照BIOS中设置的启动设备(一 ...

  5. Linux学习笔记之Linux相关知识

    [想成为某一方面的大神,没有捷径可走,只能不断的记录.练习.总结.coding……] notes:主要从网上摘录了一些关于Linux的历史以及一些相关内容,以便对Linux系统有一定的了解.这不但可以 ...

  6. Linux学习笔记之Linux第一课-基本介绍

    Linux简介 Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的. Linux是一套免费使用和自由传播的类Unix操作系统,是一个基 ...

  7. Linux学习笔记之Linux目录结构、磁盘命名、启动过程

    1.Linux磁盘命名规则 名称的起名规则——/dev/xxyN: 1.Linux下装所有硬件设备的一个目录叫 /dev(devices) 2.Linux没有C盘.D盘.Linux最根上的一个目录叫  ...

  8. Linux学习笔记之Linux最小化安装启动后如何配置

    在VM虚拟机中安装CentOS 7 时 有时候顾虑到电脑硬件性能,我们需要最小化安装,而最小化安装后与centos6的版本是有一些差异的,接下来我们就对刚安装好的最小化centos7做一些操作,来世我 ...

  9. Linux学习笔记(21) Linux日志管理

    1. 简介 (1) 日志服务 在CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服务的使用,还是日志文件的格式 ...

随机推荐

  1. Keil MDK从未有过的详细使用讲解(转)

    这博主关于MDK 的使用的文章,写的得TM的好  TM的实用! 真心收藏! 熟悉Keil C 51的朋友对于Keil MDK上手应该比较容易,毕竟界面是很像的.但ARM内核毕竟不同于51内核,因此无论 ...

  2. Effective C++ —— 设计与声明(四)

    条款18 : 让接口容易被正确使用,不易被误用 欲开发一个“容易被正确使用,不容易被误用”的接口,首先必须考虑客户可能做出什么样的错误操作.  1. 明智而审慎地导入新类型对预防“接口被误用”有神奇疗 ...

  3. OpenGL 4.0 GLSL 基础教程概览——VAO和VBO常用操作接口

    (一) OpenGL  4.3 最新渲染管线图 从OpenGL 2.0 到 OpenGL 3.0变化非常大,但从OpenGL 3.0 到OpenGL 4.0 变化不是太大. 着色器程序直接运行在GPU ...

  4. 关于cstring ->string-> const char * 用U2A一步转换 错误的内存问题

    // CStringTest.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> #incl ...

  5. 浅析HTTPS与SSL原理

    版权声明:本文由盛旷 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/134 来源:腾云阁 https://www.qclo ...

  6. [SQL] sql server中如何查看执行效率不高的语句

    sql server中,如果想知道有哪些语句是执行效率不高的,应该如何查看呢?下面就将为您介绍sql server中如何查看执行效率不高的语句,供您参考.在测量功能时,先以下命令清除sql serve ...

  7. numeric_limits 模板的相关知识点

    说白了,它是一个模板类,它主要是把C++当中的一些内建型别进行了封装,比如说numeric_limits<int>是一个特化后的类,从这个类的成员变量与成员函数中,我们可以了解到int的很 ...

  8. hdu5542 The Battle of Chibi【树状数组】【离散化】

    The Battle of Chibi Time Limit: 6000/4000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Othe ...

  9. stark - filter、pop、总结

    一.filter 效果图 知识点 1.配置得显示Filter,不配置就不显示了 list_filter = ['title','publish', 'authors'] 2.前端显示 后端返回 字典 ...

  10. Python开发【项目】:RPC异步执行命令(RabbitMQ双向通信)

    RPC异步执行命令 需求: 利用RibbitMQ进行数据交互 可以对多台服务器进行操作 执行命令后不等待命令的执行结果,而是直接让输入下一条命令,结果出来后自动打印 实现异步操作 不懂rpc的请移步h ...