bios加电自检-->mbr-->grub-->加载内核文件-->启动第一个进程
1 bios加电自检
检测硬件是否正常,然后根据bios中的启动项设置,去找内核文件
2 mbr
因为grup太大,第一个扇区存不下所有的grub程序,所以分为2部分指引硬件找到内核文件
当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中MBR(主引导记录)的设备,将系统控制权传递给包含操作系统引导文件的分区,或者直接根据MBR记录中的引导信息调用启动菜单
3 grub
根据grub配置文件(grub.cfg)中记录的位置,去找到内核文件
对于Linux操作系统来说,GRBU(统一启动加载器)是使用最为广泛的多系统引导程序。系统控制权传递给GRUB以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载Linux内核文件,然后将系统控制权转交给内核,
4 加载内核文件:把内核和镜像文件系统加载到内存中可以使用。
Linux内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间,负责资源分配与调度。内核接过系统控制权以后,将完全掌控整个Linux操作系统的运行过程
centOS7系统中,默认内核文件位于
5 启动进程=init进程初始化
Linux内核首先将系统中的“/sbin/init”程序加载到内存中运行(运行中的程序称为进程),init进程负责完成一系列的系统初始化过程,最后等待用户进行登录。
总结:加载硬件驱动程序,内核把init进程加载到内存中运行
由Linux内核加载运行/sbin/init程序
init进程是系统中第一个进程
init进程的PID(进程标记)号永远为1
systemd是linux操作系统的一种init软件
centos7中采用全新的systemd启动方式,取代传统的sysvinit
centos7中运行的第一个init进程是/lib/systemd/system
init 串行启动后续的程序 一个一个按顺序启动
systemd 是并行启动程序 全部一起启动
路径:
/lib/systemd/system/*.service为结尾的文件
systemd能够识别并管理这些以.service为结尾的程序
centos6使用init 串行启动后续程序,一个一个按顺序启动。
centos7使用systemd 并行启动程序,全部一起启动
systemd是系统的高级程序,代为管理系统上的服务程序
systemd:yum以及rpm安装的软件可以直接使用
systemctl具有启动,关闭,重启,开机自启等功能
编译安装不可以直接使用systemct命令去管理程序,需要手写一个配置文件
“/boot/vmlinuz-3.10.0-514.e17.x86_64”
1
2
3
4
5
6
7
yum及rpm安装的软件可以直接使用systemctl去启动 关闭 重启 开机自启等功能
编译安装 不可以直接使用systemctl命令去管理程序 需要手写一个配置文件
systemd unit(单元) ,systemd方便管理程序,将程序按照特定的功能分成了很多单元
unit service install
description
After
Requires
Wants
Conflicts
simple
forking
oneshot
dbus
notify
idle
alias
requiredBy
WantedBy
Also
[Unit]
Description=The nginx HTTP and reverse proxy server #描述软件的功能
[Service]
PIDFile=/apps/nginx/logs/nginx.pid # 方便使用 pid 号 进行操作 , 指明进程的 pid 号
ExecStart=/apps/nginx/sbin/nginx #使用绝对路径启动
ExecStop=/usr/bin/kill -s TERM $MAINPID #杀死进程
ExecReload=/apps/nginx/sbin/nginx -s reload #重新加载
[Install]
WantedBy=multi-user.target #安装子字符界面
systemctl get -default #查看默认运行级别
systemctl set -default #设置默认运行级别
target #关机
rescue.target #单用户
multi-user.target #字符界面
graphical.target #图形界面
①先添加一块硬盘,(刷新磁盘?)再分区好(fdisk /dev/sdb)
②将备份文件复制到新盘sdb1
③模拟破坏
一旦运行一直运行不会退出
一般后台不会影响前台操作
chkconfig --add
chkconfig --list
chkconfig --35 服务程序 on 开机自启
chkconfig --35 服务程序 off 关闭开机
查看切换运行级别与当前运行级别
查看默认的运行级别
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/
system/default.target systemctl set-default multi-user.target