引导过程与服务控制

一、开机启动的完整过程

bios加电自检测-------mbr------grub----------加载内核文件------------启动第一个进程

简述:加电后bios程序会自检硬件,硬件无故障,会根据第一启动项去找内核,一般来说,第一启动项是硬盘,找到硬盘后,会根据mbr的指引找到完整的grub程序,再根据grub的配置文件找到内核文件的具体位置,然后将内核文件加载到内存中运行,内存加载好后,会启动第一个程序。

bios作用:检测硬件是否正常,然后根据biso中的启动项设置,去找内核文件

boot:开机启动顺序(你可以把内核文件放在何处?)

1.硬盘

2.移动设备(u盘移动硬盘,光驱)

3.网络启动

mbr(二进制):因为grub程序太大,第一个扇区存不下所有的grub程序,所以分为两部分,指引硬件找到内核文件

grub:根据grub配置文件(grub.cfg)中记录的位置,去找到内核文件(高级语言)

加载内核:把内核运行在内存中

启动进程:启动第一个祖宗进程

centos6:init

centos7:启动systemd

1.1区别

init:串行启动后续的程序,一个一个按顺序启动

systemd:并行启动程序,全部一起启动

1.2systemd

systemd:是系统级的程序,代为管理系统上的程序

systemd:保姆级

yum以及rpm安装的软件可以直接使用systemctl去启动关闭,重启,开机自启等功能;   编译安装,不可以直接使用systemctl命令去管理程序,需要手写一个配置文件

systemd   **unit(单元)--------描述一个软件的作用和基本信息**,systemd方便管理程序,将程序按照特定的功能分成了很多单元;    

服务单元---写配置

systemctl       get-default------查看默认运行级别

systemctl       set-default------设置默认的级别


rpcbind:启动后,会监听111端口

1.3linux操作系统的运行级别

0:关机

1:单用户,类似于windows的急救模式

2:字符界面,少些功能 (nfs)

3:字符界面

4:字符界面,从来没用过

5:图形界面

6:重启

runlevel:查看当前运行级别

实验1:模拟破坏mbr和分区表,然后修复

1:新建一块硬盘

fdisk分区一下

格式化一下:

mkfs.xfs  /dev/sdb1

挂载到mnt下:

mount /dev/sdb1  /mnt/

2:将备份文件备份到新盘

dd   if=/dev/sda         of=/mnt/mbr       count=1     bs=512

进入mnt下:cd  /mnt

3.模拟破坏:

dd  if=/dev/zero        of=/dev/sda   count=1  bs=512

4.reboot-----重启一下

 

5.然后进入急救模式修复:3  2  1

6.mkdir  bak

7.mount  /dev/sdb1   bak

8.dd  if=bak/mbr.bak   of=/dev/sda   count=1  bs=512

9.reboot---重启服务


实验2:修复grub文件及程序

1.cd   /boot/     cd   grub2/

2.模拟破坏 grub.cfg 配置文件

mv   grub.cfg   /opt

3.重启一下---reboot

4.

5.

6

7

8.

9.先切换根,从光盘的根切换到 自己系统的根

chroot    /mnt/sysimage

10.重新安装grub2程序,在sda磁盘

grub2-install    /dev/sda

11.重新生成配置文件

grub2-mkconfig    -o     /boot/grub2/grub.cfg

12.退到光驱的根下----exit

13.重启----reboot

实验3:破解密码

第一种:有光驱

1.

2.

3.

4.

5.

6.切换根目录

chroot    /mnt/sysimage

7.修改密码

passwd

8.最后,exit退出,reboot--重启一下


2.无光驱情况

1.重启

2.

3.进入了grup程序里,输入命令

rd.break

4.挂载

mount  -o   remount,rw           /sysroot

5.切根,修改密码

chroot       /sysroot

passwd

6.刷新一下,打个标记

touch      /.autorelabel

7.exit退出去;reboot重启

实验4:编译安装nginx-systemctl

1.cd  /data/-----切换到data下

2.编辑文件

vim  test.sh

cd  /opt
wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar xf   nginx-1.18.0.tar.gz
cd  nginx-1.18.0
yum -y install gcc pcre-devel openssl-devel zlib-devel openssl  openssl-devel 
#请使用网络源
mkdir /ky35/nginx -p    
./configure   --prefix=/ky35/nginx
make

make  install

ln -s /ky35/nginx/sbin  
#做软链接   可以补全  

3.

bash  test.sh

4.

vim  /usr/lib/systemd/system/nginx.service

[Unit]
Description=The nginx HTTP and reverse proxy server

