Linux操作系统的启动过程

2023-05-16

Linux操作系统的启动过程

  • 一、Linux操作系统的开机过程
  • 二、初始化进程服务
  • 三、服务管理命令


一、Linux操作系统的开机过程

Linux操作系统的开机过程可简记为:“两次检测,一次装载”。即首先对BIOS做初始化,然后进入系统引导程序(Boot Loader),接着加载系统内核,最后内核初始化并启动初始化进程。

(1)BIOS初始化。主要是对硬件进行检测,包括:主机的硬件设备,如磁盘、内存条、显卡等。

(2)系统引导程序的引导程序GRUB负责从磁盘中读入真正的Linux OS内核程序,并执行随后的启动;
注意:GRUB是一个功能强大的Boot Loader,如果PC已经安装了不同的OS,进入GRUB程序后,就可以使用上下方向键选择要进入的OS。

(3)加载系统内核是引导程序将内核解压缩到主存储器中,并且利用内核的功能,开始测试与驱动各个周边设备,如网卡、CPU等,此时,Linux内核将会重新检测一次硬件设备

(4)内核初始化并启动初始化进程。初始化进程作为Linux OS启动后的第一个正式服务,需要完成Linux中相关的初始化工作,从而为用户提供合适的工作环境。


二、初始化进程服务

配置网卡信息,使用nmcli命令,其格式如下:

三、服务管理命令

我们通过以下命令启动httpd服务

service httpd start

Linux系统提示启动成功,如下图所示:

在这里插入图片描述

这时,我们可以进一步访问httpd绑定的web服务,即在浏览器上访问127.0.0.1这个地址,可显示以下web界面。
在这里插入图片描述

类似地,我们同样通过以下命令关闭httpd服务

service httpd stop

Linux系统提示关闭成功,如下图所示:

我们可以通过以下命令查看httpd服务的状态

service httpd status

如下图所示:


​ 【彩蛋来了】

看完作者写的这篇博文,或许读者还想再找找描述类似内容的博文。预料之中,作者已将它们附上,请参见:

  1. 一个非常好用的网卡配置命令—nmcli命令详解

