服务器排障(Linux,Windows)

一.计算机的启动流程

二.系统服务

三.运行级别

四.运行级别被修改

五.Root密码被遗忘

六.设置Grub密码

七.设置bios密码

一、计算机启动流程

1、bios加电自检

对计算机的硬件进行检测,正常后,按照cmos里的设置搜索处于活动状态的引导设备(一般为硬盘、U盘、光盘、软盘等)。

2、加载主引导程序MBR(位于磁盘首扇区)

MBR:boot loader(启动加载程序)

分区表信息

模数

(1)提供系统选择列表

(2)加载处在硬盘上分区上的次引导程序,并将处在活动分区的次引导程序加载到内存中。(boot loader属于次引导程序,针对双系统,linux的加载程序grub2)。

linux启动分区被三个重要文件

(1)启动加载程序:groub2

(2)系统内核:vmlinuz-3.10.0-229.e17.×86_64

(3)磁盘镜像文件:initramfs-3.10.0-229.e17.×86_64.img

磁盘镜像文件包含:硬件驱动、文件系统等信息

3、加载所选系统的内核到内存中

依据grub设置即/boot/grub2/grub2.conf里的配置信息将系统内核加载到内存中,同时把磁盘镜像文件也加载到内存中。(内核可以理解为CPU的驱动)

4、内核重新加载硬件驱动并检测,初始化与文件系统相关的硬件设备,生成硬件设备文件。

5、小系统启动首进程systemd,并加载系统服务所需要的可用单元,进入小系统根文件系统/sysroot。

6、再由/sysroot切换至真实根分区"/",系统内核会重新加载系统首进程systemd,并启动与禁用相关服务可用单元,包括登录与验证服务。

7、开始设置环境变量、网络、读取/etc/fstab挂载文件系统,并完成其他初始化工作。

8、取得运行级别,读/etc/systemd/system/default.target文件

9、加载shell(bash),启动login登录程序,进入登录界面。

10、输入用户名、密码进入系统。

二、 系统服务

1、在centOS7之前

系统首进程:init

系统服务存放位置:/etc/rc.d/init.d

系统服务启动 查看 方法:#service 服务名 stop/start/restart

字符界面的服务图形化配置:#ntsysv

在centOS7之后

系统存放服务位置:/usr/lib/systemd/system

所有以*.service文件都是系统服务

系统首进程:systemd

系统服务启动方法:# systemctl start/stop/status/restart 服务名

查看系统服务状态:# systemctl list-unit-files

字符界面服务图形化命令:# nmtui

三、运行级别

1、在centOS7之前

运行级别保存在:/etc/inittab

2、在centOS7之后

查看当前运行级别:# systemctl get-default

运行级别文件保存在:#/usr/lib/systemd/system/*.target

runlevel0.target -> poweroff.target(关机状态)

runlevel1.target -> rescue.target (单用户紧急救援模式)

runlevel2.target -> multi-user.target (多用户级别无NFS)

runlevel3.target -> multi-user.target (多用户级别)

runlevel4.target -> multi-user.target (未定义)

runlevel5.target -> graphical.target (多用户图形化模式)

runlevel6.target -> reboot.target (重启)

3、查看当前系统的运行级别 systemctl get-default

EG:1、查看指定的运行级别所需要关联服务

Systemctl list-dependencies graphical.target

4、 临时切换某个运行级别

systemctl isolate graphical.target

  1. 设置默认的运行级别

systemcyl set-default reboot.target

四,运行级别被修改

  1. 首先启动linux系统
  2. 看到GRUB2启动菜单
  3. 选择一个所需要启动的OS
  4. 按e编辑此启动菜单

(5)找到linux16字段,在此字段行尾输入 systemd.unit=rescue.target 按ctrl +x 启动此修改。

<1>此时此系统进入单用户紧急救援模式,在此时输入root账户密码,重新登录root用户。

<2>把运行级别修改到多用户模式

五.root密码丢失后的解决方法

1、启动虚拟, 选择一个所需要启动 OS 按 e 编辑此 OS 启动菜单

2.按方向键"↓",将光标下移到下图中所示为止;

3、将上图中的ro字段改为 rw init=/sysroot/bin/sh,然后ctrl+x启动此次更改;

4、在出现的命令行输入 cd /sysroot,切换到 /sysroot目录下( 可以不切换)

#chroot /sysroot /bin/bash

#passwd 正常修改密码;

5、如果selinux没有关闭,需要在 '/' 根分区上创 建/ .autorelabel 文件;用来使 selinux 的所有的关联标签发生改变,以 接受新的 ROOT 密码;

6、密码修改完成之后,输入exit,退出chroot模式,输入reboot重启后密码修改完成;

六.设置grub 密码

1).明文修改

cd /etc/grub.d --vim 00_header --G --输入cat << EOF

换行输入set superusers="zx"

换行输入password zx 1234

保存退出

Grub2-mkconfig >/boot/grub2/grub.cfg

重启按e需要输入用户名和密码

2)密文加密

grub2-mkpasswd-pbkdf2 -- 输入密码:1234

产生一串加密的密码

Cd /etc/grub.d --vim 00_header

--G --password _pbkdf2 zx 加密的密码复制到此处(从is 后面的空格开始复制)

保存退出

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

BIOS系统设置密码

  1. 打开虚拟机点击F2进入BIOS系统切换到Security选项。
  1. 切换到Set Supervisor Psaaword,然后点击回车输入需要设置的密码,接着点击回车确认,F10键退出。

注:BIOS系统修改密码:打开虚拟机点击F2进入BIOS系统切换到Security选项,切换到Set Supervisor Psaaword,然后点击回车输入需要旧的密码和新的密码(新密码为空表示不设置密码),接着点击回车确认,F10键退出。

相关推荐
pk_xz12345623 分钟前
Shell 脚本中变量和字符串的入门介绍
linux·运维·服务器
懒大王爱吃狼25 分钟前
Python教程:python枚举类定义和使用
开发语言·前端·javascript·python·python基础·python编程·python书籍
小珑也要变强25 分钟前
Linux之sed命令详解
linux·运维·服务器
Lary_Rock2 小时前
RK3576 LINUX RKNN SDK 测试
linux·运维·服务器
云飞云共享云桌面4 小时前
8位机械工程师如何共享一台图形工作站算力?
linux·服务器·网络
逐·風4 小时前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
Devil枫5 小时前
Vue 3 单元测试与E2E测试
前端·vue.js·单元测试
Peter_chq5 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
尚梦5 小时前
uni-app 封装刘海状态栏(适用小程序, h5, 头条小程序)
前端·小程序·uni-app
一坨阿亮6 小时前
Linux 使用中的问题
linux·运维