一、Linux系统启动

Linux系统启动过程如下:

initramfs镜像用来启动系统,解压后是一个临时的根目录。

用file查看initramfs-2.6.32-696.el6.i686.img的文件类型为gzip压缩文件,将它改为gz格式,解压缩。

解压后得到一个initramfs-2.6.32-696.el6.i686.img,查看文件类型为ASCII,继续解压。

开机由/etc/rc.d/rc.sysinit初始化,此文件主要功能设置有

1.获得网络环境

2.挂载设备

3.开机启动画面Plymouth

4.判断是否启动SELinux

5.显示于开机过程中的欢迎画面

6.初始化硬件

7.用户自定义模块的加载

8.配置内核的参数

9.设置主机名

10.同步存储器

11.设备映射器及相关的初始化

12.初始化软件磁盘阵列(RAID)

13.初始化LVM的文件系统功能

14.检验磁盘文件系统

15.设置磁盘配额(quota)

16.重新以可读写模式挂载系统磁盘

17.更新quota(非必要)

18.启动系统虚拟随机数生成器

19.配置机器(非必要)

20.清除开机过程当中的临时文件

21.创建ICE目录

22.启动交换分区(swap)

23.将开机信息写入/var/log/dmesg文件中运行级别参数传入/etc/rc.d/rc这个脚本之后,由这个脚本文件按照不同的运行级别启动/etc/rc[0-6].d目录中的相应的程序

/etc/rc3.d/k??开头的文件,会按照数字顺序依次关闭

/etc/rc3.d/S??开头的文件,会按照数字顺序依次启动

二、grub工具及配置文件

grub允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。grub中分区含义如表所示

grub配置文件/etc/grub/grub.conf

参数含义default=0   //默认启动第一个系统

timeout=5  //等待时间,默认是5秒

splashimage=(hd0,0)/grub/splash.xpm.gz  //指定grub启动时的背景图像文件的保存位置

hiddenmenu  //隐藏菜单

title CentOS 6 (2.6.32-696.el6.i686)   //标题

root (hd0,0)  //指启动程序的保存分区

kernel /vmlinuz-2.6.32-696.el6.i686 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS rd_NO_MD rd_LVM_LV=VolGroup/lv_swap crashkernel=auto LANG=zh_CN.UTF-8 rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet   //定义加载时的选项

initrd /initramfs-2.6.32-696.el6.i686.img  //指定initramfs内存文件系统镜像文件的所在位置

三、grub进入单用户模式单用户模式主要功能

1.忘记root密码

2.修改系统默认运行级别

按e进入命令编辑模式

光标移到kernel行,按e进入grub界面

在quiet后加1,进入单用户模式

按b启动,进入单用户模式(可修改root密码)

eg:假设启动文件/etc/inittab文件被修改,如何修复?

我将inittab文件修改,将默认启动级别改为6,这样系统启动时会一直重启

在单用户模式下修改/etc/inittab文件。

重启后成功。

ps:后来我用的debian虚拟机忘记了密码,尝试后发现它进入单用户的模式有点不一样,记录一下

按e进入编辑模式

在这一行quiet之后添加“init=/bin/bash”,可进入单用户模式

进入后发现修改密码出错,将根目录重新挂载后成功修改密码

四、grub加密

为防止外人进入单用户模式修改root密码,可将grub进行加密

加密过程如下grub-md5-crypt  //生成一个md5加密的密码,将其复制

vi /boot/grub/grub.conf  //将密码粘贴置文件中,保存后,重启生效

此时,需要按下grub的密码才可以进入编辑模式

如果密码输错,将不能进行编辑

正确输入密码,可以看到跟加密前一样的编辑页面。

五、grub启动页面分辨率调整

首先查询内核是否支持分辨率修改

分辨率参数如下

如果想将分辨率设为1024*768,则写入/boot/grub/grub.conf内,vga=791。

重启后生效

六、光盘救援模式修复启动故障

1.如何进入光盘救援模式

插入光盘,启动时快速按F2键(或者右键点击虚拟机-电源-启动时进入bios)。

进入bios后,将光盘启动移到第一项(+)。

进入光盘修复模式,将光标移动到第三行

一路默认,网络可不设置

2.光盘救援模式下可做什么a、忘记grub加密的密码,可在救援模式下清除grub密码

b、重要系统文件丢失,可在救援模式下找回

a、清除grub密码步骤chroot /mnt/sysimage   //改变主目录

locate grub.conf  //查出grub配置文件的位置,这里看到在disk1下

vi /disk1/grub/grub.conf  //删除密码行,重启系统

b、重要文件找回步骤

eg:将/etc/inittab文件删除,如何恢复?

<1>.进入光盘救援模式,后,将刚刚拷贝在/tmp下的inittab文件复制粘贴到/etc下

