10.Linux系统启动详解
10.Linux系统启动详解
·1.BIOS,负责检查硬件并且查找可启动设备,
·2.MBR:Boot Code,
·bios找到可启动设备后执行其引导代码,MBR的前446字节,
·/boot/grub/stage1内容为当前硬盘MBR的镜像,
·3.执行引导程序-GRUB
·grub是现在Linux使用的主流引导程序,可以用来引导大多数主流系统,
·Linux的grub可以识别windows的启动程序,但windows的会覆盖Linux的,故先windows后Linux,
·grub相关文件保存在/boot/grub中,grub配置文件为/boot/grub/grub.conf,
·/boot/grub/grub.conf里的hiddenmenu就是隐藏开机倒计时,
·dmesg命令显示本次启动内核的输出信息,
·4.加载内核kernel
·内核解压并自检,找到inittramfs,建立仿真根目录,
·加载驱动,重要驱动在内核,其他内核在/lib内,
·挂载真正系统根目录,
·5.执行init
·/sbin/init是Linux的第一个进程
·调用/etc/rc.d/rc.sysinit负责对系统初始化,挂在文件系统,并根据运行级别启动相应服务,
·/etc/inittab可以修改默认的运行级别,传给/etc/init/rc.conf,调用/etc/rc.d/rc,单用户模式不读取
·每个级别对应的启动服务保存在/etc/rc.d/中
·/etc里面的rc5.d即为级别5开机时的服务启动,如下:
·lrwxrwxrwx. 1 root root 17 Mar 1 08:02 S01sysstat -> ../init.d/sysstat
·s为开机启动顺序,k为关机关闭顺序,数字为启动顺序,数字后字母为服务名,
·然后加载/etc/rc.local中手工添加的服务程序,
·init可以改变当前运行级别:
·0,关机
·1,单用户模式
·2,不完全命令行模式
·3,完全命令行模式
·4,未使用,保留
·5,XII图形模式
·6,重新启动
·6.runlevel,查看上次及本次运行级别,
·破解密码:
·重启,上下键,启动项,e,kernel编辑,e,quiet后加1单用户模式,b重启,passwd,exit,
·GRUB加密:
·由于重启修改密码的方法不安全,所以需要对grub加密,
·进系统,运行grub-md5-crypt,生成加密密码串,输入grub密码,生成密码串,
·复制加密串,修改grub文件,在timeout下一行输入password --md5 密码串,
·后期进入grub编辑模式需要按p,输入grub密码,
·GRUB密码破解:
·光盘启动,选第三个修复模式,进入模拟根,
·chroot /mnt/sysimage/挂载真正系统根,
·进grun.conf删除grub密码,或者给root直接设密码,
·调整字符界面分辨率:
·grep “CONFIG_FRAMEBUFFER+CONSOLE” /boot/config-2.6.32.279.el6.i686,先查询内核是否y支持修改分辨率,
·如16位1024*768是791,
·在grub.conf里面,内核的quiet后面空格添加vga=791即可,
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。