Username: Password:

Linux系统的启动
来源: ChinaUnix博客  作者: ChinaUnix博客   发布时间:2008-04-24 08:31:06


Linux系统的启动
教学内容:
Linux启动步骤
Linux启动设备的建立
引导装载程式的使用
init进程的分析
用户登录和Shell
教学目标:
了解Linux启动步骤、Shell特点、GRUB
熟悉Shell的功能、init进程的功能
掌控GRUB、LILO的操作、inittab文档的配置
教学重点:
GRUB的操作
Inittab文档的配置
教学难点:
init进程的分析及配置
一、启动步骤
1.BIOS自检
    1)硬件检测及初始化
    2)引导启动设备
2.引导启动设备
    1)软盘(0磁道0扇区)
    2)光盘(最外围存储轨道)
    3)硬盘(MBR)
3.调用Linux引导程式至内存中
4.运行Linux内核
5.执行init进程(按”I”单步运行)
6.init调用getty提示用户登录
7.运行SHELL程式
二、Linux启动设备的建立
1.启动设备分类
    引导盘:软盘、光盘、优盘
(用于引导硬盘中linux系统)
    系统盘:软盘、光盘、硬盘
(用于启动一个完整的linux系统,在该盘中存放有内核等数据)
2.引导盘的创建
    1)软盘
       方法一:安装过程中创建
       方法二:mkbootdisk
    格式:mkbootdisk   --device  /dev/fd0   2.4.8-20(内核版本号)
(uname  -r显示内核版本号)
  方法三:# lilo ?b  /dev/fd0(使用lilo引导装载程式时应用)
    方法四:块自制
# dd if=源文档(/boot/vmlinuz)  of=目标路径(/dev/fd0)   [bs=数字] [counts=数字]
# rdev  /dev/fd0  /dev/hda1(设备重定向)
   方法五:利用DOS启动Linux
     在DOS引导盘中建立Autoexec.bat
添加如下内容:
  Loadlin   Vmlinuz   root=/dev/hda1  
(从第一张安装光盘中复制/dosutils/loadlin.exe到软盘)
   2)光盘
      刻录机+刻录软件
   3)优盘
      方法一:dd块自制
      方法二:建立文档系统
注:引导主要用于引导硬盘中的linux系统,当引导装载程式损坏或是引导程式被覆盖时,能够使用引导盘进行引导
3.系统盘
    1)复制SHELL相关命令至软盘中
    2)内核打包
    3)块复制到软盘
三、引导装载程式使用
1.LILO
    (1)LILO简介
       LILO(Linux-loader)是一种能够位于MBR/引导扇区中的基于INTEL平台下的系统引导装载软件
    (2)LILO的特点
单独于操作系统
支持两种操作界面:菜单、命令提示符
支持多种操作系统
支持不同磁盘和分区中的引导扇区
    (3)LILO的配置
  #vi  /etc/lilo.conf
    实例:
boot=/dev/hda         
LILO的安装位置
install=/boot/boot.b         
启动文档位置
map=/boot/map            
映射文档
prampt                  
启动时显示LILO的菜单
disktab=/dev/hda            
分区表的位置
timeout=30                 
默认超时时间
message=/boot/message     
启动显示信息
password=abc               
配置LILO引导密码
linear                     
硬盘模式(大硬盘)
default= Linux           
配置默认菜单   
  image=/boot/Vmlinux-2.2.6-22
指定内核文档名
label= Linux                 
菜单标题
read-only                    
配置引导分区在启动过程中为只读分区
root=/dev/hda2              
内核存放的分区
other=/dev/hda1            
  配置其他操作系统的安装位置
label=windows               
配置菜单标题
(4) 配置案例
根据以下需要配置LIL
  LILO安装位置为ide1主盘的MBR
  启动映像文档为/boot/boot.b
  映射文档为/boot/map
  默认超时时间长度为10秒
LILO启动密码为123
默认菜单为linux
linux的内核为vmlinux-2.2.6-22,且/boot目录没有装载任何分区
根目录所装载的分区为/dev/hda5
在ide1主盘上的第一个分区同时安装了win 2k的操作系统,显示菜单标题为win2000
配置过程:
     # vi  /etc/lilo.conf
         boot=/dev/hda              
         install=/boot/boot.b         
         map=/boot/map            
             timeout=10               
             password=123              
             default= Linux               
            image=/boot/Vmlinux-2.2.6-22  
             label= Linux                 
             read-only                    
             root=/dev/hda5              
             other=/dev/hda1              
             label=win2000      