<2>.先查询出inittab文件的安装包版本,进入光盘救援模式后,将光盘挂载,从光盘的Packeges目录里安装inittab。

linux进程故障如何修复,33.Linux开机过程及启动故障修复相关推荐

  1. Linux进程退出详解(do_exit)--Linux进程的管理与调度(十四)

    Linux进程的退出 linux下进程退出的方式 正常退出 从main函数返回return 调用exit 调用_exit 异常退出 调用abort 由信号终止 _exit, exit和_Exit的区别 ...

  2. python做Linux进程运行,Python实现在Linux系统下更改当前进程运行用户

    在上一篇文章中,我们讲了如何在linux上用python写一个守护进程.主要原理是利用linux的fork函数来创建一个进程,然后退出父进程运行,生成的子进程就会成为一个守护进程.细心观察的可能会发现 ...

  3. linux进程属主6,20150917 Linux进程查看与管理以及作业管理

    第一.基础知识 MBR引导--内核--内核程序-->协调其它程序 一般内核运行在硬件之上,各应用也在硬件之前 1)OS的基本功能:文件系统.网络功能.进程管理.内存管理.驱动程序.安全功能 以上 ...

  4. linux进程的通信文件映射,Linux进程间通信 -- mmap函数的使用

    mmap/munmap函数 函数原型 #include void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t ...

  5. linux进程异常退出分析,ECS Linux程序异常退出提示“out of memory”的临时解决办法...

    ECS Linux上的程序会出现异常退出的情况,退出的原因多数是因为系统内存不足,Linux内存不足通常会触发 Linux 内核里的 Out of Memory (OOM) killer,OOM ki ...

  6. linux进程间的通信实验,linux实验进程之间的通信.doc

    院 系: 计算机学院 实验课程:linux内核设计与实现 实验项目:进程之间的通信 指导老师:冯刚 开课时间: 2010 - 2011 年度第 2 学期 专 业:计算机科学与技术(师范) 班 级:2班 ...

  7. linux进程q是什么意思,Linux zombie进程

    在Linux进程的5种状态:(选自<深入理解Linux内核>) 1. 可运行(正在运行或在运行队列中等待) 2. 可中断的等待(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. ...

  8. linux 进程 锁定cpu,如何限制Linux中任何进程的CPU使用情况 | MOS86

    有没有经历过您打开一个特定应用程序(如Firefox)的情况,并使整个系统处于停顿状态?如果您正在运行Web服务器,最后一件事就是让应用程序崩溃整个系统并将所有网站关闭. Cpulimit是一个可以限 ...

  9. linux进程的软中断通信del,linux进程的软中断通信

    linux进程的软中断通信 要求 实现软中断通信的程序 使用系统调用fork()创建两个子进程,再用系统调用signal()让父进程捕捉键盘上发出的中断信号(即按delete键),当父进程接收到这两个 ...

最新文章

  1. 提高大数据量并发访问时效率
  2. AI小编问世!阿里智能写手核心技术首次公开!
  3. lambda ::_Lambda项目:迈向多核及超越
  4. ImportError: No module named ‘sklearn.qda‘  ImportError: No module named ‘sklearn.lda‘
  5. 树莓派安装mysql并设置远程访问
  6. 学者CIO邓遵红:让人文梦想照进职业现实
  7. 资源 | 忘了Python关键语句?这份备忘录拯救你的记忆
  8. Android6.0之AMS启动app中篇之创建app进程
  9. Ansible tower 3.7.0-4自动化运维管理安装方法
  10. Smobiler字节小程序开发指南
  11. sir模型 python_SIR传染病模型(附Python代码)
  12. 企业版微信公众号从零开始之二(申请认证流程)
  13. QQ快速登录的实现原理
  14. 用计算机弹国王与乞丐,国王与乞丐 MIDI File Download :: MidiShow
  15. 2018湖南计算机对口高考C语言答案,2018年湖南省对口高考C语言试题
  16. oracle数据库查看防火墙,Oracle数据库防火墙简介
  17. ES6 --promise了解
  18. 使用binlog备份恢复myqsl数据
  19. OpenGL Ant Tweak Bar的用户界面库
  20. SRM采购管理系统投标管理模块:阳光招采,助力建筑材料企业智慧采购

热门文章

  1. 文巾解题 344 反转字符串
  2. 以MATLAB的方式实现微积分问题的计算机求解问题及解决方案集锦(一)
  3. Keras蚂蚁金服大赛实战——自然语言处理技术
  4. 在PyCharm中设置新建Python文件的模板格式方法
  5. Python入门100题 | 第038题
  6. LeetCode题组:第121题-买卖股票的最佳时机
  7. 【Python进阶】_JSON
  8. #论文 《ImageNet Classification with Deep Convolutional Neural Networks》
  9. Python编程基础:第四十节 类变量Class Variables
  10. Google AutoML最新技术解析:AutoML-Zero,从0构建模型