LinuxZone

LinuxZone.net
Linux系统网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

(Linux基础知识)Linux的启动顺序和执行顺序详解

2023年9月1日 354点热度

一、启动次序

当我们经过BIOS引导,并选择了Linux作为打算引导的操作系统后,接出来的执行次序如下:

1、加载并执行内核

第一个被加载的东西就是内核。之后把内核在显存中解压缩,就可以开始运行了。

2、/sbin/init进程

init进程是接出来第一个被启动运行的(非内核进程),因而它的进程编号PID的值总是1。

2.1首先linux启动应用程序 命令,init进程读取配置文件/etc/inittablinux启动应用程序 命令,决定须要启动的运行级别(Runlevel),每位级别分别由0到6的整数表示。

2.2之后执行/etc/rc.d/rc.sysinit。它做的工作十分多,包括设定PATH、设定网路配置(/etc/sysconfig/network)、启动swap分区、设定/proc等等

打算好以上一切过后,系统开始步入用户层的初始化阶段。

3、启动内核模块:

根据/etc/modules.conf文件或/etc/modules.d目录下的文件来装载内核模块

linux启动redis命令_linux启动应用程序 命令_linux启动ftp服务命令

4、执行运行级别目录rcX.d下的脚本。

执行/etc/rc.d/rc和/etc/rc.d/rcX.d目录下的脚本。X为缺省运行级别。

5、执行/etc/rc.d/rc.local。

执行用户自定义启动脚本。你可以把你想设置和启动的东西放在这儿。

6、/sbin/mingetty/bin/login

等待用户登录

linux启动ftp服务命令_linux启动应用程序 命令_linux启动redis命令

二、运行级别

Linux通常会有7个运行级别(可由initN来切换,init0为死机,init6为重启系统)

0-停机

1-单用户模式

2-多用户,并且没有NFS,不能使用网路

3-完全多用户模式

4-打黄酱的,没有用到

5-X11图形化登入的多用户模式

6-重新启动(假如将默认启动模式设置为6,Linux将会不断重启)

要查看当前运行级别,可以用runlevel命令。

配置文件/etc/inittab设置了默认的运行级别。

如:id:3:initdefault:就设置了默认运行级别为3-完全多用户模式

三、关于/etc/rc.d/init.d目录

首先提及的这个目录和运行级别和开机手动启动都没关系,但开机启动会用到该目录下的脚本。

一般我们把系统各类服务的启动和停止脚本,都放到这个目录下。例如mysqld,ftpd,samba,zabbix等。这种脚本必须能接受start,stop参数,还有其它可选项:reload,restart,force-reload。

另外,为了少打几个字,系统默认建了一个软链接/etc/init.d指向它。

四、关于/etc/rc.d/rcX.d目录

1、运行级别与rcX.d

在Linux中,对每一个运行级别来说,可能须要启动的服务都不同。例如我有A,B,C,D四个应用服务,在level2,只须要运行A,B,C,在level3须要运行A,C,D,E。

正是这个缘由,假如单靠一个/etc/rc.d/rc脚本来控制,那将显得很庞大无法维护。那为了维护便捷,在/etc/rc.d子目录中构建一个对应的子目录。这种子目录的命名方式是rcX.d,其中的X就是代表运行级别的数字。例如说,运行级别3的全部命令脚本程序都保存在/etc/rc.d/rc3.d子目录中。

这儿要注意,rcX.d放的都只是符号链接,所有真正的启动脚本是放置在/etc/rc.d/init.d下。当前目录对应的级别须要启动什么程序linux系统iso下载linux安装教程,就为什么启动脚本构建一个指向至/etc/rc.d/init.d下对应文件的软链。

rcX.d中放置脚本的链接命名格式是:

S{number}{name}K{number}{name}

S开始的文件向脚本传递start参数

K开始的文件向脚本传递stop参数

number决定执行的次序

例如S6464mysqld表示执行/etc/rc.d/init.d/mysqldstart,以启动mysqld,启动次序排在64(启动次序按从小到大进行)

2、将程序控制脚本加入手动启动

置于init.d目录下的控制脚本,须要自动执行

例如,重新启动mysql服务:

/etc/init.d/mysqlstart或servicemysqlstart

假如想要Linux在运行级别为2或3启动时,手动mysql启动脚本如何办呢?可以给须要手动运行的级别对应的rcX.d下做软链:

#cd/etc/rc.d/init.d&&

#ln-sf../init.d/mysql../rc2.d/K64mysql&&

#ln-sf../init.d/mysql../rc3.d/K64mysql

假如要让每位运行级别都启动手动运行mysql,这么就要重复创建6个(除等级0)软链。

linux提供了一个命令:checkconfig。它提供了一种简单的方法来设置一个服务的运行级别。

