AIX 启动过程

相对 Linux 来说,AIX 启动过程较为复杂些,AIX 的启动过程可以简单分为三个过程来完成,接下来听偶一一道来,如有不对之处,请阁下指出!并欢迎批评。
1.    阶段一:

1.1   首先用OCS(On-Chip Sequencer)调用微处理器检查主板是否有问题,如没问题就交控制权交给

只读储存器(ROS),即 Read Only Storage,然后执行系统加电自检(POST)。

1.2  加电完成后,ROS 将检查自定义引导列表, 引导设备包括:磁盘、磁带、CD-ROM、以太网等。如

果自定义引导设备列表无法找到引导设备,ROS 将会检查默认引导设备列表,如果再次无法找到引导设备,

系统将无法启动。在自定义引导设备列表或默认引导设备列表中如找到引导设备,ROS 就会查找引导设备中

第一个引导记录,并查找引导设备中引导逻辑卷(Boot  Logical Volume,简称BLV)的长度和BLV的地址,

且将 BLV 载入内存中。

1.3   BLV 加载到内存后,就在内存中建立RAM文件系统,并把控制权给RAM 文件系统,接着开始系

统初始化内核。BLV 包含的内容有: AIX 内核、RAMFS、基本用户设备。初始化内核之后执行 init 程序,

其进程号(PID)为1,并执行 rc.boot 1。

1.4    rc.boot 1 详细执行过程:

rc.boot其实是一个 普通的Shell脚本,执行 rc.boot 1 时,首先执行命令: restbase,作用主要是将简化

版的 ODM加载到 RAMFS,如果这个过程执行失败,LED显示屏将会显示548错误。然后执行 cfgmgr -f

(first) 读取ODM中的Config_Rules类,属性 phase 等于 1 的全被认为是基本设备,该步骤主要为激活

rootvg做前提准备。紧接着执行bootinfo -b  来检测最后一次引导设备,如果成功,LED显示屏显示511,

到此,阶段1 执行完成。
2.    阶段二:

2.1  rc.boot 1 执行完成后,由 RAMFS 中的 init 进程再次执行 rc.boot 2。

2.2  在执行rc.boot 2过程中,首先调用 ipl_varyon 命令来激活 rootvg , 如要激活失败,LED显示屏将

会显示552/554/556其中之一。

2.3  激活rootvg后,执行 fsck -fp /dev/hd4, 如果未发现问题,就将/dev/hd4 挂载到 RAMFS 中的临

时挂载点:/mnt. 否则失败,LED显示屏将会显示555/557。

2.4  安装 /usr 和 /var 文件系统,一旦 /var 文件系统安装完成,就执行 copycore 命令把默认的dump

设备(/dev/hd6)最后的dump信息复制到默认的临时目录 /var/adm/ras。复制完成后马上卸载 /var 文件系

统。

2.5  激活位于 rootvg 中的页面空间(hd6),此任务由 swapon 命令来完成。注意:AIX 的页面空间就是

LINUX 下的Swap 空间。

2.6  使用 mergedev 命令把 RAMFS 中的 /dev 复制到硬盘文件系统上,然后再用

cp Cu* /mnt/etc/objrepos 把 RAMFS 中用户化的 ODM信息复制到磁盘上。

2.7  卸载 RAMFS 中的 /usr 文件系统和磁盘中的根文件系统(/dev/hd4),然后在 RAMFS 中的根文件

系统所在的安装点永久性的安装 rootvg(磁盘上的)根文件系统,使用 newroot 命令实现从RAMFS 根文件

系统到 rootvg 根文件系统的切换。一旦 rootvg 根文件系统安装完成后,/usr和/var文件系统就都可以被

安装在磁盘上的挂载点。

2.8  所有文件系统都挂载后,此时系统还未提供操作控制台,而是还要将引导信息写入到 alog 中,以

便将来查看引导信息或错误信息。复制完后,退出rc.boot程序,并将控制权交给磁盘中 rootvg 中的 init

进程,且释放 RAMFS。

2.9  rootvg的 init 进程掌握控制权后,它将读取 /etc/inittab 文件,并查找默认的启动级别,启动级别

位于init:  和 :initdefault之间。需要注意的是如果这个文件不存在,就会进入到单用户模式,也就是维护模式。

另外, /etc/inittab 文件每隔 1 分钟执行一次,如果发现上次检测之后有增加或修改,就会执行增加或修改

命令。
3.    阶段三:

3.1  在阶段二结束后,init 进程在 /etc/inittab 文件中如果找到 brc的标识符,就开始执行阶段三,也

就是第三次执行rc.boot。即 rc.boot 3。

3.2  运行rc.boot 3 后,首先安装/tmp 文件系统,紧接着同步 rootvg。如果为正常引导(多用户引

导),就执行 cfgmgr -p2,如果为维护模式引导,就执行 cfgmgr -p3。 cfgmgr 主要读取 ODM 中

Config_Rules类,配置属性 phase 为2 或 3的设备,也就是剩下的所有设备(属性phase等于1的设备为

基本设备)。

3.3  执行 cfgcon 配置终端控制台,例如TTY或磁盘上的某一个文件。

3.4  执行 savebase 将根文件系统上的 ODM 信息保存到引导逻辑卷(BLV)中。然后退出 rc.boot 3,

接着由 init 进程执行/etc/inittab其它进程。/etc/inittab 执行完后,AIX系统到此已经完成启动,此时

用户可以登录熟悉的 AIX 欢迎界面。
参与17

17同行回答

abit2007abit2007系统工程师代维
这个帖子写的启动顺序很经典,没想到又回头看到了。显示全部
这个帖子写的启动顺序很经典,没想到又回头看到了。收起
互联网服务 · 2015-04-09
浏览1947
Chili_min0813Chili_min0813系统运维工程师北京科技时代
谢谢lz分享显示全部
谢谢lz分享收起
系统集成 · 2013-08-15
浏览1920
大帅大帅系统运维工程师永锋
回复 1# deadman 我想问一下一个未经修改的/etc/initab文件内都包括什么显示全部
回复 1# deadman
我想问一下一个未经修改的/etc/initab文件内都包括什么收起
电子/电信其它 · 2013-08-14
浏览1887
jamespetjamespet软件开发工程师上海新炬网络技术有限公司
学习了,继续关注中显示全部
学习了,继续关注中收起
互联网服务 · 2012-09-05
浏览1883
spring_cuispring_cui系统工程师北京合力
支持楼主分享 太好了 太详细了 太棒了显示全部
支持楼主分享 太好了 太详细了 太棒了收起
IT分销/经销 · 2012-08-31
浏览1926
jamespetjamespet软件开发工程师上海新炬网络技术有限公司
支持楼主的分享显示全部
支持楼主的分享收起
互联网服务 · 2012-08-31
浏览1895
aixwmxaixwmx存储架构师中港科技
Very good!显示全部
Very good!收起
互联网服务 · 2012-07-30
浏览1921
a啊7a啊7软件开发工程师保密
感谢楼主分享!显示全部
感谢楼主分享!收起
互联网服务 · 2012-04-09
浏览2253
moweiwenmoweiwen软件开发工程师哈兰德技术
收藏一下显示全部
收藏一下收起
互联网服务 · 2011-11-01
浏览2236
zhenzongjianzhenzongjian软件开发工程师na
谢谢总结aix启动工程。。。显示全部
谢谢总结aix启动工程。。。收起
互联网服务 · 2011-11-01
浏览2244

提问者

deadman
擅长领域: 服务器存储Unix

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2011-01-10
  • 关注会员:0 人
  • 问题浏览:13345
  • 最近回答:2015-04-09
  • X社区推广