关于linux开机自启动

1、系统启动流程

在这里插入图片描述

2、 init、 inittab、 init.d、 rcx.d

在这里插入图片描述

/etc/inittab是Linux系统中的一个配置文件,用于定义系统的运行级别和相应的操作。其语法格式如下:

标签:运行级别:操作:进程
label:runlevel:action:process

下面是对每个部分的解释:

  • 标签(label):用来标识配置项的唯一标识符,表示输入的值。
  • 运行级别(runlevel):定义了系统的不同工作模式或状态,共有7个运行级别(0到6)。
  • 操作(action):指定了在特定运行级别下要执行的操作。
  • 进程(process):表示要执行的进程。

以下是对runlevel运行级别的解释:

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

每个配置项的操作(action)可以是以下之一:

  • boot:只在系统启动时运行。
  • bootwait:在系统启动时运行,系统启动后,当第一次从单用户模式进入多用户模式时处理该记录项。
  • sysinit:在运行boot或bootwait进程之前运行,指定的进程在访问控制台之前执行。
  • respawn:不管何时终止都重新启动进程,每当相应的进程终止执行,它会被重新启动。
  • shutdown:在关机时要运行的进程。
  • ctrlaltdel:当按下Ctrl+Alt+Del三个键同时按下时运行。
  • wait:告诉init必须等到相应的进程完成之后才能继续执行。

最后,进程(process)部分表示要执行的具体进程。

在这里插入图片描述

[root@cambricon ~]# cat /etc/inittab # Startup the system
::sysinit:/bin/mount -t devtmpfs devtmpfs /dev
::sysinit:/bin/mount -t proc proc /proc
::sysinit:/bin/mount -o remount,rw /
::sysinit:/bin/mkdir -p /dev/pts
::sysinit:/bin/mkdir -p /dev/shm
::sysinit:/bin/mount -a
::sysinit:/bin/hostname -F /etc/hostname
# now run any rc scripts
#::sysinit:/etc/init.d/rcS
::wait:/etc/rc.sysinit
::wait:/etc/init.d/rcS
::shutdown:/etc/init.d/rcK
console::respawn:-/bin/sh

这段代码是/etc/inittab文件的示例内容,用于初始化和配置系统启动过程中的各个步骤。下面是对每一行的解释:

  1. ::sysinit:/bin/mount -t devtmpfs devtmpfs /dev:在系统初始化阶段,挂载devtmpfs文件系统到/dev目录,提供设备节点。
  2. ::sysinit:/bin/mount -t proc proc /proc:同样在系统初始化阶段,挂载proc文件系统到/proc目录,提供进程信息。
  3. ::sysinit:/bin/mount -o remount,rw /:在系统初始化阶段,重新以读写模式挂载根文件系统。
  4. ::sysinit:/bin/mkdir -p /dev/pts:在系统初始化阶段,创建/dev/pts目录,用于伪终端支持。
  5. ::sysinit:/bin/mkdir -p /dev/shm:在系统初始化阶段,创建/dev/shm目录,用于共享内存支持。
  6. ::sysinit:/bin/mount -a:在系统初始化阶段,自动挂载其他文件系统。
  7. ::sysinit:/bin/hostname -F /etc/hostname:在系统初始化阶段,根据/etc/hostname文件设置主机名。
  8. # now run any rc scripts:注释,表示接下来要运行任何rc脚本。
  9. #::sysinit:/etc/init.d/rcS:注释掉的行,表示在系统初始化阶段运行rcS脚本。
  10. ::wait:/etc/rc.sysinit:等待,然后运行/etc/rc.sysinit脚本。
  11. ::wait:/etc/init.d/rcS:等待,然后运行/etc/init.d/rcS脚本。
  12. ::shutdown:/etc/init.d/rcK:在系统关闭时运行/etc/init.d/rcK脚本。
  13. console::respawn:-/bin/sh:创建一个控制台会话,如果终止则重新启动,并使用/bin/sh作为默认shell。

