linux基础:5、linux启动过程

linux启动过程

1、BIOS(basic
in out system)

通电检查硬件,然后加载第一可用启动项的mbr;

#可通过BIOS设置各种介质存储设备的启动顺序,比如:cdrom、disk、usb

2、MBR(main boot
recorder)

磁盘的第一个扇区,共512字节,446字节的boot程序空间,64字节的分区表,2字节的校验位。

执行MBR内保存的boot loader程序,一般为GRUB,通过GRUB来找到kernel和initrd(centos6里面此文件更名)并将其拷贝到内存解压,控制权交给kernel;

3、kernel接管系统后,会执行ramdisk,通过ramdisk识别并释放文件系统,从而加载硬件驱动,此时硬件系统准备完毕,接下来系统会启动init进程。

==================================================================
#看看boot文件夹里的核心文件
[[email protected] ~]# ls /boot | sort
config-2.6.32-431.el6.i686
efi
grub
initramfs-2.6.32-431.el6.i686.img      #虚拟文件系统ramdisk使用的镜像
lost+found
symvers-2.6.32-431.el6.i686.gz
System.map-2.6.32-431.el6.i686
vmlinuz-2.6.32-431.el6.i686            #启动的核心文件

#还记得我们在grub界面修改启动参数时的那三行命令吗?那里指定的就是这两个文件!
==================================================================

4、第一个进程init启动

作用就是要准备软件执行环境(主机名称、网络、语言环境、档案系统格式和其他一些服务)。

配置文件:/etc/inittab。(按照此配置文件里,启动相应runlevel的服务进程)。

(例如启动/etc/rc3.d/下面的程序,/etc/rc3.d/下的文件名称一种以K开头,意为kill,不启动,一种以S开头,意为start,根据S后面的两位数字的大小进行由小到大的顺序启动),至此软件运行环境准备完毕。

==================================================================
#查看下默认的运行级别
[[email protected] ~]# cat /etc/inittab |grep -v ‘^#‘
id:3:initdefault:

#看看运行级别3目录下开机启动的服务是什么吧
[[email protected] ~]# ls /etc/rc3.d/ | grep ‘^S‘
S08ip6tables
S08iptables          #防火墙服务
S10network           #网络服务
S11auditd
S12rsyslog
S25netfs
S26udev-post
S55sshd              #ssh守护进程
S80postfix
S90crond             #日常计划任务
S99local
==================================================================

5、user的自定义启动项配置文件运行/etc/rc.local

#centos6.5中的路径是/etc/rc.local

#此配置文件可以自定义你希望开机执行的命令及脚本

==================================================================
[[email protected] ~]# cat /etc/rc.local
#!/bin/sh      #这里的含义是使用bash来当作命令解释器
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don‘t
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local      #开机会执行这条命令
===================================================================

6、启动终端或x-window

配置文件:/etc/inittab

根据上面的配置文件,启动/sbin/mingetty,启动六次,也就是启动6个终端

至此,系统显示登陆界面,启动过程准备完成。

时间: 2024-08-06 20:08:42

linux基础:5、linux启动过程的相关文章

Linux系统开机和启动过程

提起操作系统这个词,想必大家并不陌生,有电脑端操作系统和手机端操作系统.电脑端操作系统较为熟悉的就是微软开发的windows操作系统,还有一种就是大家稍微陌生的linux操作系统,而手机端的操作系统分别为iOS操作系统,Android操作系统.而今天小编就给大家着重讲讲Linux系统开机和启动过程. 内核引导 当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动. 操作系统接管硬件以后,首先读入 /boot 目录下的内核文件. 运行init init 进程

Linux基础概念-----Linux I/O重定向 ,管道

标准输入:键盘 标准输出:显示器 错误输出:显示器 FD:文件描述符:让程序可以文件交互,并且便于内核识别文件,打开的每一个文件都有一个描述符 程序在和文件交互式,通过文件描述符来进行交互,而非文件名,文件名是方便用户分别文件. Linux一切皆文件,所以标准输入,标准输出都有各自的文件描述符 标准输入描述符:0 标准输出描述符:1 标准错误输出描述符:2 将其默认数据流改为其他设备:IO重定向 输出重定向 > 覆盖重定向 >> 追加重定向 /dev/null  黑洞 只针对当前Shel

Linux基础概念-----Linux权限