image=/boot/vmlinuz-2.4.20-8
label=newlinux
read-only
root=/dev/hda5
other=/dev/hdc1
label=win98
   
(4)LILO的操作命令
    # lilo 重装LILO(当lilo被覆盖时使用)
    # lilo  ?u 卸载LILO
# lilo ?c  /etc/lilo.conf 指定LILO的配置文档
(5)LILO的命令行操作方式
             Ctrl+x 转换至命令行模式
              Boot:help  ( 获取LILO命令帮助)
             Boot:菜单标题  [参数] (启动指定的操作系统)
2.GRUB
(1)GRUB简介
      GRUB和LILO同样都是一种多重启动管理器
(2)GRUB特点
支持大硬盘,突破1024柱面的限制
支持两种界面
开机画面
(3)GRUB的配置
       GRUB的配置选项集中在/etc/grub.conf(/etc/grub.conf是/boot/grub/grub.conf的符号连接文档)
    配置:boot=/dev/hdd               配置GRUB的安装位置
           default=0                   配置默认菜单
             timeout=30                  配置超时时间
             splashimage=(hd0,0)/grub/1.jpg  设定开机菜单画面
             password=abc                配置GRUB的口令
             title  RedHat Linux           配置标题
             root   (hd1,1)                配置内核存放的分区
             kernel  /Vmlinuz-2.4.20-8 ro  root=/LABEL=/ 配置内核文档
             initrd   /initrd-2.4.20-8.img       配置内核映像文档
             lock                          锁定操作系统
             title   win2k            
             root  noverify  (hd0,0)          配置WINDOWS系统的位置
             chainloader  +1                  读取扇区
             password=123                  配置标题密码为123
lock
配置案例:
根据以下需要配置GRUB,具体如下:
            1)HD0上有两个操作系统,分别为RH9.0   WIN2K
(RH9.0安装在/BOOT分区号在第三个分区中,WI
N2K安装在C:下)
2)HD1的C盘中有WIN98
3)配置GRUB的口令为123且用MD5加密
4)锁定每个菜单选项
       配置过程:
# grub-md5-crypt
              
             # vi  /etc/grub.conf
           default=0                  
             timeout=50               
             splashimage=(hd0,0)/grub/splash.xpm.gz  
             password  --md5   dfdasdf34123!#@$!#@                        
             title  RH9.0         
             root   (hd0,2)               
             kernel  /Vmlinuz-2.4.20-8  ro  root=/LABEL=/
             initrd   /initrd-2.4.20-8.img        
             lock                          
             title   win2k            
             root  noverify  (hd0,0)         
             chainloader  +1                  
              lock
             title   win98         
             root  noverify  (hd1,0)         
             chainloader   +1                  
             lock
      (4)GRUB的命令行,菜单模式,编辑模式的操作(假如有口令先按P键)
            编辑模式:
              作用:用于修改菜单的选项
              热键:E键专进入
            命令行模式:
               作用:配置GRUB的选项
               热键:C键
               实例:启动LINUX
                 grub>root  (hdx,y)
                 grub>kernel   /Vmlinux-版本号 TO root=LABEL=/
                 grub>initrd    /initrd-版本号.img
                 grub>boot  (启动)
                 启动WINDOWS
                 grub>rootnoveify (hdx,y)
                 grub>chainloader  +1
                 grub>boot
           添加内核模块
               作用:通知内核加载某个内核模块
               热键:A键
(5)安装GRUB
假如在安装Linux时没有安装GRUB,能够用引导盘启动Linux系统,然后执行以下操作:
#rpm ?ivh grub-1.9.0-8.i386.rpm
(6)恢复GRUB
假如GRUB安装在MBR中被其他操作系统引导程式覆盖时,能够执行如下操作:
放入第一张安装引导盘,开始启动电脑:boot:linux rescue(启动linux的修复模式)
#grub
grub>setup  (hd0,0)
(7)恢复GRUB的配置文档
由于grub.conf配置的问题,能够采用以下方法进行恢复:
放入第一张安装引导盘,开始启动电脑:boot:linux rescue(启动linux的修复模式)
2)#mount  boot分区    装载点(假如没有boot分区则装载/分区)
3)#cd   boot分区的装载点/grub(进入boot分区装载点下grub目录)
4)#vi   grub.conf  (修改grub.conf恢复配置选项)
四、init 进程 (PID=0)
init进程的作用
系统初始化
系统运行级别
0:关机
1:单用户
2:多用户、不支持NFS
3:真正多用户
4:保留
5:X-WINDOWS
6:重启
转换:# init [0---6]
     注:(1)  shutdown
         功能:重启/关机
         格式:shutdown  [参数]  time [信息]
         参数:-r:重启
               -k:发送信息
               -c:取消shutdown的动作
               -h:关闭电脑(不关闭电源)
               -f:重启时使用fsck检查文档系统
               -F:重启时不检查文档
               Time:设定时间    hh:mm  某时某分
                                 +mm    当前时间往后几分钟
                                  Now    立即