writen in 2022.12.07, updated in 2022.12.16

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux操作系统的启动过程 的相关文章

  • python获取上传/下载速度

    我想在我的计算机上监控上传和下载速度 一个名为 conky 的程序已经在 conky conf 中执行了以下操作 Connection quality alignr wireless link qual perc wlan0 downspe
  • 在 Linux 上以编程方式设置 DNS 名称服务器

    我希望能够通过我的 C C 程序为 Linux 上的 DNS 名称服务器添加 IP 地址 我在一个带有只读 etc resolv conf 的嵌入式平台上 这意味着我不能简单地将 nameserver xxx xxx xxx xxx 行添加
  • 就分页分段内存而言的程序寿命

    我对 x86 Linux 机器中的分段和分页过程有一个令人困惑的概念 如果有人能澄清从开始到结束所涉及的所有步骤 我们将很高兴 x86 使用分页分段内存技术进行内存管理 任何人都可以解释一下从可执行的 elf 格式文件从硬盘加载到主内存到它
  • linux-x64 二进制文件无法在 linuxmusl-x64 平台上使用错误

    我正在安装Sharp用于使用 package json 的 Nodejs 项目的 docker 映像上的映像压缩包 当我创建容器时 我收到有关 Sharp 包的以下错误 app node modules sharp lib libvips
  • 使用循环在 C 中管道传输两个或多个 shell 命令

    我正在尝试执行ls wc l通过 C 语言程序 而不是使用命令行 这是我当前的工作代码 int main int pfds 2 pipe pfds pid t pid fork if pid 0 The child process clos
  • 如何获取 (Linux) 机器的 IP 地址?

    这个问题和之前问的几乎一样如何获取本地计算机的IP地址 https stackoverflow com questions 122208 get the ip address of local computer 问题 但是我需要找到一个的I
  • CMake 链接 glfw3 lib 错误

    我正在使用 CLion 并且正在使用 glfw3 库编写一个程序 http www glfw org docs latest http www glfw org docs latest 我安装并正确执行了库中的所有操作 我有 a 和 h 文
  • 使用 MAX_ORDER / 包含 mmzone.h

    根据https www kernel org doc Documentation networking packet mmap txt https www kernel org doc Documentation networking pa
  • 如何让R使用所有处理器?

    我有一台运行 Windows XP 的四核笔记本电脑 但查看任务管理器 R 似乎一次只使用一个处理器 如何让 R 使用全部四个处理器并加速我的 R 程序 我有一个基本系统 我使用它在 for 循环上并行化我的程序 一旦您了解需要做什么 此方
  • 绕过 dev/urandom|random 进行测试

    我想编写一个功能测试用例 用已知的随机数值来测试程序 我已经在单元测试期间用模拟对其进行了测试 但我也希望用于功能测试 当然不是全部 最简单的方法是什么 dev urandom仅覆盖一个进程 有没有办法做类似的事情chroot对于单个文件并
  • 如何在 *nix 中登录时运行脚本?

    我知道我曾经知道如何做到这一点 但是 如何在 unix 中登录时运行脚本 bash 可以 From 维基百科 Bash http en wikipedia org wiki Bash 28Unix shell 29 当 Bash 启动时 它
  • 如何让 Node.js 作为后台进程运行并且永不死掉?

    我通过 putty SSH 连接到 linux 服务器 我尝试将其作为后台进程运行 如下所示 node server js 然而 2 5 小时后 终端变得不活动 进程终止 即使终端断开连接 我是否也可以使进程保持活动状态 Edit 1 事实
  • [A-Z] 表示 [A-Za-z] 是怎么回事?

    我已经注意到 至少在我使用的一些基于 Unix 的系统上 ls A Z 已经给了我预期的结果ls A Za z 让我无法轻松获得以大写字母开头的该死的文件列表 我刚刚遇到了同样的事情grep 我无法让它停止与小写字母匹配 A Z 直到我最终
  • 如何wget目录中最新的文件

    我想编写一个 bash 脚本来下载并安装最新的每日构建程序 RStudio 是否有可能使wget仅下载目录中最新的文件http www rstudio org download daily desktop http www rstudio
  • 何时用引号将 shell 变量括起来?

    我应该或不应该在 shell 脚本中用引号括住变量吗 例如 下列说法正确的是 xdg open URL eq 2 or xdg open URL eq 2 如果是这样 为什么 一般规则 如果它可以为空或包含空格 或实际上任何空格 或特殊字符
  • 如何在shell脚本中给出密码?

    在 shell 脚本文件中 我使用一些命令 例如scp and make install要求我输入密码 我运行一个 shell 脚本来编译一个大项目 一段时间后它会要求我输入密码才能使用scp 我需要等待该过程并在此之后提供密码 我只想通过
  • 在 scp 的简单函数包装中使用波形符 ~ 时出现问题

    我想放置一个简单的bash功能在我的 bashrc围绕着scp通过接受 源 参数和 目标 参数来命令 到目前为止已经尝试过 function send eval scp 1 user annoyingly long server name
  • 从核心转储中获取堆栈跟踪

    如何从核心转储文件中获取堆栈跟踪 该文件大约 14 mb 是在我的应用程序退出并显示 分段错误 后生成的 我使用的是红帽 5 5 gdb usr bin myapp binary corefile 然后 使用以下之一 gdb bt gdb
  • 如何在Linux中自动启动需要X的应用程序

    我试图在系统进入运行级别 5 时自动启动 X 应用程序 这样做的正确方法是什么 我写了一个脚本并将其放在 etc init d 中 我已运行适当的 chkconfig 命令来设置 etc rcX d 目录中的符号链接 一切工作正常 除了当我
  • 从另一个 python 脚本获取返回信息

    我在 Linux 上 我有一个 python 脚本 我想从另一个 python 脚本调用它 我不想将其作为模块导入 为了一层安全性 现在为了学术练习 因为我想弄清楚这一点 我实际上想让一个脚本使用 os system 或另一个类似的函数 并