权限对象: 属主:u 属组:g 其他人: o 所有人:a Linux基本权限 读:read 标识为:r 八进制标识为:4 写:write 标识为:w 八进制标识:2 执行:execution 标识为:x 八进制标识:1 特殊权限 setuid:仅对文件(可执行的二进制程序)有效,以文件的所有者身份执行 八进制表现为:4 [[email protected] tmp]# ls -l /usr/bin/passwd -rwsr-xr-x. 1 root root 30768 Feb 22  2012

Linux基础知识--Linux的文件系统和bash的基础特性

Linux基础知识--linux的文件系统和bash的基础特性 一.Linux文件系统: Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件.目录.软连接及文件保护信息等都存储在其中 linux文件系统遵循FHS(Filesystem Hierarchy Standard,文件系统目录标准),多数Linux版本采用这种文件组织形式.FHS采用了树行组织文件. FHS定义了两层规范,第一层是,/目录下面的各个目录应该要

Linux基础篇--linux基础和帮助用法

Linux基础篇--linux基础和帮助用法 本章概要 用户登录 终端 Shell介绍 执行命令 简单命令 Tab键补全 命令行历史 bash快捷键 使用gnome-terminal whatis command--help manandinfo 本地帮助文档/usr/share/doc/ 官网在线文档 其它网站和搜索 用户登录 root用户   一个特殊的管理帐户   也被称为超级用户   root已接近完整的系统控制   对系统损害几乎有无限的能力   除非必要,不要登录为root 普通用户

linux内核结构和启动过程

(以下内容来自教学课件) 一.Linux内核结构 arch 与体系结构相关的代码.对应于每个支持的体系结构,有一个相应的子目录如x86.arm等与之对应,相应目录下有对应的芯片与之对应 drivers 设备驱动代码,占整个内核代码量的一半以上,里面的每个子目录对应一类驱动程序,如:char:字符设备.block:块设备.net:网络设备等 fs 文件系统代码,每个支持的文件系统有相应的子目录,如cramfs,yaffs,jffs2等 include 这里包括编译内核所需的大部分头文件 与平台无关

Linux的2种启动过程

Linux启动过程分为2种,init方式和systeamd方式. 先说init启动过程: 1.首先,启动电源. 2.启动POST(Power on self test),加电自检程序,检查主板硬件上有无短路等等,如果正常,会"滴"的响一声,这是很多人熟知的开机"滴"声.(上面那篇文章没写到.) 3.然后处理器会在系统存储中找到BIOS(Basic Input Output System). (注:BIOS一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机

Linux(RHEL6)启动过程详解

Linux(红帽RHEL6)启动过程详解: RHEL的一个重要和强大的方面是它是开源的,并且系统的启动过程是用户可配置的.用户可以自由的配置启动过程的许多方面,包括可以指定启动时运行的程序.同样的,系统关机时所要终止的进程也是可以进行组织和配置的,即使这个过程的自定义很少被需要. 理解系统的启动和关机过程是如何实现的不仅可以允许自定义,而且也可以更容易的处理与系统的启动或者关机相关的故障.  1.启动过程  以下是启动过程的几个基本阶段:   ① 系统加载并允许boot loader.此过程的细

Linux移植之内核启动过程引导阶段分析

在Linux移植之make uImage编译过程分析中已经提到了uImage是一个压缩的包并且内含压缩程序,可以进行自解压.自解压完成之后内核代码从物理地址为0x30008000处开始运行.下面分析在进入C之前内核做的一些工作,以下是内核启动过程中打印出来的信息,其中Uncompressing Linux就是在自解压代码.make uImage编译的最后也给出了链接脚本arch/arm/kernel/vmlinux.lds,以及链接的顺序arch/arm/kernel/head.o 是第一个.

【Linux基础】Linux简史

混沌初开?那是在一九九一年,令人痛苦难耐的冷战渐渐走到了尽头.和平安详的空气开始升起在地平线.在计算科学领域,随着强大硬件的推出,计算机的极限能力已超出了我们的想象,一个辉煌的未来似乎已渐露端倪. 但,还是缺了点儿什么?在操作系统领域,存在着一大片空白. 一方面,DOS还统治着庞大的个人电脑王国. 比尔盖茨花$50,000从一个西雅图***手中买来DOS.之后,靠着聪明的市场策略,这个简陋的操作系统悄悄***到了世界的每一个角落. PC用户没有其它的选择.苹果机虽好,但它的天价没人能承受得起.它