实例:#shutdown  -r   now
        #shutdown  -r   +5
        #shutdown  -h   18:00
(2)reboot
  功能:重启系统
  实例:#reboot
inittab文档的分析
作用:配置init进程默认级别,配置init的动作
格式:# vi  /etc/inittab
Inittab文档由若干个记录构成,每条记录格式如下:
标识符:进行的级别,进行的动作,运行的程式
id : 3 :initdefault
si :    : sysinit : /etc/rc.d/rc.sysinit
10 : 0 :Wait :/etc/rc.d/rc  0
11 : 1:Wait :/etc/rc.d/rc  1
12 : 2 :Wait :/etc/rc.d/rc  2
13 : 3 :Wait :/etc/rc.d/rc  3
14 : 4 :Wait :/etc/rc.d/rc  4
15 : 5 :Wait :/etc/rc.d/rc  5
16 : 6 :Wait :/etc/rc.d/rc  6
             ctrl  : : ctrlaltdel : shutdown ?r now
Pw  : : powerwait : shutdown ?r +3
X   :5: wait :xllfer  图像界面,安装时默认
动作:
     Wait:在进入指定级别立即被执行,且INIT进程要等待该进程传来
     Once:进入到级别立即执行进程
     Boot:引导电脑时执行INIT不用等待结束
     Bootwait:引导电脑时执行INIT等待结束
     Initdefault:启动默认级别
     Respawn:终止进程
     Sysinit: 是INIT进程的第一个子进程(在boot、bootwati之前)
     ctrl+alt+del: 指按CTRL+ALT+DEL键时的动作
        4./etc/rc.d 目录说明
           iit.d目录:存放服务启动的脚本
           rc 文档:调用相应级别中运行目录的程式
           rc n (1?6):存放每个运行级别中要运行的程式(k*:关闭程式,s*:启动服务)
           rc.sysinit 文档:完成系统初始化:A、环境变量的配置
                                         B、配置系统的时钟
                                         C:加载键盘
                                         D:加载系统字体
                                         E:加载其他文档系统
                                         F:激活交换分区
                                         G:生成日志文档
                                         H:检查文档系统
          rc.local 文档:存放系统启动时的程式
五、用户登录和SHELL
用户登录
通过getty获取用户终端
#:代表终极用户
$:普通用户
用户登录命令:
su
功能:用来转换用户的工作环境
格式:su [用户名] 无用户名转换到ROOT用户工作环境口令为root口令  
实例:$ su
      passwd:root口令
exit(ctrl+d键)
功能:退出用户环境,一次只能退出一个
格式:exit
login
功能:注消用户 (只能在最初的用户环境)
logout
功能:退出用户环境直接注消用户
注:(1) 在/etc/目录创建nologin能够配置系统只允许root用户登录,而不允许普通用户登录
(2)禁止某个用户从本机登录能够修改用户的SHELL为nologin
   2.SHELL
(1)shell的定义:是用户和内核之间的接口程式
(2)shell的常用版本:BASH(linux用户的默认SHELL),CSH,BSH
    转换:直接输入shll名称
(3)shell的可执行文档
    Linux命令
(/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin)
    Shell内置命令(集成在SHEL文档中)
    应用程式
    SHELL脚本
(4)shell的功能
命令解释
SHELL编程
命令重定向
命令替换
命令管道
历史记录


喜欢本文,那就收藏到:

    Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪ViVi 365Key网摘 天极网摘 和讯网摘 博拉网 POCO网摘 添加到饭否 QQ书签 Digbuzz我挖网
相关评论  我也要评论
还没有关于此文章的相关评论!
  • 昵称: (为空则显示guest)
  • 评论分数: ★ ★ ★★★ ★★★★ ★★★★★
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
  • 导航
    赞助商
    文章类别
    订阅