Linux下启动程序常见问题,linux系统启动流程及常见故障解决方式

Linux系统中启动的流程:

1.加载bios的硬件信息以及进行自我检测  并根据设置取得第一个启动的设备

2.若以硬盘方式引导  读取并执行引导扇区 MBR

3.加载grub(引导程序)启动菜单(/\)

4.+加载内核(以只读方式进行挂载)

5.挂载根目录系统  启动init进程(所有进程的鼻祖)

6.读取/etc/inittab配置文件

7.执行/etc/rc.d/rc.sysint脚本

8.根据/etc/initab文件下的启动级别执行/etc/rc.d/rc下的脚本

9.执行/etc/rc.d/rc.local(开机脚本  期望开机自动执行的指令可以放在这个脚本里)

分析/etc/inittab文件

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1 #

2 # inittab       This file describes how the INIT process should set up

3 #               the system in a certain run-level.

4 #

5 # Author:       Miquel van Smoorenburg, 

6 #               Modified for RHS Linux by Marc Ewing and Donnie Barnes

7 #

8

9 # Default runlevel. The runlevels used by RHS are:

10 #   0 - halt (Do NOT set initdefault to this)#(10-16行指的是启动级别)#关机

11 #   1 - Single user mode#单用户模式  通常用于维护系统

12 #   2 - Multiuser, without NFS (The same as 3, if you do not have networking)

#多用户模式 但是无网络

13 #   3 - Full multiuser mode#多用户模式(字符界面)

14 #   4 - unused#用户定义  ,未定义情况下与3级别相同

15 #   5 - X11#图形界面

16 #   6 - reboot (Do NOT set initdefault to this)#系统重启

17 #

18 id:3:initdefault:

#第一列表示表示怎么表示无所谓    第二列表示启动级别  第三列表示动作  第四列

表示参数   如果级别列无任何标示表示任何级别    该句话表示默认启动级别为三

19

20 # System initialization.

21 si::sysinit:/etc/rc.d/rc.sysinit

#参考十八行  第一列表示标示   第二列无表示 代表进入任何级别都要执行该指令    第三行表示动作  表示进行初始化   第四行表示执行/etc/rc.d/rc.sysinit脚本

22

23 l0:0:wait:/etc/rc.d/rc 0

24 l1:1:wait:/etc/rc.d/rc 1

24 l1:1:wait:/etc/rc.d/rc 1

25 l2:2:wait:/etc/rc.d/rc 2

26 l3:3:wait:/etc/rc.d/rc 3

27 l4:4:wait:/etc/rc.d/rc 4

28 l5:5:wait:/etc/rc.d/rc 5

29 l6:6:wait:/etc/rc.d/rc 6

#参考十八行   最后一个数字表示将此数字传递给/etc/rc.d/rc脚本

如传递3那么就会执行/etc/rc.d/rc3.d

30

31 # Trap CTRL-ALT-DELETE

32 ca::ctrlaltdel:/sbin/shutdown -t3 -r now

#参考十八行 表示在任何级别下都可以使用ctrl+alt+del执行/sbin/shutdown -r表示关机并重新启动系统,默认三秒后立即执行

33

34 # When our UPS tells us power has failed, assume we have a few minutes

35 # of power left.  Schedule a shutdown for 2 minutes from now.

36 # This does, of course, assume you have powerd installed and your

37 # UPS connected and working correctly.

38 pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"

#系统断电后 执行/sbin/shutdown -h表示关机之后不重新启动-f表示重新启动不执行fsck 2分钟之后执行  并显示 提示信息

39

40 # If power was restored before the shutdown kicked in, cancel it.

41 pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"

#电力恢复之后取消已经运行的shutdown指令  并提示信息

42

43

44 # Run gettys in standard runlevels

45 1:2345:respawn:/sbin/mingetty tty1

46 2:2345:respawn:/sbin/mingetty tty2

47 3:2345:respawn:/sbin/mingetty tty3