使用句型:

chkconfig[--add][--del][--list][系统服务]或chkconfig[--level][系统服务][on/off/reset]

使用范例:

chkconfig–list列举所有的系统服务

chkconfig–addhttpd降低httpd服务

chkconfig–delhttpd删掉httpd服务

chkconfig–levelhttpd2345on

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: chkconfig etc linux系统 linux脚本
最后更新:2023年9月1日

Linux系统网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux系统网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
Linux内核中的系统调用的标准表示可移植操作系统接口 分区和目录中创建的文件数量有限制 网络攻防干货:显示文件的前10行知识点详解 :Access访问时间函数讲解文件:#include定义函数 嵌入式Linux系统组成部分部分64移植过程 Linux中的文件时间属性可以使用stat命令命令查看 linux 命令 操作系统版本 中标麒麟-内核Linux银河麒麟内核 linux内核移植的主要模块(或组件) Ubuntu下终端默认字体,看起来很舒畅,蛮漂亮的 Linux设备树编译:内核中的dtc工具 服务器配置进行域名解析及域名的解析与解析 安装完linuxredhat5.4,打开浏览器发现显示中文全部成了乱码 linux下mysql英文乱码解决方式(2008-08-22) ubuntu字体安装方法,超实用!!(附详细教程) Linux下USB转串口DB9(RS232)和转换线 Linux上部署Web应用程序时非常常见的做法虚拟主机 (Linux基础知识)Linux用户权限管理 关于Linux发行版本的详细信息和架构信息的说明书 Linux操作系统安装Linux系统的镜像文件导入进去的应用 基于Linux的驱动开发:远见品质Linux内核与品质
Linux上部署Web应用程序时非常常见的做法虚拟主机Linux下USB转串口DB9(RS232)和转换线ubuntu字体安装方法,超实用!!(附详细教程)linux下mysql英文乱码解决方式(2008-08-22)安装完linuxredhat5.4,打开浏览器发现显示中文全部成了乱码服务器配置进行域名解析及域名的解析与解析Linux设备树编译:内核中的dtc工具Ubuntu下终端默认字体,看起来很舒畅,蛮漂亮的linux内核移植的主要模块(或组件)linux 命令 操作系统版本 中标麒麟-内核Linux银河麒麟内核Linux中的文件时间属性可以使用stat命令命令查看嵌入式Linux系统组成部分部分64移植过程:Access访问时间函数讲解文件:#include定义函数网络攻防干货:显示文件的前10行知识点详解分区和目录中创建的文件数量有限制Linux内核中的系统调用的标准表示可移植操作系统接口SHELL编程中使用变量的实验原理和使用技巧和技巧Linux服务器出现CPU负载达到100%居高不下的情况Java代码运行步骤及文档说明--Java代码动态规划软链接使用指令ln-s指令创建软连接文件操作系统
Linux内核结构分析:业界二进制SCA工具不能检测 Linux内核代码量大、逻辑关系复杂的错误进行追溯 支持LinuxLVM2磁盘管理方式的具体功能、检测分区表错误功能 安装U盘随身启动Linux系统的实际操作教程 马哥linux视频是学习linux运维的最佳教程 应用软件工程师的隐形作用与设备驱动的作用? 通用字符集的前世今生,你知道吗?元集 Python最有用的方法是使用unset命令,你知道吗? 提高Linux内核调试效率的几个小技巧 传送门:用Python做一个安全攻防工具 如何在Linux系统中创建目录中使用touch命令? Linux操作系统之目录文件描述符唯一性什么是进程输出 Linux内核版本查看命令大全命令排查方法 电脑操作系统不是一回事,windows系列是什么? 普通高校本科计算机专业特色教材精选 如何使用VirtualBox设置虚拟机程序?|andMac 怎么分辨手机是否有操作系统主流的智能手机有塞班 Linux开机后自动运行用户的应用程序或启动系统服务的命令 jobs命令:解除进程与终端之问的关系 redhat ip 拥有RedHat IP,轻松实现高效网络管理!
标签聚合
linux系统 文件目录 应用 文件 内核 软件 目录 linux服务器 命令 操作
书籍
课程
技术群
技术干货大合集↓
  • 2023年12月 / 28篇
  • 2023年11月 / 89篇
  • 2023年10月 / 94篇
  • 2023年9月 / 90篇
  • 2023年8月 / 92篇
  • 2023年7月 / 96篇
  • 2023年6月 / 91篇
  • 2023年5月 / 93篇
  • 2023年4月 / 91篇
  • 2023年3月 / 69篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源 | Linux系统

COPYRIGHT © 2024 LinuxZone.net ALL RIGHTS RESERVED.