[Service]
PIDFile=/ky35/nginx/logs/nginx.pid   #根据pid号方便操作

注释:nginx.pid---放在nginx主进程中;pid号:识别应用程序


ExecStart=/ky35/nginx/sbin/nginx  #使用绝对路径

注释:第一个nginx:文件夹名字;后一个nginx:最后得到的一个可执行文件


ExecStop=/usr/bin/kill -s TERM $MAINPID   #杀死进程

注释:-s  TERM:发送一个信号;$MAINPID:当前nginx程序的主id号


ExecReload=/ky35/nginx/sbin/nginx -s reload   #重新加载

注释:后一个nginx:一个命令,有自己的选项;

           -s:给自己发送一个重新加载的信号,只能发送:stop,quit,reopen,reload


[Install]
WantedBy=multi-user.target    #安装字符界面

注释:WantedBy:在哪个级别运行

           multi-user.target:字符界面

5. 要 告诉  systemd  我加入你了

systemctl  daemon-reload-----nginx

6.开启nginx

systemctl  start  nginx

二、服务程序管理

1.介绍

什么是服务程序?

1.一旦运行一直运行,不会退出

2.一般是后台运行,不会影响前台的操作


管理服务程序

开启

关闭

重启

重新加载配置文件

开机自启

开机不自启

2.chkconfig    centos6

service   服务程序     start

service   服务程序     stop

service   服务程序     restart

service   服务程序     reload

service   服务程序     status

在 /etc/init.d/  写一个同名文件的脚本 (必须要有 执行权限)

chkconfig  --level  35  服务程序    on/off     开机自启和关闭

3.chkconfig      centos7

systemctl     start     服务名

systemctl     stop     服务名

systemctl     status     服务名

systemctl     reload     服务名

systemctl     restart     服务名

开机自启

systemctl       enable     服务名

开机自启,并立即启动

systemctl      enable   --now      服务名

开机不自启

systemctl       disable       服务名

开机自启,并立即关闭

systemctl      disable   --now      服务名


如果用yum 安装 以及 rpm 安装,会自动生成一个配置文件,不需要手动加入

systemd会自动加入


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

(学习打卡2)重学Java设计模式之六大设计原则

