bios加电自检------mbr--------grub-------加载内核文件------启动第一个进程
bios的主要作用:检测硬件是否正常,然后根据bios中的启动项设置,去找内核文件
boot开机启动项顺序,你可以把内核文件放在何处?
1.硬盘 2.移动设备(u盘、移动硬盘、光驱)3.网络启动
统一启动加载器(mbr grub)
mbr的前446个字节不是文件,而是二进制,去引导操作系统寻找内核文件,因为grub程序太大,第一扇区存不下所有的grub程序,所以分为2部分,知道硬件找到内核文件
grub 根据grub配置文件中记录的位置,去找到内核文件
加载内核:把内核运行在内存中
启动进程:启动第一个祖宗进程 pstree-p =====>systemd
centos 6 :init 普通用户为500以后
centos7:systemd 普通用户为1000以后
区别:init是串行启动后续的程序,一个一个按顺序启动
systemd 是并行启动的程序,全部一起启动
文字描述:加电后bios程序会自检硬件,硬件无故障后,会根据第一启动项去找内核,一般来说第一启动项是硬盘,找到硬盘后悔根据mbr的指引,找到完整的grub程序,再根据grub的配置文件找到内核文件的具体位置,然后将内核文件加载到内存中运行,内存加载好后会启动第一个程序。
按shit+ 移到boot里的顺序
systemd 是系统级的程序,代为管理系统上的服务程序,如果要用 就要手写
rpcbind 1.启动时,会监听111端口
2.没有启动
systemd 保姆级程序 代为管理服务程序
如是yum、rpm安装的软件可以直接使用systemctl去启动关闭、重启、开机自启等功能
如是编译安装,不可以使用systemctl命令去管理程序,需要手写配置文件
systemd unit(单元)systemd方便管理程序,将程序按照特定的功能,分成了很多单元,(服务单元、文件路径单元、挂载单元、、、、)
linux操作系统有运行级别
例如:init 0 关机 systemctl get -default 查看默认的运行级别
systemctl set-default 设置默认级别
去字符界面
runlevel 3 5 =====》 3是上一级别,5是当前级别
实验操作:
1.模拟破坏mbr 和分区表 然后修复
新建一块磁盘 将备份文件拷贝到新盘里
3 2 1
修复grub文件及程序
先模拟破坏grub.cfg配置文件
按住重新启动 并且立即按住esc 选择2 hard brive
破解密码
1.有光驱时
先进入到急救模式,先切换根,从光盘的跟切换到自己系统的根
chroot /mnt/sysimage
修改密码 passwd
exit
reboot
无光驱时
1.进入系统在选择 内核界面 选择带一个选项 按e
2.将光标移动到Linux开头行的最后,添加 rd.break
3.ctrl+x 运行
4.进入单用户
重新挂载,添加读写权限
mount -o remount, rw /sysroot
切换到真正的根 chroot /sysroot
修改密码 passwd
如果你开启了selinux要重新打上标记
touch /.autorerelabe
编译安装nginx,然后可以用systemctl去管理nginx 操作步骤如下