随机推荐

  • Spring JPA native query 分页错误记录

    相信大家对SpringData JPA 自定义分页查询已经很熟悉了 xff0c 今天博主遇见了一个奇怪的问题 xff0c 记录下来 xff0c 跟大家分享 根据已经学习到的知识 xff0c 对于 64 Query nativeQuery 6
  • python 重复输出字符串

    阿里云大学人工智能学前小测验 Python测试 7 a 61 1 b 61 a 2 输出b的值为 A 1 B 2 C 11 D null 我选的答案是D xff0c 结果 答案是C xff0c 因为python可以通过str 2重复输出字符
  • socket中文乱码问题

    问题描述 xff1a 后端向前端发送中文 xff0c 前端显示正常 前端向后端发送中文 xff0c 后端显示乱码 解决 xff1a 前端js引入 最新版的 socket io js xff0c 不能使用socket io min js sp
  • python 将字符串小数 转换为 整型

    问题描述 xff1a 直接使用int函数将字符串类型的小数转换为 int型会报错 问题解决 xff1a 先转换为float型 xff0c 再转换为 int 型
  • MySQL binlog设置和查看命令

    目录 开启binlog重置命令查看binlog 开启binlog span class token comment 编辑模式进入 etc my cnf span span class token function vim span etc
  • kafka3.1 简介 (一)

    kafka3 1 简介 xff08 一 xff09 主要概念和术语事件流 xff08 Event streaming xff09 服务器 xff08 server xff09 与客户端 client serversclient 事件 xff
  • 作为一名普通的程序员,聊聊这四年的工作感悟

    之前有些小伙伴一直想听我分享更多有关我的工作内容的事情 xff0c 今天就来和大家分享一下 我是一名普通的程序员 xff0c 这四年来我的工作内容发生了哪些变化 xff0c 以及我有哪些感悟 我是16届的毕业生 xff0c 我的第一份工作是
  • js页面跳转的时候使用 post发送数据

    需求背景 页面跳转的时候需要带一些参数 xff0c 但是又不想让这些数据展示给用户 xff0c 所以需要使用post实现跳转 代码实现 span class token comment 点击进入项目详情页面 span window span
  • flask返回页面和数据,js获取数据

    flask 返回数据 span class token keyword if span request span class token punctuation span method span class token operator 6
  • git 将本地分支与远程分支关联

    需求背景 项目在远程新建了一个分支 xff0c 但是本地没有这个分支 xff0c 需要在本地开发完之后 xff0c 将最新的代码放到 远程分支上 问题一 xff1a 本地没有这个分支 远程新建了一个分支 xff0c 但是本地并没有这个分支
  • python 分割字符串,只分割一次

    需求背景 在开发过程中 xff0c 需要对部分字符串进行切割 xff0c 但是这个字符串是用户输入的 xff0c 用户可能会输入下划线 xff0c 如果只是单纯的分割 xff0c 则分割的结果不对 xff0c 需要对这个进行处理 解决方案
  • mysql查询其中一个字段 和 查询所有字段效率比较

    第一种 查询所有 xff0c 10000次 xff0c span class token keyword sql span span class token operator 61 span span class token string
  • tr td设置内边距 和 外边距

    tr tr xff1a 设置 margin 和 padding 都无效 td td xff1a 设置 margin无效 设置 padding有效
  • apppium 两个H5页面之间进行切换pagesource打印出的是上个页面的信息

    背景 当前项目有很多个H5界面 xff0c 在进行上下文切换的时候 xff0c 发现打印的pagesource是上一个H5页面的元素 原因 H5页面需要 chromedrive exe进行加载 xff0c 需要杀掉上一个页面的 chrome
  • uiautomatorviewer手机横屏显示截图调整为竖屏

    背景 手机app部分界面是横屏显示 xff0c 但是 uiautomatorviewer是竖屏显示 解决方案 将竖屏的图片 保存下来 xff0c 然后将图片旋转为横屏 再次打开 解决 1 点击保存按钮 xff0c 保存这个图片 2 将图片调
  • 版本管理-创建git仓库

    创建git仓库 把已有的项目代码纳入git管理 span class token builtin class name cd span 项目代码所在文件夹 span class token function git span init 新建
  • git 撤销commit

    撤销未push的commit span class token comment 用户已经执行的操作 span span class token function git span span class token function add
  • Django整理01:启动流程

    目录 启动 启动 span class token comment 启动命令 xff1a span python manage py runserver span class token comment 运行先文件的handler函数 sp
  • 差量更新问题记录

    问题 xff1a 升级后台配置了差量更新 xff0c 但是用户设备检测到的是全量更新 xff0c 测试设备检测到的是差量更新 原因 xff1a 差量更新需要具备的条件 xff1a 1 升级后台配置了差量更新的链接 2 设备对应的目录下有ba
  • Linux操作系统的启动过程

    Linux操作系统的启动过程 一 Linux操作系统的开机过程二 初始化进程服务三 服务管理命令 一 Linux操作系统的开机过程 Linux操作系统的开机过程可简记为 xff1a 两次检测 xff0c 一次装载 即首先对BIOS做初始化