48 4:2345:respawn:/sbin/mingetty tty4

49 5:2345:respawn:/sbin/mingetty tty5

50 6:2345:respawn:/sbin/mingetty tty6

#/sbin/mingetty  表示产生字符终端  共六个字符终端respawn表示再生的意思  即当前的终端注销后  仍然在一个终端里

51

52 # Run xdm in runlevel 5

53 x:5:respawn:/etc/X11/prefdm -nodaemon

~

~-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

~启动故障:

可分为两大阶段:

1.系统引导扇区MBR出现问题

2.Grub菜单出现问题

1.模拟MBR扇区出现故障

创建一个文件覆盖整个硬盘

[root@localhost ~]# dd  if=/dev/zero  of=/dev/sda   bs=446  count=1

1e9965205940370424ea391325ee28a8.png

MBR扇区被覆盖 引导程序抹掉了

3ba8a511e06336d7c7683ad72d36a527.png

解决方式:

重建MBR用可安装光盘引导

f8b36cd9dc7f4968ff6e4bdae1d11307.png

在此界面下进入急救模式输入linux  resuce

201962153adfe26f9da76f50fef438a2.png

选择语言

7bfab816aeb6f4f993fd1ed726a18db1.png

鼠标键盘类型

fa1ad1e90f666da9d92275bbd26d3d7b.png

是否启动网络功能  没有必要

0da9084b31d54807dcd34dcdc235e90a.png

关于急救模式的提示硬盘将会挂载在/mnt/p_w_picpath

8d4a0ea88aae787d0b04fea95acd7c61.png

提示将./mnt/sysp_w_picpath当做系统根目录使用chroot指令指定硬盘的根目录#chroot   /mnt/sysp_w_picpath

a215650b027c0aa264b7816c7b750a0e.png

修复分区表  执行grup指令#grub

3904d2fd8b147e8653dbd7fad167f1e2.png

1.先指明引导系统  执行root指令

#root (hd0,0)  (第一块硬盘,第一块分区)

783ac5afd25292616afbf140cc8edaa2.png

2.执行setup可以帮助重新建mbr#setuo  hd0

717b65bf94d1a20f2047494a3fce64e0.png

执行一次quit两次exit系统进行重新启动

1e1b36a5eda43a575667cca43fa8954e.png

二.GRUB引导菜单出现故障

查看/boot/grub

[root@localhost ~]# ll /boot/grub

b68d3534953af2ab11660ef70e5b3387.png

在所有文件中最为重要的是grub.conf文件

a8c09d8c40d54fdb282614295b29f7e3.png

----------------------------------------------------------------------------------------------------------------------

1 # grub.conf generated by anaconda

2 #

3 # Note that you do not have to rerun grub after making changes to this file

4 # NOTICE:  You have a /boot partition.  This means that

5 #          all kernel and initrd paths are relative to /boot/, eg.

6 #          root (hd0,0)

7 #          kernel /vmlinuz-version ro root=/dev/sda2

8 #          initrd /initrd-version.img

9 #boot=/dev/sda

10 default=0#默认操作系统

11 timeout=5#超时时间5s

12 splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz#grub菜单背景图片

13 hiddenmenu

14 title Red Hat Enterprise Linux Server (2.6.18-164.el5)#标签

15         root (hd0,0)#引导分区MBR

16         kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/ rhgb quiet

#内核文件位置  以只读方式进行 系统启动后根目录变成文件系统的根quiet静默

17         initrd /initrd-2.6.18-164.el5.img#驱动

故障一.

故障1.删除了grub.conf

[root@localhost ~]# rm  /boot/grub/grub.conf