前言:听说有本很牛的关于Java设计模式的书——重学Java设计模式,然后买了(*^▽^*) 开始跟着小傅哥学Java设计模式吧,本文主要记录笔者的学习笔记和心得。 打卡!打卡! 六大设计原则 (引读:这里…

最新-mybatis-plus 3.5分页插件配置

mybatis-plus 3.5分页插件配置 前提 1.项目不是springboot, 是以前的常规spring项目 2.mp 从3.2升级到3.5,升级后发现原本的分页竟然不起作用了,每次查询都是查出所有 前后配置对比 jar包对比 jsqlparser我这里单独引了包,因为版本太低…

[蓝桥杯2020国赛]答疑

答疑 题目描述 有 n 位同学同时找老师答疑。每位同学都预先估计了自己答疑的时间。 老师可以安排答疑的顺序,同学们要依次进入老师办公室答疑。 一位同学答疑的过程如下: 首先进入办公室,编号为 i 的同学需要 si​ 毫秒的时间。然后同学问…

深入理解SPi通讯协议

目录 SPI简介: 主设备通过选择线(SS) 主设备通过时钟线(SCLK) 主设备通过主输出线(MOSI) 主设备通过主输出线(MISO) SPI读写数据: SPI写入数据&#xf…

超详细解释奇异值分解(SVD)【附例题和分析】

目录 一. 矩阵对角化 二. 奇异值分解 三. 对比奇异值分解与特征值分解 四. SVD分解与四大基础子空间 五. SVD分解的正交矩阵 六. 方阵与SVD分解 七. 单位特征向量与SVD分解 八. 例题分析:秩为1 九. 例题分析:秩为2 十. 计算机网络与矩阵的秩 一…

从董宇辉小作文风波,我们普通人能学到些什么?

哈喽,大家好啊,我是雷工! 最近董宇辉小作文风波动静太大了,哪哪都是。 打开公号上都在写董宇辉,打开某音,都在说董宇辉。 这种事其实本来就是立场不同,各个角度来说都有道理的事。 神仙打架&am…

利用深度学习图像识别技术实现教室人数识别

引言 在现代教育环境中,高效管理和监控教室成为了一个重要议题。随着人工智能技术的迅猛发展,特别是深度学习和图像识别领域的突破,我们现在可以通过智能系统来自动识别教室内的人数,从而实现更加智能化的教室管理。 深度学习与图…

手把手教你开发盲盒小程序

在这个数字时代,微信小程序已经成为了各大品牌和个人的主要营销渠道。而盲盒小程序,作为小程序领域中的一种独特类型,更是具有巨大的市场潜力。那么,如何创建和运营一个成功的微信盲盒小程序呢?以下是一份保姆级的教程…

SpringBoot之多环境开发配置

1 多环境开发配置 问题导入 在实际开发中,项目的开发环境、测试环境、生产环境的配置信息是否会一致?如何快速切换? 1.1 多环境启动配置 yaml文件多环境启动 不同环境使用—隔开 示例代码: spring:profiles:active: dev#生产…

Intellij IDEA 快速开发参考

快捷键 核心快捷键 IntelliJ IDEA 作为一个以快捷键为中心的 IDE,为大多数操作建议了键盘快捷键。在这个主题中,您可以找到最不可缺少的列表,使 IntelliJ IDEA 轻松实现第一步。 核心快捷键表: 操作快捷键根据名称查找操作CtrlSh…

阶段十-分布式-Redis02

第一章 Redis 事务 1.1 节 数据库事务复习 数据库事务的四大特性 A:Atomic ,原子性,将所以SQL作为原子工作单元执行,要么全部执行,要么全部不执行;C:Consistent,一致性&#xff0…

Django 分页(表单)

目录 一、手动分页二、分页器分页 一、手动分页 1、概念 页码:很容易理解,就是一本书的页码每页数量:就是一本书中某一页中的内容(数据量,比如第二页有15行内容),这 15 就是该页的数据量 每一…

【信号处理:小波包转换(WPT)/小波包分解(WPD) 】

【信号处理:小波包转换(WPT)/小波包分解(WPD) 】 小波包变换简介WPT/WPD的基础知识WPT/WPD的主要特点The Wavelet Packet Transform 小波包变换前向小波数据包变换最佳基础和成本函数数学中波纹的最佳基础其他成本函数…

【教学类-43-14】 20240103 (4宫格数独:正确版:576套) 不重复的基础模板数量:576套

作品展示::——4宫格 576套不重复模板(48页*12套题) 背景需求: 生成4宫格基础模板768套,观看64页内容时,明显看到有错误 【教学类-43-13】 20240103 (4宫格数独:错误版…

kbdnso.dll文件缺失,软件或游戏报错的快速修复方法

很多小伙伴遇到电脑报错,提示“kbdnso.dll文件缺失,程序无法启动执行”时,不知道应该怎样处理,还以为是程序出现了问题,想卸载重装。 首先,先要了解“kbdnso.dll文件”是什么? kbdnso.dll是Win…

高压功率放大器的作用或应用领域是什么

高压功率放大器是一种能够将低电压信号放大到高电压水平的设备。它在各个领域中扮演着重要的角色,并具有广泛的应用。本文将介绍高压功率放大器的作用和应用领域。 高压功率放大器可以在音频设备中发挥重要作用。音频设备中需要将低音频信号放大到足够的水平&#x…

控制台日志存入数据库后结果乱码

控制台输出 数据库返回 结论 控制台的输出在存储到数据库之后出现了ANSI颜色代码。这些颜色代码通常是由控制台日志库添加的,用于在支持ANSI颜色代码的终端中显示彩色文本。例如: [95m6 [0m | [95m0.6376 [0m | [95m0.0 [0m | [95m289.2 [0m | 在上面的…

MySQL主从复制案例实现

使用Sharding-JDBC实现读写分离&#xff1a; 1、导入maven坐标 2、 在配置文件中配置读写分离规则 3、在配置文件中配置允许bean定义覆盖配置项 1、导入maven坐标 <dependency><groupId>org.apache.shardingsphere</groupId><artifactId>sharding-jd…

Java安装详细教程

文章目录 一、JDK 下载 和 安装1.1 选择 Java版本1.2 下载 JDK 二、 配置环境变量2.1 配置环境变量的原因2.2 配置环境变量2.3 验证配置是否成功 参考资料 一、JDK 下载 和 安装 1.1 选择 Java版本 访问 Oracle 官方网站的 Java 下载页面Java Archive | Oracle。 在 “Java …

机器学习常用算法模型总结

文章目录 1.基础篇&#xff1a;了解机器学习1.1 什么是机器学习1.2 机器学习的场景1.2.1 模式识别1.2.2 数据挖掘1.2.3 统计学习1.2.4 自然语言处理1.2.5 计算机视觉1.2.6 语音识别 1.3 机器学习与深度学习1.4 机器学习和人工智能1.5 机器学习的数学基础特征值和特征向量的定义…