这些配置项定义了系统启动过程中的各个步骤和要执行的命令或脚本。它们确保系统在启动和关闭时按照特定的顺序进行必要的初始化和清理操作

以S开头的为start,以K开头的为kill
S+数字+字母
数字小的先执行,字母小的先运行
在这里插入图片描述

启动流程的操作
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/210169.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

每天一点python——day90

#每天一点Python——90 #类的创建 创建类的语法: class 类名:pass【缩进之后写类里面的内容】 [类里面写什么没有想好之前,可以用pass进行占位.可以不报错]#演示: class Lei:pass #以上就上一个类被创建的样例注意事项&#xff1a…

PHP基础 - 注释变量

一. 语言开始标识 在PHP中,文件的开头需要使用语言开始标识来指定该文件是PHP代码。标识通常为"<?php",也可以是"<?",但建议使用"<?php"以确保代码的兼容性和可读性。 <?php // PHP代码从这里开始写 二. PHP注释 注释是用…

[英语学习][11][Word Power Made Easy]的精读与翻译优化

[序言] 这次翻译, 译者有点点水平. 有些比较难表达的, 都能正确地翻译出来. 但有点很奇怪, 难的地方译者翻译正确, 容易的地方又错了. [英文学习的目标] 提升自身的英语水平, 对日后编程技能的提升有很大帮助. 希望大家这次能学到东西, 同时加入我的社区讨论与交流英语相关的…

遇到这个问题怎么办

1. 问题现象 话说近日博主的团队中&#xff0c;有一个小盆友遇到了一个问题&#xff0c;即使用RSA进行加解密的时候&#xff0c;抛异常了&#xff1a; java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: IOException: DerInputStream.getLeng…

高防CDN:在保障服务器与网站成本的角度的智慧选择

随着网络攻击的不断升级和演变&#xff0c;保障服务器与网站安全成为了企业不可忽视的重要问题。高防CDN&#xff08;内容分发网络&#xff09;技术应运而生&#xff0c;为服务器与网站的稳定运行提供了全面而有效的保护。本文将从服务器与网站成本的角度深入分析高防CDN在降低…

【Python】Faker库详解:创建测试数据轻而易举

Python Faker库详解&#xff1a;创建测试数据轻而易举 在软件开发和测试过程中&#xff0c;通常需要大量的测试数据来模拟真实环境。Python的Faker库为开发者提供了一个方便、灵活且强大的工具&#xff0c;用于生成各种虚构数据。本文将深入介绍Faker库&#xff0c;演示其基本…

十一、了解分布式计算

1、什么是&#xff08;数据&#xff09;计算&#xff1f; 2、分布式(数据)计算 &#xff08;1&#xff09;概念 顾名思义&#xff0c;分布式计算&#xff0c;即以分布式的形式完成数据的统计&#xff0c;得到需要的结果。 分布式数据计算&#xff0c;顾名思义&#xff0c;就是…

c语言选择排序总结(详解)

选择排序cpp文件项目结构截图 项目cpp文件截图 项目具体代码截图 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <math.h> #include <iostream> #include <string.h> #include <time.h> #include &…

Java发展史

Java发展史 Java历史的几个重要节点&#xff1a; 1990&#xff0c;Sun公司启动了一个名为“绿色计划”的项目&#xff0c;由James Gosling等领导&#xff0c;目标是开发一种可以在机顶盒等消费性电子产品上运行的程序架构。这个计划产生了Java的前身&#xff1a;Oak&#xff…

Java八股文面试全套真题【含答案】-XML篇

XML 是什么&#xff1f;它的全称是什么&#xff1f; 答案&#xff1a;XML&#xff08;可扩展标记语言&#xff09;是一种用于描述数据的标记语言&#xff0c;用于存储和交换结构化的信息。XML 的全称是 eXtensible Markup Language。XML 和 HTML 有什么区别&#xff1f; 答案&a…