rm: remove regular file `/boot/grub/grub.conf'? y

[root@localhost ~]# cd  /boot/grub

ce3d09cf2d15f3b8f1d5c58888ef3f95.png

重启

ac1cd925c7cfd2a5738e1641c3ffa057.png

Grub直接启动表明第二阶段有问题

指明引导分区#root(hd0,0)  (第一块硬盘,第一块分区)

47a52cfd80556c7470b28cd4ef9234d3.png

grub>help可以查看可以执行的指令

66771ad83ae01ff52aeeef224eddb570.png

查看根目录grup > find /

f6e1ba2a05c82ce3244359af660dd67a.png

执行kernel  /vmlinuz-2.6-164.e15  ro  root=/dev/sda2 quit

Initrd /initrd-2.6.18-164.e15.img

445bd164b70b64bdede9e62c5ef6f8b5.png

执行完成后启动   grub>boot

bb24e1ce84c69af7f3533ad3d55ced71.png

启动完成

进入系统后使用grub-install产生二阶段的其他文件

--------------------------------------------------------------------------------

[root@localhost ~]# grub-install

install_device not specified.

Usage: grub-install [OPTION] install_device

Install GRUB on your drive.

-h, --help              print this message and exit

-v, --version           print the version information and exit

--root-directory=DIR    install GRUB p_w_picpaths under the directory DIR

#指明这些文件的目录

instead of the root directory

--grub-shell=FILE       use FILE as the grub shell

--no-floppy             do not probe any floppy drive

--force-lba             force GRUB to use LBA mode even for a buggy

BIOS

--recheck               probe a device map even if it already exists

This flag is unreliable and its use is

strongly discouraged.

INSTALL_DEVICE can be a GRUB device name or a system device filename.

grub-install copies GRUB p_w_picpaths into the DIR/boot directory specfied by

--root-directory, and uses the grub shell to install grub into the boot

sector.

Report bugs to .

[root@localhost ~]# grub-install  --root-directory=/boot/grub  /dev/sda

Grub.conf文件丢失需重新编写

a2ce9eb48d5ce381f11eeaf44b86420d.png

重启:

b0347bc2088821decb0ada2cf685f049.png

故障二  /boot目录下的所有内容被删

a.删除/boot下的所有内容rm   -rf  /boot/*

2a60ae47d4b823bc470b962affe4b414.png

b.重启

16d4c1bd7617702caf1254a3622555eb.png

c.进入bios设置  将光驱设置为首先启动

c7ec8105d1892c1185538b95065c8bf2.png

d.进入救援模式:linux  rescue

f5b723258b8bef98df4b108dd74abdf1.png

e.使用chroot指令切换到硬盘的目录Chroot  /mnt/sysp_w_picpath

23be2544ec45f34f356eb7fc90200163.png

f.切换到boot目录并查看内容cd  /boot && ls

ea12e37e570cea2532aedd29203fdf5d.png

g.挂载光驱Mount     /dev/hdc  /mnt

04f3d4ec259fd1b967159340c8641521.png

h.安装内核  内核安装完成后会自动安装initrd

Rpm  -ivh  --force  /mnt/Server/kernel-2.6.18-164.e15.i686.rpm

5385a7e792ff939139733b6d2c57e190.png

i.内核安装完成之后我们安装grub    grub-install   /dev/sda

d4494f9155e94d232742c7ecb02814a3.png

j.再次查看/boot目录下的内容

48c626aa27529d730164d06b25907f58.png

k.查看grub的内容发现缺少grub.conf重新编写grub.conf

#cd  /boot/grub/#touch   grub.conf#vim grub.conf

ebd5361a3bbe5510b3626320241201f7.png

205162a8e613009b2b9ebbaaa86e88d0.png

f75efe059726bf9681585ecb34ecef40.png

l.两次exit退出重启  重启要设置bios为硬盘启动

1515553ea6a4ee1e1c4fa77003d72b07.png

故障三 删除了/grub下的内容

依据故障二重复第a.c.e.j.l即可

故障四:文件系统表改变

vim  /etc/fstab

f0decf6af14bd7fd38cc794e278462b3.png

如果误操作其中一个例如

ce1873cefb79e605a4ba1d91c1afe549.png

重新启动后会出现

22fdc23d7b457fb4353f4ddb0cb82ba1.png

输入管理员密码

ed51784838776609a8216e1ab1a7362c.png

编辑vim  /etc/fstab

a55012a1d4c16be9fcd139a6b1991ad8.png

重新挂载 mount -o remount  /  然后再编辑

f2db882ce5bd3214ccb28bc0d91b1b89.png

重启

6a1ec4ee52b318d4bb0d3b0ecefcf2ab.png

e19004f758ba9d4200952215c3935a94.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488306.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vscode红色波浪不见了_vscode c++ 编译可以通过 但是有红色波浪线的问题

作者:送外卖转行计算机来源:SegmentFault 思否1.command p, 然后输入 >C/C选择 编辑配置(JSON)然后在工作区会出现一个.vscode文件夹, 其中会有一个.json文件的配置2.打开命令行 输入gcc -v -E -x c -会有以下的信息 ignoring nonexistent director…

云计算军事运用有啥特点

来源:军语研究院云计算技术被视为继大型计算机、个人计算机、互联网之后的第四次信息技术产业革命。云计算是一种围绕分布式共享计算资源的创新应用模式,资源提供者可以方便而快速地提供计算资源,而无处不在的资源需求者可以便利地使用共享的…

基于STM32的DS1302实时时钟模块应用

DS1302是一款低功耗的实时时钟芯片,被广泛应用于各种电子产品中。它具有准确计时、多种时间格式表示、定时报警等功能,适用于记录时间、日期和闹钟。在本文中,我们将介绍如何在基于STM32的开发环境中使用DS1302实时时钟模块,并给出…

在Windows 7上安装Team Foundation Server(TFS)的代理服务器(Agent)

自2009年微软发布Windows 7以来,经过8年的市场验证,Windows 7已经成为史上应用最为广泛的操作系统。但是面对技术变化的日新月异,2015年微软正式停止了对Windows 7的主流支持,并将于2020年正式结束对Windows 7的所有技术支持。这一…

王喜文:图解新基建,细说新机遇(100图)

来源:智造智库去年8月22日,华为创始人任正非签发总裁办邮件,大力推荐技术大神王喜文博士的5G科普PPT《认识5G,发展5G》,并报送董事会成员、监事会成员,主送全体员工,要求华为全员学习。任正非的…

基于OpenGL编写一个简易的2D渲染框架-07 鼠标事件和键盘事件

这次为程序添加鼠标事件和键盘事件 当检测到鼠标事件和键盘事件的信息时,捕获其信息并将信息传送到需要信息的对象处理。为此,需要一个可以分派信息的对象,这个对象能够正确的把信息交到正确的对象。 实现思路: 要实现以上的功能&…

重新定义Wi-Fi功能,Wi-Fi 6为什么要分两步?

来源:传感器技术Wi-Fi 6重新定义Wi-Fi,先是双频并发,然后才是6GHz下的160MHz。Wi-Fi是什么?它是一个基于IEEE 802.11标准的无线局域网技术。如今,Wi-Fi已经覆盖了绝大部分的室内场景,你的手机、电脑、智能音…

《科学》:中德解析新冠主要蛋白酶晶体结构,有助抑制剂研发

来源:澎湃新闻自新型冠状病毒引起的疫情暴发以来,科学家们一直在努力寻找有效的病毒抑制剂。当地时间3月20日,顶级学术期刊《科学》在线发表了一篇题为“Crystal structure of SARS-CoV-2 main protease provides a basis for design of impr…

render_notebook()结果没有图_来自百度的良心产品!百度iOS截长图App

我们知道百度是国内最大的搜索引擎,但你知道它也会出品一些和搜索无关的精品工具?例如在最近,百度就推出了一款iOS平台上的滚动截长图App,要知道iOS系统一直以来就不支持系统级别的截长图,百度这工具可谓是非常实用了&…

2020年度国家科学技术奖提名项目公示丨附全名单

来源:科学技术部3月24日,科学技术部发布了《国家科学技术奖励工作办公室公告第95号》文件。该文件称,2020年度国家科学技术奖提名工作已结束,并对2020年度国家自然科学奖、国家技术发明奖通用项目、国家科学技术进步奖通用项目受理…

linux实验试题 cp,cp命令实验,cp命令

cp命令实验,cp命令创建条件[rootlocalhost ~]#mkdir /source[rootlocalhost~]#mkdir /target[rootlocalhost~]#cp /etc/l*.conf /source[rootlocalhost~]#ll /sourcetotal20-rw-r--r--. 1 root root 28 Aug 10 09:24 ld.so.conf-rw-r-----. 1 root root 191 Aug 10 …

机载雷达发展简史:从蝙蝠到机载相控阵

来源:军事高科技在线 从地基起步蝙蝠,虽然像人一样拥有双眼,但它看起东西来,用到的却不是眼睛。蝙蝠从鼻子里发出的超声波在传输过程中遇到物体后会立刻反弹,根据声波发射和回波接收之间的…

苹果手机时区改不了怎么办_天价手机摔了怎么办?苹果:你尽管摔,坏了算我输。...

智能手机比起过去的功能机,好处多到数不过来,但有一点智能手机怎么都比不上功能机,那就是不抗摔。当年的很多功能机那都是可以用来砸核桃的,抗摔性一流,基本不存在摔坏的说法,但智能手机就不一样了&#xf…

2020 最新自动驾驶技术报告出炉:Waymo、特斯拉、沃尔沃技术方案大起底

来源:《2020 自动驾驶技术报告》进入 2020 年,自动驾驶技术的跨越式路线与渐进式路线之间的阵营划分已经十分明显。但最终自动驾驶要完全实现无人化,其技术还需要进行不断的迭代和发展。对于自动驾驶的技术进展,WEVOLVER 发布的《…

PC_excel完毕一列英文小写变大写

原创作品,出自 “深蓝的blog” 博客。欢迎转载,转载时请务必注明出处。否则追究版权法律责任。深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/44493869 使用excel中的UPPER函数就可以实现这个目标。介绍例如以下&#xff1a…

c语言if的作用,c语言中if 语句的作用范围示例代码

c语言中if 语句的作用范围示例代码复制代码 代码如下:# include int main(void){if (1 > 2)printf("第一条表达式");printf("第二条表达式");}/*输出结果第二条表达式*/说明if语句的作用范围只有紧跟if的第一条表达式时间: 2013-09-06在高中…

几何画板画椭圆_几何画板条件下椭圆的26种绘制方法(二)——代数法

“几何画板是一种常用的数学软件,具有强大的绘图功能,也为我们探究椭圆的不同绘制方法提供了平台.在探究过程中,我们遇到了一些麻烦和困难,但也获得了很多意想不到的惊喜和收获!我们将椭圆的绘制方法分为七类&#xff…

中国抗疫十大黑科技盘点!

来源:工业机器人新冠肺炎来势汹汹,为了阻止疫情的扩散,不少人没来及过春节就投入到了抗疫第一线。不过如今已是2020年,除了人力以外,设计与科技也在积极参与这场抗疫战。你知道吗?不论是“火神山”“雷神山…

JavaScript(js)/上

JavaScript(js) ECMA-----定义的基础语法 DOM------document object model BOM------Browser object model Javasript 基于对象的,也是面向对象 ECMAScript描述了以下内容: 语法 类型 语句 关键字 保留字 运算符 对象(封装 继承 多态&…

ap6212 Linux 蓝牙,替代正基AP6212、AP6330的SDIO WiFi+UART蓝牙组合

原标题:替代正基AP6212、AP6330的SDIO WiFiUART蓝牙组合SKYLAB推出的SDIO wifi串口蓝牙二合一模块WG221,可完全替代正基的WiFi蓝牙二合一模块AP6212和AP6330两个型号。WG221是WiFi和蓝牙二合一的组合解决方案模块,支持1 x 1 802.11 a/b/g/n W…