文章目录
- 开机启动流程图
- 一、了解开机启动流程的意义
- 二、开机启动流程具体步骤讲解
- 2.1.开机(power on)
- 2.2.开机自检(POST)
- 2.3.BIOS对硬件进行检测
- 2.4.boot启动顺序检查,第1启动顺序
- 2.5.硬盘
- 2.6.MBR
- 2.7.grub2引导程序
- 2.8. /boot里的文件系统的驱动
- 2.9.内核文件(vmlinuz、initramfs)
- 2.10.systemd进程
- 2.11.启动对应的运行级别里的服务
- 2.12.multi-user
- 2.13./etc/rc.local 和 /etc/fstab
- 2.13.login
- 2.14.运行用户家目录下的环境变量初始化文件
- 2.15.bash提示符
- 三、应用
- 1.自己编写程序,设置开机启动的方法
- 2.查木马程序
开机启动流程图
一、了解开机启动流程的意义
1.1.掌握让某个软件开机运行
1.2.开机不能正常启动,排查原因或排查出哪个环境出现了问题
1.3.防止黑客植入木马,查询黑客会把木马放在哪些地方
二、开机启动流程具体步骤讲解
2.1.开机(power on)
2.2.开机自检(POST)
power on self test
指计算机系统接通电源,BIOS程序的行为,包括对cpu,系统主板,基本内存,扩展内存,系统ROM、BIOS等器件的测试,如果发现错误,给操作者提示或者警告,简化加快该过程,可使系统能够快速启动。
电脑里的基本硬件:
主板(motherboard),cpu,内存,磁盘,网卡,显卡,声卡,电源,鼠标,键盘,显示器
2.3.BIOS对硬件进行检测
basic input output system基本输入输出系统,BIOS是个人电脑启动时加载的第一个软件,它是一组固化到计算机内主板上一个ROM芯片上的程序,保存着计算机最重要的基本输入输出程序、开机后自检程序和系统自启动程序,它可以从CMOS中读写系统设置的具体信息。主要功能是为计算机提供最底层的、最直接的硬件设置和控制。
rom芯片:read only memory 只读存储器
ram芯片:随机存取存储器,可读可写
CMOS:存储参数配置的芯片,存放BIOS程序的参数
BIOS是一个程序,会读取CMOS芯片里的参数,了解cpu的配置,时间的配置,启动顺序的配置等
2.4.boot启动顺序检查,第1启动顺序
boot:引导、启动
第1引导顺序 :hard drive硬盘
第2引导顺序:cdrom光驱
第3引导顺序:removable device可移动设备 (u盘,移动硬盘)
第4引导顺序:network 从网络中启动,网络中安装服务器启动
2.5.硬盘
一个盘片可以划分出很多磁道,磁道上划分63个扇区,一个扇区是512个字节
2.6.MBR
硬盘中最开始的扇区
硬盘里有个位置0磁盘0柱面1扇区–>MBR(主引导记录)–>master boot record
MBR是一个扇区,占用512个字节,用来安装启动一个程序
2.7.grub2引导程序
grub是linux系统的启动程序
grub2是grub的第2个版本
2.8. /boot里的文件系统的驱动
2.9.内核文件(vmlinuz、initramfs)
[root@localhost ~]# cd /boot
[root@localhost boot]# ls
config-3.10.0-1160.el7.x86_64 grub initramfs-0-rescue-2088580447424ed0b14df5d45c8c9611.img symvers-3.10.0-1160.el7.x86_64.gz vmlinuz-0-rescue-2088580447424ed0b14df5d45c8c9611
efi grub2 initramfs-3.10.0-1160.el7.x86_64.img System.map-3.10.0-1160.el7.x86_64 vmlinuz-3.10.0-1160.el7.x86_64
vmlinuz-0-rescue-2088580447424ed0b14df5d45c8c9611 内核程序文件(相当于皇上)
initramfs-0-rescue-2088580447424ed0b14df5d45c8c9611.img 给内核程序提供一个初始化的内存文件系统的镜像文件,临时的根文件系统的镜像文件,提供程序和配置文件(相当于宫殿、大臣、妃子、军队)
init 初始化
ram 内存里存储
fs 文件系统 filesystem
2.10.systemd进程
systemd是initramfs里的一个去启动的程序,pstree -p可以查看
centos7/8第一个进程是systemd
centos6第一个进程是init
2.11.启动对应的运行级别里的服务
运行级别:runlevel
查看当前的运行级别
[root@localhost ~]# runlevel
N 3
N代表最开始进入的模式,如果是N表示没有进行模式切换
3 5 代表开机先进入运行级别3,后来切换到运行级别5
centos6中的运行级别:
0 关机
1 单用户模式
2 多用户模式,不能使用nfs
3 完全多用户模式,字符界面模式,默认最小化安装linux系统就是该模式 multi-user
4 保留,没有使用
5 图形界面,需要安装 graphical
6 重启
init 0 关机 init 6 重启
在centos7/8中主要使用multi-user和graphical两种级别
一般只使用3 5
查看运行级别
[root@localhost ~]# systemctl get-default
multi-user.target
设置运行级别:set-default graphical/multi-user
2.12.multi-user
multi-user.target.wants中的文件为开机启动文件
[root@lb1 system]# cd /etc/systemd
[root@lb1 systemd]# ls
bootchart.conf coredump.conf journald.conf logind.conf system system.conf user user.conf
[root@lb1 systemd]# cd system
[root@lb1 system]# ls
basic.target.wants default.target.wants local-fs.target.wants nginx.service.d sysinit.target.wants vmtoolsd.service.requires
default.target getty.target.wants multi-user.target.wants sockets.target.wants system-update.target.wants
[root@lb1 system]# cd multi-user.target.wants/
[root@lb1 multi-user.target.wants]# ls
auditd.service crond.service kdump.service postfix.service rhel-configure.service sshd.service vmtoolsd.service
chronyd.service irqbalance.service named.service remote-fs.target rsyslog.service tuned.service
2.13./etc/rc.local 和 /etc/fstab
/etc/rc.local:
该文件脚本添加配置可以设置开机启动
该文件会在所有的服务都运行完成后,执行这个文件里 的命令,这个脚本是最后执行的,必须给这个文件可执行权限。
systemctl disable firewalld 设置开机不启动
systemctl enable firewalld 设置开机启动
systemctl start firewalld 立马启动服务
systemctl stop firewalld 立马关闭服务
/etc/fstab:
告诉linux系统正常启动过程中挂载的磁盘分区
file system 文件系统,磁盘里的分区,一个分区对应一个文件系统
2.13.login
根据/etc/passwd和/etc/shadow检测用户名和密码是否正确
2.14.运行用户家目录下的环境变量初始化文件
/etc/profile
~/.bash_profile
~/.bashrc
/etc/bashrc
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7nG3Jwpv-1679234087263)(C:\Users\钰儿yu\AppData\Roaming\Typora\typora-user-images\image-20230319210954265.png)]
2.15.bash提示符
三、应用
1.自己编写程序,设置开机启动的方法
1.1.做成服务
1.2.在/etc/re.local中添加配置
1.3.修改bash初始化的4个配置文件
2.查木马程序
2.1.从systemd以后的步骤中检查开机启动流程
2.2.检查计划任务