Linux系统的启动和修复模式
一.多种方式安装Linux系统
1. 制作安装启动盘
方法一、在DOS/Windows下制做
G:\dosutils> rawrite
Enter dis image source file name:bootdisk.img
Enter target diskette drive:a
Please insert a formatted diskette into drive A:and press –ENTER--:[Enter]
注:光盘\images\有以下几个IMG文件
lbootdisk.img安装引导盘映像文件
ldrvnet.img网卡驱动盘
ldrvblock.img块设备驱动盘
lpcmciadd.imgPCMCIA设备驱动盘
方法二、在Linux下制做启动盘
#dd if=boot.imgof=/dev/fd0bs=1440
2. 光盘安装Linux系统
(1)使用cd#光盘启动计算机
(2)直接按回车键/linux text选择安装界面
(3)开始安装向导
3. 硬盘安装Linux系统
(1)将安装光盘的ISO文件复制到硬盘的某个分区中
(2)利用cd#光盘/安装启动盘启动计算机
(3)输入linux askmethod选择安装介质
(4)开始安装向导
4. FTP/HTTP安装Linux系统
(1)准备安装文件,制作HTTP/FTP服务器
(2)利用cd#光盘/安装启动盘启动计算机
(3)输入linux askmethod选择安装介质
(4)开始安装向导
二.启动linux系统
1.Linux启动过程分析
(1)BIOS自检
l硬件检测及初始化
l引导启动设备
(2)引导启动设备
l软盘(0磁道第一个扇区)
l光盘(最外围存储轨道)
l硬盘(MBR)
lUSB存储设备
(3)调用Linux引导程序至内存中
lLinux的引导程序可以使用GRUB/LILO等引导软件
lGRUB/LILO可以安装在MBR/引导分区的引导扇区中
(4)运行Linux内核
l内核放在/boot目录中,Linux系统可以同时支持多版本内核
l解压缩内核
l检测硬件
l加载root文件系统
(5)执行init进程
l启动新进程或关闭进程
l选择启动模式
l建立虚拟终端
(6)用户登录
l输入用户名及口令
l加载用户配置文件
l加载shell程序
2.引导盘的创建
方法一:安装过程中创建
方法二:mkbootdisk
#mkbootdisk--device/dev/fd02.4.20-8
方法三:使用dd命令
# dd if=/boot/vmlinuzof=/dev/fd0
3.GRUB
(1)安装GRUB
l安装软件包
#rpm –ivhgrub-0.934.i386.rpm
l使用安装命令安装GRUB到MBR
#grub
grub>root (hdx,y)
grub>setup (hdx[,y])
(2)GRUB的配置
#vi/boot/grub/grub.conf
grub.conf中常用的配置命令有:
default=菜单项序号/saved
设置启动菜单的默认启动项
hiddenmenu
隐藏菜单界面
splashimage =图像文件全路径名
指定某文件作为启动菜单的背景图像
timeout=延迟秒数
设置启动菜单的启延时
title 菜单项名称
开始一个菜单项的配置,设置菜单项的名称
root (hdx,y)
设置GRUB的根设备为linux内核所在的分区
kernel内核文件名称
指定内核文件的名称及加载内核所需的参数
initrdinitrd文件名
指定镜像文件的位置
map(hdx[,y])(hdx[,y])
建立虚拟磁盘
rootnoverify (hdx,y)
指定windows启动引导器的位置
makeactive
标识指定分区为活动分区
chainloader+n/文件名称
调用指定windows启动文件
password 口令/--md5口令密文
设置GRUB启动菜单和菜单项口令
lock
利用password设置的全局口令锁定菜单项
savedefault
保存当前启动菜单项为默认启动
文件实例:
# grub-md5-crypt(产生口令的MD5密文)
# vi/etc/grub.conf
default=0
timeout=50
splashimage=(hd0,0)/grub/splash.xpm.gz
password--md5#!dfdasdf34123!#@$!#@
titleRedHatLinux 9.0
root(hd0,2)
kernel/Vmlinuz-2.4.20-8roroot=/LABEL=/
initrd/initrd-2.4.20-8.img
passwordlinux
tilewindows 2000
rootnoverify(hd0,0)
chainloader +1
lock
(3)GRUB的FAQ
l编辑模式的使用
用于临时修改菜单的选项,在菜单界面中按E键进入
菜单主界面
编辑模式
l命令行模式的使用
利用命令行命令设置GRUB,在菜单界面中按C键进入
命令模式
grub命令行中常用的命令有:
grub>root(hdx,y)//设置根设备所对应的分区
grub>kernel 内核文件//设置内核文件的名称
grub>initrd镜像文件名//设置镜像文件名
grub>boot//启动指定操作系统
grub>rootnoveify (hdx,y)//设置根设备所对应的分区,但不检查加载点
grub>chainloader文件名 //加载指定的文件
grub>help//获取帮助
grub>reboot//重启系统
grub>md5-crypt//生成口令的MD5密文
grub>setup (hdx[,y])//安装GURB到MBR/指定分区的引导扇区中
grub>hide 分区//隐藏分区
grub>cat 文件名//显示文件内容
grub>find 文件名//查找文件
l如果MBR中的GRUB引导程序被其它程序覆盖,应该如该恢复
1)放入第一张安装启动盘,开始启动计算机:boot:linux rescue(启动linux的修复模式,加载硬盘上的LINUX系统到/mnt/sysimage)
2)#grub
grub>root(hdx,y)
grub>root(hdx)
l恢复GRUB的配置文件
由于grub.conf设置的问题,可以采用以下方法进行恢复:
1)放入第一张安装启动盘,开始启动计算机:boot:linux rescue(启动linux的修复模式)
2)#vi/mnt/sysimage/boot/grub/grub.conf
l如何利用GRUB进入单用户模式,找回丢失的root用户口令
在GRUB菜单界面中按e编辑linux菜单项,给内核添加参数single
l如何卸载GRUB
1)#rpm-egrub
2)C:\>fisk/mbr
l如何制作GRUB启动盘
#grub-install/dev/fd0
3.init 进程
(1)init进程的作用
init进程是系统启动第一个进程,它负责加载其它进程、管理系统的其它进程
(2)系统运行级别
运行级别 |
说明 |
0 |
关机 |
1 |
单用户模式 |
2 |
多用户模式、不支持NFS |
3 |
多用户模式 |
4 |
保留 |
5 |
X-WINDOWS |
6 |
重启 |
可以使用init在各个运行级别中进行切换,init命令格式如下:
#init<0-6,a,s,q>
也可以使用runlevel查看当前运行级别,如下例所示:
#runlevel
N3
(3)init的配置-----inittab文件
/etc/inittab文件用于设置init进程在执行时加载哪些程序,inittab文件由若干个记录构成,每条记录格式如下:
ID:RUNLEVEL:ACTION:COMMAND
以下为默认inittab文件内容:
id:3:initdefault:
si::sysinit:/etc/rc.d/init.d/rc.sysinit
l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6
ca ::ctrlaltdel:/sbin/shutdown-t3-rnow
pf::powerfail:/sbin/shutdown-f-h +2 “power failure;power shutting down”
pr:12345:powerokwait:/sbin/shutdown –c“powerrestored;shutdown cancelled”
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
x:5:respawn:/etc/X11/prefdm-nodaemon
说明:
(1)Action用于设置调用进程的方式
Respawn |
只要进程停止,该进和便重新启动 |
Wait |
进程运行一次,init等待到它停止 |
Once |
进程运行一次 |
Boot |
系统引导过程中,进程运行,忽略等级 |
Bootwait |
系统引导过程中,进程运行,init等待结束 |
Off |
无任何行动 |
Initdefault |
系统默认运行等级 |
Sysinit |
系统引导则运行,优先于boot或bootwait |
Powerwait |
电源故障后发送信号给init,等待进程终止 |
Ctrlaltdel |
当init收到SIGINT信号时,该进程运行 |
Powerokwait |
UPS恢复则向init发送SIGINT信号 |
(2)修改/etc/inittab文件,可以设置默认启动模式、各运行级别所加载的程序、CTRLALTDEL的动作、开设虚拟用户终端
(4)/etc/rc.d 的目录内容
1)/etc/rc.d/init.d目录
l保存所有运行等级需要的所有脚本
l启动、停止、重启某些服务
2)/etc/rc.d/rc
l系统改变运行等级,通过此脚本检查/etc/rc.d/rcX.d目录和文件可存在,以及是否正在运行等,以及运行/etc/rc.d/rcX.d中所有S开头的脚本
3)/etc/rc.d/rcX.d目录
l存放每一运行等级默认启动项,该目录中的文件链接到:/etc/rc.d/init.d
l文件名格式为K{Two-digit number}{script name}/S{Two-digit number} {script name},K:以stop参数运行,S:以start参数运行;Two:数字代表执行顺序
4)/etc/rc.d/rc.local
l该脚本在2,3,5运行等级结束时执行
5)/etc/rc.d/rc.sysinit
l系统初始脚本,用于设置系统的时钟、加载键盘、加载系统字体、加载其他文件系统、激活交换分区、生成日志文件
三.linux系统修复模式
1. 系统修复模式的简介
使用安装光盘启动修复模式,用于检测和加载硬盘上已安装的linux系统到/mnt/sysimage目录中。该模式主要用于修复损坏的系统,当系统出现故障时可使用修复模式.
2.启动修复模式
l使用1#安装启动系统
l在boot:提示符下输入linuxrescue启动修复模式,按照启动向导启动系统
3. linux修复模式的应用
l修复系统
l找加丢失的用户口令
l修复系统配置