看图学源码 之 ConcurrentHashMap put、get、remove、clear、扩容等相关方法的源码分析

ConcurrentHashMap 引入 HashMap 的弊端 多线程下是不安全的&#xff0c;是有死循环的 JDK1.7 的时候会使用头插法将新的节点增加到头部&#xff0c;那么就会造成链表翻转成为了闭环&#xff0c;就是所谓的死循环。 JDK1.8之后使用的是尾插法&#xff0c;因此不会造成环形链…

京东数据运营:京东API接口有哪些?京东数据如何采集调用?

市场分析对于电商品牌来说非常重要&#xff0c;它可以帮助电商品牌更好地理解市场&#xff0c;把握市场机会&#xff0c;以及制定有效的产品定价、产品营销策略等等。 结合市场中可以帮助品牌方做市场分析的电商数据分析工具——鲸参谋电商数据分析平台&#xff0c;我们一起具体…

在Mac上安装Windows应用程序的简便方法:CrossOver for Mac

对于许多Mac用户来说&#xff0c;有时候他们可能需要使用一些只有在Windows上才能找到的应用程序。以前&#xff0c;解决这个问题的方法是通过安装Windows虚拟机或使用双系统来在Mac上运行Windows应用程序。但这些方法需要额外的硬件资源和时间来配置&#xff0c;并且可能会导致…

IOT安全学习路标

1. 物联网基础知识 首先&#xff0c;你需要建立坚实的物联网基础知识&#xff0c;包括IoT的架构和组件&#xff0c;传感器和设备的连接和通信技术&#xff0c;云端和边缘计算等。 2. 通信和网络安全 学习关于物联网通信和网络安全的基础知识&#xff0c;包括加密和认证技术、…

通俗解释一下“强静态类型”

我写软件已经有 20 多年了&#xff0c;随着时间的推移&#xff0c;我越来越确信强静态类型不仅是一个好主意&#xff0c;而且几乎总是正确的选择。 非类型化语言(或语言变体)肯定有用途&#xff0c;例如&#xff0c;当使用 REPL 时&#xff0c;或者在已经无可救药的无类型环境(…

有什么进销存软件能对接微信小程序?

有什么进销存软件能对接微信小程序&#xff1f; 据我所知&#xff0c;很多进销存软件都有配套的微信小程序吧。 以我们现在用的这个为例&#xff0c;这也是同行推荐过来的&#xff0c;很好用&#xff0c;而且性价比很高—— 在线平台&#xff0c;无需下载APP&#xff0c;搭载…

C语言实战演练之跳动的爱心C语言版

跳 动 的 爱 心 - LOVE - 完整程序 #include <stdio.h> #include <math.h> #include <windows.h> #include <tchar.h> float f(float x, float y, float z) {float a x * x 9.0f / 4.0f * y * y z * z - 1;return a * a * a - x * x * z * z …

ELK简单介绍一

任务背景 运维人员需要对系统和业务日志进行精准把控&#xff0c;便于分析系统和业务状态。日志分布在不同的服务器上&#xff0c;传统的使用传统的方法依次登录每台服务器查看日志&#xff0c;既繁琐又效率低下。所以我们需要集中化的日志管理工具将位于不同服务器上的日志收…

蓝桥杯日期问题

蓝桥杯其他真题点这里&#x1f448; 注意日期合法的判断 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;public class Main{static int[] days {0,31,28,31,30,31,30,31,31,30,31,30,31};static BufferedReader in new Buf…

【核心重点】Flink四大基石

1. Time&#xff08;时间机制&#xff09; 时间概念 处理时间&#xff1a;执行具体操作时的机器时间&#xff08;例如 Java的 System.currentTimeMillis()) &#xff09;事件时间&#xff1a;数据本身携带的时间&#xff0c;事件产生时的时间。摄入时间&#xff1a;数据进入 …