linux系统底层逻辑 开机顺序 ubuntu22.04系统

以下有免费的4090云主机提供ubuntu22.04系统的其他入门实践操作

地址:星宇科技 | GPU服务器 高性能云主机 云服务器-登录

相关兑换码星宇社区---4090算力卡免费体验、共享开发社区-CSDN博客

兑换码要是过期了,可以私信我获取最新兑换码!!!'

下面获取最新兑换码

之所以推荐给大家使用,是因为上面的云主机目前是免费使用的,不需要大家再去安装虚拟机,部署虚拟机,环境都搭配好了,非常适合新手入门,减少搭建的时间,把时间都用在实践上。

第一步 开机自检,加载BIOS

第二步 读取MBR 引导扇区

第三步 BOOT Loader grub 引导菜单

#grub启动文件

cat /etc/default/grub

#cp复制完整副本

sudo cp /etc/default/grub /etc/default/grub.bak

GRUB_DEFAULT

#设置加载哪个OS 单个OS时默认0 可以输入OS名称

sudo update-grub #收到done

GRUB_TIMEOUT #系统可选择其他OS时间

隐藏启动菜单

++当文件打开时,您需要设置以下几行:++

  • ++GRUB_TIMEOUT_STYLE=hidden++++-++++隐藏启动菜单。尽管它仍然会等待您通过++++GRUB_TIMEOUT++++设置的几秒钟。++
  • ++GRUB_TIMEOUT_STYLE=countdown++++-++++隐藏启动菜单并显示倒计时。甚至设置++++GRUB_TIMEOUT=0++++。数到++++3++++、++++2++++、++++1++++。++
  • ++GRUB_TIMEOUT=0++++-++++它将立即启动默认操作系统。但是,您可以将其设置为++ ++3++ ++或++ ++5++++,这样您就可以在需要时按++++ESC++++(++++F4++++或按住++++Shift++++)来显示启动菜单。++
  • ++GRUB_DISABLE_OS_PROBER=true++++-++++禁用++++"++++/etc/grub.d/30_os-prober++++"++++,因为它会覆盖++++GRUB_TIMEOUT_STYLE++++的值。但是,它将不再找到除++++Ubuntu++++之外的其他操作系统。++
  • ++GRUB_RECORDFAIL_TIMEOUT=0++++-++++设置上次启动失败时的超时时间。如果没有该键,它将显示并停止在启动菜单等待用户操作。++

第四步 加载kernel内核

内核解压-内核启动-调用start_kernel函数

start_kernel函数位于init/main.c文件中,负责完成大部分内核的初始化工作。

  • 初始化控制台:设置内核的打印机制,以便后续的输出可以显示出来。
  • 初始化内存管理子系统:建立初始的内存管理结构,准备好内存分配机制。
  • 检测和初始化硬件设备:内核会检测并初始化系统中的各种硬件设备和驱动程序。
  • 启动中断处理机制:设置和启动中断处理机制,使得内核可以响应硬件中断。
  • 初始化内核调度器:初始化内核调度器,以便管理进程调度。
  • 加载初始进程:内核创建并启动第一个用户空间进程,通常是/sbin/init。

第五步 init进程依据inittab文件夹来设定运行级别

内核被加载后,第一个运行的程序便是/sbin/init,该文件会读取/etc/inittab文件,并依据此文件来进行初始化工作。

其实/etc/inittab文件最主要的作用就是设定Linux的运行等级,其设定形式是":id:5:initdefault:",这就表明Linux需要运行在等级5上。Linux的运行等级设定如下:

0:关机

1:单用户模式

2:无网络支持的多用户模式

3:有网络支持的多用户模式

4:保留,未使用

5:有网络支持有X-Window支持的多用户模式

6:重新引导系统,即重启

关于/etc/inittab文件的学问,其实还有很多。

第六步 init进程执行rc.sysinit

在设定了运行等级后,Linux系统执行的第一个用户层文件就是/etc/rc.d/rc.sysinit脚本程序,它做的工作非常多,包括设定PATH、设定网络配置(/etc/sysconfig/network)、启动swap分区、设定/proc等等。

第七步 启动内核模块

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

第八步 执行不同运行级别的脚本程序 /etc/rc.d/rc.RUNLEVEL # RUNLEVEL为缺省的运行模式

根据运行级别的不同,系统会运行rc0.d到rc6.d中的相应的脚本程序,来完成相应的初始化工作和启动相应的服务

第九步 执行/etc/rc.d/rc.local ----可以追加自己要启动的脚本

你如果打开了此文件,里面有一句话,读过之后,你就会对此命令的作用一目了然:

This script will be executed *after* all the other init scripts.

You can put your own initialization stuff in here if you don't

want to do the full Sys V style init stuff.

rc.local就是在一切初始化工作后,Linux留给用户进行个性化的地方。你可以把你想设置和启动的东西放到这里。

第十步 执行 /bin/login程序 启动mingetty,进入登录状态

到此系统就启动完成了

后续更新请及时关注吧

请各位帅哥美女们多多支持!!小花花小心心 更多入门知识慢慢补充啦

后期持续关注!

相关推荐
cui_ruicheng4 小时前
LangChain 应用开发(十四):Agent 上下文与记忆机制
服务器·人工智能·python·langchain
一直C4 小时前
Linux网络编程|HTTP协议详解(报文、请求方法、状态码)
linux·http·wireshark·vim·visual studio
爱喝水的鱼丶5 小时前
SAP-ABAP:ABAP 用户出口开发规范与避坑指南:10 类典型错误与运维方案
运维·性能优化·sap·abap·增强·经验交流·出口
博、、5 小时前
从零构建智慧场馆解决方案:架构设计与开发实践
大数据·运维
风fffff5 小时前
dsh-project-memory v0.3.0到v0.4.0:从项目记忆到开发工作流记忆的演进
ai·agent·插件·dsh·deepseek harness
敢敢是只喵i5 小时前
给现有业务系统接 AI 助手,入口怎么选?网页聊天、自动化任务与本地 Agent 对比
运维·人工智能·ai·开源·自动化·安全架构
ddshub_cc6 小时前
GPT Image 2 电商场景指南:主图、详情页与活动物料怎么出
gpt·ai·image2·ai生图·电商ai·电商工具·电商生图
MinggeQingchun7 小时前
AI - 阿里云百炼
ai·阿里云百炼
章老师说7 小时前
BFE v1.8.6 正式发布:AI 网关计费精细化、Claude 协议与会话亲和性升级
运维·人工智能·ai·负载均衡·ai-native
Brilliantwxx7 小时前
【Linux】 进程(10) 进程控制深度解析:创建、终止与等待
linux·运维·服务器·c语言·开发语言·网络