探索 Linux 系统的启动过程】的更多相关文章

引言 之所以想到写这些东西,那是因为我确实想让大家也和我一样,把 Linux 桌面系统打造成真真正正日常使用的工具,而不是安装之后试用几把再删掉.我是真的在日常生活和工作中都使用 Linux,比如在 Linux 下编程.写博客.写论文和做幻灯.当然,对于 LibreOffice 这样的软件使用起来都不会有什么困难,所以在我的博客中就基本没有提到,就像 Windows 下的程序员不会去写 MS Office 的使用指南一样.如果有人不能坚持使用 Linux,那一定是 Linux 中的某些困难打败了…
Linux 系统启动过程 Linux系统的启动过程可以分为5个阶段: BIOS自检 内核的引导. 运行init. 系统初始化. 用户登录系统. BIOS自检: BIOS是英文"Basic Input Output System"的缩写,中文名称就是"基本输入输出系统". BIOS是电脑启动时加载的第一个程序,它是计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序.开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息. 其…
一.linux系统的启动流程 关于linux系统的启动流程我们可以按步进行划分为如下: POST加电自检 -->BIOS(Boot Sequence)-->加载对应引导上的MBR(bootloader)-->主引导设置加载其 BootLoader-->Kernel初始化-->initrd—>/etc/init进程加载/etc/inittab,其进程流 程图如下: 二.剖析详细启动过程 ⑴. POST开机自检:电脑主机打开电源的时候,随后会听到滴的一声,系统启动开始了开机…
首先,mbr主引导程序被破坏是指系统在启动过程中,磁头找不到/boot分区(windows的启动分区在c盘). 1)下面我们模拟主引导分区被破坏的情况:(在启动分区划分446M的存储大小) 2)重启(reboot)之后,会出现如下情况: 解决方法: 1)在真机中打开shell,输入virt-manager: 2)把虚拟机FORCE OFF之后,设置系统启动为光盘启动 3) 并进行如下选择: 4)完成之后,进入shell界面,执行如下操作: 5)完成之后,再设置虚拟机的启动为磁盘启动,即可. 注意…
接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,刚好今天有空来梳理下这个过程:一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下几步:1)开机BIOS自检,加载硬盘.2)读取MBR,进行MBR引导.3)grub引导菜单(Boot Loader).4)加载内核kernel.5)启动init进程,依据inittab文件设定运行级别6)init进程,执行rc.sysinit文件.7)启动内核模块,执行不同级别的脚本程序.8)执行/…
一.系统启动级别一共有六个: 0:系统停机模式,系统不可以正常启动 1:单用户模式, root权限,用于系统的维护,禁止远程登陆 2:多用户模式,没有NFS网络支持 3:完整的多用户文本模式,有NFS,登陆后进入控制台命令行模式 4:系统未使用,作为保留一般不用 5:图形化模式,登陆后进入GUI模式 6:重启模式,默认级别不能为6,否则不能正常启动 ,并按 ctrl + x 使系统的继续启动 3)登陆进去之后,修改系统的启动级别为graphical.target,防止下一次发生这样的情况.…
在/boot/grub2目录下有一个grub.cfg文件:该文件主要是用来自动地引导系统启动内核程序和系统的初始化程序. 问题一:当系统在启动的情况下,我们不小心删除/boot/grub2/grub.cfg文件时,我们可以使用以下命令来恢复.(恢复之后在系统启动的时候会自动引导) 问题二:当/boot/grub2/grub.cfg文件删除之后,在系统第一次启动时要手动引导系统加在内核程序和初始化程序. 1) set root='hd0,msods1'               表示系统启动盘所…
1.基本概念 BIOS  中文名  主板BIOS  外文名  Basic Input/Output System  全    称  基本输入输出系统(全称是ROM-BIOS,是只读存储器基本输入/输出系统的简写)  作    用 硬件与软件程序间的转换器或接口(是一组被固化到电脑中,为电脑提供最低级最直接的硬件控制的程序,它是连通软件程序和硬件设备之间的枢纽,通俗地说,BIOS是硬件与软件程序之间的一个“转换器”或者说是接口) 自诊断程序:通过读取CMOS RAM中的内容识别硬件配置,并对其进行…
在/boot目录下有两个重要的文件,分别是: vmlinuz-3.10.0-123.el7.x86_64         内核文件 initamfs-3.10.0-123.el7.x86_64.img    初始化文件 问题一:当系统中的内核文件vmlinuz-3.10.0-123.el7.x86_64 丢失之后,在没有重启的情况下,可以查看该安装包,并进行安装.具体步骤如下:   1)使用yum  whatprovides  /boot/vmlinuz-3.10.0-13.el7.x86_64…
(其中/etc/inittab是一个很重要的文件,值得细究http://www.2cto.com/os/201108/98426.html) 其开头的446字节内容特指为"主引导记录"(MBR),其后是4个16字节的"磁盘分区表"(DPT),以及2字节的结束标志(55AA) http://www.ruanyifeng.com/blog/2013/08/linux_boot_process.html http://chrinux.blog.51cto.com/6466…
1简单描述(口头): 1.开机BIOS自检(检查硬件,cpu,主板,内存……) 2. MBR引导 硬盘 0 柱面 0 磁道 1 扇区的前446byte 3.  grub 引导菜单 cat/etc/grub.conf 4. 加载内核 kernel 5.启动init进程 6.读取inittab文件,执行rc.sysinit,rc等脚本 详细图解: (有时间自己也画一张,不用别人的) 附一张centos7 systemctl 的命令用法…
Linux启动时我们会看到许多启动信息 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导 运行init 系统初始化 建立终端 用户登录系统 init程序的类型: •SysV:init,CentOS 5之前,配置文件:/etc/inittab •Upstart:init,CentOS 6,配置文件:/etc/inittab, /etc/init/*.conf •Systemd:systemd,CnetOS 7,配置文件:/usr/lib/systemd/sy…
Linux系统的启动过程 过程 通电-> BIOS-> LILO/GRUB-> Kernel Boot-> init->rc.sysinit init->rc ->mingetty->login-> shell-> 完成开机 Linux系统的运行级别 运行级别 Linux 为了适应不同用户对服务的启动配置要求,设置了七种不同的运行级别: 运行级别 0:关机模式.poweroff.target 运行级别 1:单用户模式,仅用于 root 用户对系统…
一.实验过程 使用实验楼虚拟机打开shell cd LinuxKernel/ qemu -kernel linux-/arch/x86/boot/bzImage -initrd rootfs.img 内核启动进入 menu 程序.下面是用 gbd 来跟踪内核的启动过程: gdb (gdb)file linux-/vmlinux # 在gdb界面中targe remote之前加载符号表 (gdb)target remote: # 建立gdb和gdbserver之间的连接,按c 让qemu上的Lin…
Linux系统的启动过程 按下电源 开机自检(BIOS):检查cpu.内存.硬盘是否有问题,找到启动盘. MBR引导(master boot record):主引导记录,读取存储设备的512bytes字节的主引导记录. GRUB菜单:控制加载哪个内核. 加载内核(kernel) 运行 INIT 进程(linux系统里面的第一个进程) 读取/etc/inittab配置文件(运行级别) 执行初始化脚本/etc/rc.d/rc.sysinit,设置主机名.设置IP地址 根据系统的运行级别,在开机的时候…
Linux系统的启动方式有点复杂,而且总是有需要优化的地方.传统的Linux系统启动过程主要由著名的init进程(也被称为SysV init启动系统)处理,而基于init的启动系统被认为有效率不足的问题,systemd是Linux系统机器的另一种启动方式,宣称弥补了以传统Linux SysV init为 基础的系统的缺点.在这里我们将着重讨论systemd的特性和争议,但是为了更好地理解它,也会看一下通过传统的以SysV init为基础的系统的Linux启动过程是什么样的.友情提醒一下,syst…
=========================        基本常识       ========================= Linux系统基本启动流程: 1. CPU从ROM(如果有的话)的0x0地址开始读取代码,执行loader: 2. Loader初始化ram,从rom中拷贝uboot或kernel的镜像到ram的指定地址并执行: 3. Uboot(如果有)拷贝kernel镜像和dtb文件到ram的指定地址,并运行kernel: 4. 设置bootargs会被覆盖,kerne…
实验三:跟踪分析Linux内核的启动过程 一.调试步骤如下: 使用gdb跟踪调试内核 qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img -s -S # 关于-s和-S选项的说明: // -S freeze CPU at startup (use 'c' to start execution) cpu初始化之前把它冻结起来 // -s shorthand for -gdb tcp::1234 在1234端口上建立了…
作业三:LINUX内核的启动过程 一.使用GDB跟踪内核从start_kernel到init进程启动(附实验截图) (一)使用自己的Linux系统环境搭建MenuOS的过程 下载内核源代码编译内核 cd ~/LinuxKernel/ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.18.6.tar.xz xz -d linux-3.18.6.tar.xz tar -xvf linux-3.18.6.tar cd linux-3.…
实验三:跟踪分析Linux内核的启动过程 学号:20135114 姓名:王朝宪 注: 原创作品转载请注明出处   <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.调试步骤如下: 使用gdb跟踪调试内核 qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img -s -S # 关于-s和-S选项的说明:// -S freeze CPU…
跟踪调试Linux内核的启动过程---使用gdb 符钰婧 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ” 本次的实验是使用gdb跟踪调试内核从start_kernel到init进程启动,并分析启动的过程. 1.首先是在实验楼虚拟机上进行调试跟踪的过程. (1) 先构造一个简单的Linux系统 (2) 接下来使用gdb跟踪调试内核 启动(窗口被冻结) 另开一个shell窗口(水平分割)…
Booting Process in Linux RHEL 7 | Linux RHEL 7启动过程 In this post, I will guide you booting process in linux RHEL 7, it is very important to know the linux booting process to troubleshoot and fix boot issues. Redhat 7 replaced the init process (/sbin/i…
回顾 1.中断上下文的切换——保存现场&恢复现场 本节主要课程内容 Linux内核源代码简介 1.打开内核源代码页面 arch/目录:支持不同CPU的源代码:其中的X86是重点 init/目录:内核启动相关的代码基本都在该目录中(比如main.c等) start_kernel函数就相当于普通C程序的main函数 kernel/目录:Linux内核核心代码在kernel目录中 README 介绍了什么是Linux,Linux能够在哪些硬件上运行,如何安装内核源代码等 构造一个简单的linux系统m…
Linux内核分析第三周学习博客--跟踪分析Linux内核的启动过程 实验过程截图: 过程分析: 在Linux内核的启动过程中,一共经历了start_kernel,rest_init,kernel_thread等几个函数的执行.其中start_kernel相当于普通C程序的main函数.Trap_init负责初始化中断向量,mm_init负责内存管理模块初始化,sche_init负责调度模块初始化. 两把宝剑: 1.中断上下文切换 2.进程上下文切换 Qemu工具学习: 格式: qemu -ke…
Linux系统开机启动时的工作原理也是深入了解Linux系统核心工作原理的一个很好的途径. 启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬盘信息.内存信息.时钟信息.PnP特性等等.在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了.在BIOS将系统的控制权交给硬盘第一个扇区之后,就开始由Linux来控制系统了. 启动第二步--读取MB…
简单视图 按下电源开关 开机自检(BIOS)弹笔记本logo的时候,检查cpu 硬盘 这些硬件问题 MBR引导 一般是通过硬盘启动系统 GRUB的菜单 黑底白字有个倒数计时 可以选择内核 yum命令可以更新内核 内核在/boot里 加载内核(kernel) 内核在硬盘里,把它读取到内存中并运行. 运行INIT的进程 linux系统里面启动的第一个进程 初始化过程 是个命令也是进程 读取/etc/inittab读取运行级别 执行/etc/rc.d/r.sysinit脚本 设置主机名 设置ip等 根…
Linux系统无法启动故障解决方案 2011-09-27 09:42 佚名 比特网 我要评论(0) 字号:T | T 不管你多么喜爱你的Linux系统机器,有时候你都必须恢复你的系统.是的,即使一台Linux系统机器也可能遭受系统崩溃:不管是由于视频配置错误.内核更新出错.或是由于init脚本配置错误,这种情况都是必然的. AD:2014WOT全球软件技术峰会北京站 课程视频发布 当你的心爱的linux系统出现故障的时候,你是如何来解决的呢?没有操作系统能够确保100%可靠.终有一天,即使Lin…
Linux系统的启动流程 理解Linux操作系统启动流程,能有助于后期在企业中更好的维护Linux服务器,能快速定位系统问题,进而解决问题. 上图为Linux操作系统启动流程 1.加载BIOS 计算机电源加电质检,首先加载基本输入输出系统(Basic Input Output System,BIOS),BIOS中包含硬件CPU. 内存.硬盘等相关信息,包含设备启动顺序信息.硬盘信息.内存信息.时钟信息.即插即用(Plug-and-Play,PNP) 特性等.加载完BIOS信息,计算机将根据顺序进…
腾讯云Linux系统中启动自己安装的tomcat 首先通过工具查看一下安装的tomcat的位置 进入命令行之后输入以下指令: 此时,tomcat已经启动了.…
原文:http://blog.csdn.net/justdb/article/details/9621271 版权声明:本文为博主原创文章. Linux系统的启动时通过读取不同的配置文件,执行相应的Shell脚本完成的.当然本文只是简单的从文件的角度分析,更深层次的本文没涉及. 主要读取了以下文件: /boot/grub/grub.conf /etc/inittab /etc/rc5.d(rc.d) - Seq /etc/passwd (Login,input username and pass…