发新帖我要提问
12
返回列表
打印

我在7楼的**,不是我写的

[复制链接]
楼主: los
手机看帖
扫描二维码
随时随地手机跟帖
21
brandnew| | 2008-2-16 11:42 | 只看该作者 回帖奖励 |倒序浏览

哈哈

告诉你一个事实,其实,学习linux,性价比不高。

使用特权

评论回复
22
los|  楼主 | 2008-2-16 20:17 | 只看该作者

天天都在学 linux

学习了多天linux,
对linux有了粗略的了解
linux的结构图大概如下
系统上电后,首先从ppcboot运行  然后运行内核
linux内核引导完毕,就试图mount一个root文件系统

请问main函数放在那里??
是放在内核里面,还是放在文件系统里面?
main函数的地址是如何确定的(也就是内核如何知道main函数的地址)??
还有内核如何知道文件系统的位置?

希望大家指点一下 , 谢谢

/                   nand flash                          
———————————————————------------------------
|                |               |                          |
|                |               |                          |
| ppcboot        |  内核         |   rootfs                   |
|                |               |             /bin           |
|                |               |             /dev           |
|                |               |             /etc           |
|____________  |________ ___|_        _      home   _  _
                                              /lib
                                              /mnt
                                              /proc
                                              /sbin
                                              /tmp
                                              /usr
                                              /var

使用特权

评论回复
23
brandnew| | 2008-2-17 00:12 | 只看该作者

请问main函数放在那里??
是放在内核里面,还是放在文件系统里面?
main函数的地址是如何确定的(也就是内核如何知道main函数的地址)??
还有内核如何知道文件系统的位置?

------------------------------------------------------------
假如没事,你可以看看内核启动过程。
linux没有main()函数
其c语言部分的核心过程,在源代码目录的init/main.c中的start_kernel()中,该函数完成了主要的初始化工作,加上根文件的挂载,第一个进程init的运行等。
而这个init进程在根文件系统中,所以必须要挂根文件系统。

此后init进程,再读点脚本,启动些其它的东西,那就是另外的部分的工作了。
当然start_kernel()之前,还有些汇编的工作,与具体的硬件相关,检测些cpu类型,machine类型等,位置自己找。

内核通过内核命令知道文件系统的位置。

其实个人学习linux,投入产出比,真的很低。

使用特权

评论回复
24
los|  楼主 | 2008-2-20 20:03 | 只看该作者

good website for studying Linux

http://hi.baidu.com/grdd/blog/category/linux%B7%BD%BB%AA%D4%B0/index/3

使用特权

评论回复
25
los|  楼主 | 2008-2-29 10:40 | 只看该作者

minicom

http://alioth.debian.org/frs/?group_id=30018

使用特权

评论回复
26
los|  楼主 | 2008-2-29 10:56 | 只看该作者

他妈的 我安装了红旗6.0没有自带Minicom

要我在网上找个 浪费了我一个上午



    +    ===== 一.Minicom介绍 =====
            
     +    Linux下的Minicom的功能与Windows下的超级终端功能相似,可以通过串口控制外部的硬件
     +    设备.适于在linux通过超级终端对嵌入式设备行管理.同样也可以使用minicom对外置Modem
     +    进行控制.
     +    
     +    ===== 二.Minicom的安装 =====
     +    
     +    ==== 1.rpm包方式 ====
     +    
     +    GTES 10,10.5,11版本都包含minicom包,你可以直接安装他们:
     +    <code>
     +    # rpm -ivh minicom-xxx.rpm
     +    </code>
     +    
     +    ==== 2.源码包方式 ====
     +    
     +    源码包下载地址:
     +    <code>
     +    http://alioth.debian.org/projects/minicom/
     +    </code>
     +    安装源码包:
     +    <code>
     +    # tar zxf minicom-2.2.tar.gz
     +    # cd minicom-2.2
     +    # ./configure
     +    # make
     +    # make install
     +    </code>
     +    
     +    ===== 三.Minicom的使用 =====
     +    
     +    ==== 1.界面介绍 ====
     +    
     +    第一次运行minicom,需要进行minicom的设置:
     +    <code>
     +    # minicom -s
     +    
     +                ┌─────[configuration]──────┐
     +                │ Filenames and paths      │
     +                │ File transfer protocols  │
     +                │ Serial port setup        │
     +                │ Modem and dialing        │
     +                │ Screen and keyboard      │
     +                │ Save setup as dfl        │
     +                │ Save setup as..          │
     +                │ Exit                    │
     +                │ Exit from Minicom        │
     +                └──────────────────────────┘
     +    </code>
     +    <serial port setup>
     +    <code>
     +    A — Serial Device : /dev/ttyS0
     +    
     +    B — lockfile Location : /var/lock
     +    
     +    C — Calling Program :
     +    
     +    D — Callout Program:
     +    
     +    E — Bps/par/Bits : 9600 8N1
     +    
     +    F — Hardware Flow Control : YES
     +    
     +    G — Software Flow Control : NO
     +    
     +    Change with setting?
     +    </code>
     +    将选项A的值设置为/dev/ttyS0 表示是串口1.
     +    将选项E的值设置为9600.
     +    
     +    
     +    初始化设置中可以设置默认上传/下载的目录,传输协议参数,串口波特率等.设置完成后,
     +    选择"Save setup as dfl",保存为默认设置.然后选择"Exit",按Ctrl-A,再按z,
     +    即可进入Minicom的主界面.
     +    
     +    <code>
     +    
     +    Welco┌───────────────────────────────────────────────────────────────────┐
     +        │                    Minicom Command Summary                      │
     +    OPTIO│                                                                  │
     +    Compi│          Commands can be called by CTRL-A <key>                  │
     +        │                                                                  │
     +    Press│              Main Functions                  Other Functions    │
     +        │                                                                  │
     +        │ Dialing directory..D  run script (Go)....G | Clear Screen.......C │
     +        │ Send files.........S  Receive files......R | cOnfigure Minicom..O │
     +        │ comm Parameters....P  Add linefeed.......A | Suspend minicom....J │
     +        │ Capture on/off.....L  Hangup.............H | eXit and reset.....X │
     +        │ send break.........F  initialize Modem...M | Quit with no reset.Q │
     +        │ Terminal settings..T  run Kermit.........K | Cursor key mode....I │
     +        │ lineWrap on/off....W  local Echo on/off..E | Help screen........Z │
     +        │                                            | scroll Back........B │
     +        │                                                                  │
     +        │      Select function or press Enter for none.                    │
     +        │                                                                  │
     +        │            Written by Miquel van Smoorenburg 1991-1995          │
     +        │            Some additions by Jukka Lahtinen 1997-2000            │
     +        │            i18n by Arnaldo Carvalho de Melo 1998                │
     +        └───────────────────────────────────────────────────────────────────┘
     +    CTRL-A Z for help | 38400 8N1 | NOR | Minicom 2.00.0 | VT102 |      Offline
     +    </code>
     +    可以按快捷键进入相应的菜单.
     +    
     +    ==== 2.示例 ====
     +    
     +    调试北电ALTEON 180E设备示例.
     +    <code>
     +    Welcome to minicom 2.00.0
     +    OPTIONS: History Buffer, F-key Macros, Search History Buffer, I18n
     +    Compiled on Mar 7 2005, 10:29:09.
     +    
     +    Press CTRL-A Z for help on special keys
     +    
     +    Enter password:
     +    Password incorrect.
     +    
     +    Enter password:
     +    System Information at 14:53:56 Fri Dec 15, 2006
     +    
     +    Alteon 180e
     +    sysName: 180e
     +    sysLocation:
     +    
     +    Switch is up 0 days, 0 hours, 8 minutes and 50 seconds.
     +    Last boot: 14:45:06 Fri Dec 15, 2006 (power cycle)
     +    MAC address: 00:60:cf:48:82:d0 IP (If 1) address: 0.0.0.0
     +    Hardware Revision: A
     +    Hardware Part No: E09_5B-B_7B-A
     +    Software Version 10.0.25-SSH (FLASH image1), active configuration.
     +    *****DNS Load Balancing*****
     +    ------------------------------------------------------------
     +    [Main Menu]
     +    info - Information Menu
     +    stats - Statistics Menu
     +    cfg - Configuration Menu
     +    oper - Operations Command Menu
     +    boot - Boot Options Menu
     +    maint - Maintenance Menu
     +    diff - Show pending config changes [global command]
     +    apply - Apply pending config changes [global command]
     +    save - Save updated config to FLASH [global command]
     +    revert - Revert pending or applied changes [global command]
     +    exit - Exit [global command, always available]
     +    </code>

使用特权

评论回复
27
los|  楼主 | 2008-3-5 23:24 | 只看该作者

good article 2

Lilo

    好了,要开始来搞定 boot loader 啰!第一个介绍的事较老牌的 lilo 这个玩意儿!他算是最标准的 Linux boot loader 啰!目前我的几部主机里面,用的也大部分都是他呢!Lilo 的设定与安装方面必需要分成两个步骤,分别是设定 /etc/lilo.conf 这个设定档,设定完毕之后,还必需要给他改写进去 MBR 或者是 Super block 才行!
     

        * 设定档 /etc/lilo.conf

          基本上, lilo 是加载 Linux 核心的重要开机数据的安装程序,他的参数设定档案就放在 /etc/lilo.conf 里头,那么我们来看一看里面有什么设定参数吧,基本上他的设定参数有点像底下这样,可以分为两部分,一个是整体的设定方面,一个则是每一个开机设定的核心档案:
           
          [root @test linux]# vi /etc/lilo.conf 
          # 第一部份,整体的设定部分
          prompt   <==强制出现 boot 的开机讯息啰! 
          Compact  <==可以整合一些读取的扇区,可以保持 map 较小,相当适合软盘开机时使用 
          delay=50 <==如果有多重开机的话,可以设定这个延迟时间,单位0.1秒 
          timeout=50 <==与 delay 有类似的关系!也是 0.1 秒,如果 5 秒内没有按键盘,直接以第一个 image 开机。 
          default=linux-2.4.18 <==如果开机的过程中,出现了boot之后,使用者没有动作,
                                    则以此设定的核心开机,与底下的label需对应 
          boot=/dev/hda         <==Lilo 的开机信息写入到 /dev/hda 这颗硬盘的 MBR 当中。 
          map=/boot/map         <==用来说明 local 主机的地图信息啰! 
          install=/boot/boot.b <==关于开机区的讯息(boot sector),不用理他没关系! 
          Linear                <==在较大容量的硬盘使用时,可以加入这一个参数试试看! 
          lba32                 <==这个东西也是在大容量的硬盘使用时候会需要的参数! 
          password=1234567      <==设定密码!如果为了安全起见,可以设定您的 lilo 密码哩! 
          message=/boot/message <==那个 LILO 的讯息就是在里面出现的啦!

          # 第二部分,个别的开机设定部分,一个 image 或 other 均代表一个开机设定!
          image=/boot/vmlinuz-2.4.7-10     <==核心档案啦! 
                  label=linux-2.4.7        <==请注意!label 前面以 [tab] 按键来作为分隔!
                                              这个字眼则是显示在 boot 里头挑选项目。 
                  initrd=/boot/initrd-2.4.7-10.img 
                  read-only              <==开机扇区挂载为只读!这是预设状况,实际在
                                              挂加载 Linux 系统时,会重新挂载成可写! 
                  root=/dev/hda1           <==挂载成 / 这个 root 目录的磁盘! 
          other=/dev/hdb1                  <==如果是『非 Linux 核心』就以 other 来设定
                                              开机的磁盘扇区! 
              label=Windows2k          <==同样的要有 label 来表示这个开机扇区的名称!
           
          注意一下上面那几个咚咚:
           
              o delay 与 timeout 的设定是 0.1 秒,所以 delay=50 表示延迟时间为 5 秒!
              o linear 与 lba32 通常用在 SCSI 或者是较大的硬盘,例如扇区超过 1024 磁道的硬盘,可以使用这个项目来除错!不过,如果是小于 8GB 的硬盘,这两个东西有没有设定就没有什么影响了!
              o default 需要设定成底下几个 image 或者是 other 的 label 才成!这个地方最常被忘记!因为常常会记得修改 label ,但是忘记跟着改变 default 的内容!此外,如果你想要修正开机预设的操作系统选项,在这里改啦!
              o password 的用途在于安全防护方面,不过有个困扰,就是『如果你的计算机因为不正常关机(如断电后重开)而在电源恢复的时候重新开机时,则会卡在这个阶段无法直接进入 Linux 系统』,因为你必须提供 password 才能继续的工作呀!
              o boot 显示的是开机的扇区选择! 这里也蛮重要的,如果你想要安装在 MBR 里面的话,如同上面的书写模式,就是写入 /dev/hda ,后面不要加上每个 partition 的代码!但是,如果你是想写入 Super Block ,例如我想要写入的是 hda5 这个 Logical 的 partition 时,那么这里就必需要改写为 /dev/hda5 啰!所以,您应该只要一看到这个 boot 后面接的内容,就会知道那个安装的扇区是 MBR 还是 Super Block 啰!
              o image 可以设定成多数个!如果你的 Linux 系统有多个核心档案的时候,例如我们刚刚编译完成的一个新的核心,然而你又不想丢掉旧核心,就可以设定成两个不同核心的开机系统啰!


          大致上就是这样吧!其它不明了是什么东西的选项,可以使用 man lilo.conf 来看看里头的设定!因为还有很多开机时后需要加载的参数可以来设定一番呢!

        * 以预设的 lilo.conf 新增一个开机档

          好啦!为了测试一下您是否已经知道了 lilo.conf 的设定方式,所以我们来做个实验吧!请在您的『实验主机』上面,不要在提供服务的主机上面完呦!否则死掉了不要怪我没警告您…我们先试图安装在 super block 上面好了!以下面为例,黄色字体的部分是经过我的修改之后的结果,您的 /etc/lilo.conf 应该会长的跟我的差不多才是!
           
          boot=/dev/hda1
          map=/boot/map
          vga=normal
          default=linux
          keytable=/boot/us.klt
          prompt
          nowarn
          timeout=100
          message=/boot/message
          menu-scheme=wb:bw:wb:bw
          image=/boot/vmlinuz
                  label=linux
                  root=/dev/hda1
                  initrd=/boot/initrd.img
                  append="devfs=mount"
                  read-only
          image=/boot/vmlinuz
                  label=failsafe
                  root=/dev/hda1
                  initrd=/boot/initrd.img
                  append="devfs=nomount failsafe"
                  read-only
          image=/boot/vmlinuz                 <==就给他新增加一个 label ,但是内容不变!
                  label=linux-test
                  root=/dev/hda1
                  initrd=/boot/initrd.img
                  append="devfs=mount"
                  read-only
           
          这样就设定好了!接着下来看一下怎么安装他吧!

        * 安装 lilo

          既然设定好了,自然就是要安装他啰!安装的方式很简单,直接输入 lilo 即可!
           
          [root @test root]# lilo
          Added linux *       <==有打星号的是『预设的开机设定档!』
          Added failsafe
          Added linux-test
           
          看到没有!要像上面这样才是安装成功呦!如果出现了错误的讯息,那么肯定是有地方没有安装好!这个时候请特别的再重新设定一次 /etc/lilo.conf 呢!有打星号的是『预设的开机设定档!』

          而如果您还要看看更多的讯息,那么就需要这样:
           
          [root @test root]# lilo -v
          LILO version 22.3.2, Copyright (C) 1992-1998 Werner Almesberger
          Development beyond version 21 Copyright (C) 1999-2002 John Coffman
          Released 11-Jul-2002 and compiled at 21:48:42 on Aug 13 2002.

          Reading boot sector from /dev/hda1
          Using MENU secondary loader
          Calling map_insert_data
          Mapping message file /boot/message -> message-text
          Calling map_insert_file

          Boot image: /boot/vmlinuz -> vmlinuz-2.4.19-16mdk
          Mapping RAM disk /boot/initrd.img -> initrd-2.4.19-16mdk.img
          Added linux *

          Boot image: /boot/vmlinuz -> vmlinuz-2.4.19-16mdk
          Mapping RAM disk /boot/initrd.img -> initrd-2.4.19-16mdk.img
          Added failsafe

          Boot image: /boot/vmlinuz -> vmlinuz-2.4.19-16mdk
          Mapping RAM disk /boot/initrd.img -> initrd-2.4.19-16mdk.img
          Added linux-test

          /boot/boot.0301 exists - no backup copy made.
          Writing boot sector.
           
          如果你需要更多的讯息,那么就使用『 lilo –v –v –v 』多一点 –v 就对啦!
        * 一些问题的解决之道

           

           
           
           
           
           

          好了! lilo 安装完成之后,总是会有一些问题会发生吧!那么如何来解决问题呢?嗯!可以看一下底下的一些解决之道:
           
              o 我要如何选择不同的开机设定档?开机的时候我只看的到 boot: 而已?

                开机之后,如果是以 lilo 来启动 kernel 时,那么他会出现 boot: 的字样,出现这个字样之后,马上按下 <tab> 按键,那么就会出现目前 lilo 所**的开机设定文件啰!然后在 boot 后面输入想要的开机档案,就可以啰!
              o 安装好了 Linux 之后,在开机的过程中却只出现『 LI 』就停止了!该如何是好?

                这个问题可能发生的原因是 Lilo 没有设定好,或者是由于 Linux 安装在非 /dev/hda ( MBR )的硬盘之中,解决的方法可以如下:
                   1. 用 Linux 光盘开机,然后在出现 boot: 处输入

                      linux root=/dev/hda1 (这个与你的 Linux 安装的 partition 有关)
                      顺利开机之后,以 vi 修改 /etc/lilo.conf 将
                      linear
                      这一行取消(如果没有这一行的话,那就在 lilo.conf 中加入吧!)然后执行
                      lilo
                      再取出光盘并重新开机试试看;
                   2.   进入 BIOS ,将硬盘的 mode 改成 LBA 试看看;
                   3. 将Linux往前面一点的扇区安装,例如你可能安装在 /etc/hdc1 ,那你可以重新安装 Linux 在 /dev/hda2 试看看
              o 安装Linux完成之后,却是出现 010101... 等数字在屏幕上,无法进入 Linux ...

                这个问题的发生很有可能是硬盘出了问题了!这个时候可以使用 fsck 来扫瞄啰!
                   1. 用软盘或者是光盘开机后,使用fsck这个硬盘修正软件扫瞄一下您的 root partition ,例如:fsck /dev/hda1
                   2. 进入 BIOS ,将硬盘的 mode 改成 LBA 试看看;
              o 我们知道 DOS 需要在第一颗硬盘的第一个扇区才能正常开机使用!那要是他并非在第一个扇区呢?例如当 DOS 系统在 /dev/hdb1 (第一条排线的 slave )?

                解决知道就是以 lilo 修正磁盘的配置啦!如下所示来修改 /etc/lilo.conf
                other=/dev/hdb1
                   label=DOS
                   map_drive=0x80
                   to=0x81
                   map_drive=0x81
                   to=0x80
                然后再执行 lilo 写入 MBR 当中!
              o 我不要玩 Linux 了,如何移除 lilo ?

                只要以 Windows 的开机片开机,然后以 Windows 系统的 fdisk 下达:
                fdisk /mbr
                就可以将 Lilo 自 MBR 当中移除啰!
              o 无法正常的进入 Lilo 怎么办?

                这的时候开机片就很重要啦!使用开机片,在出现 boot: 的时候,输入
                linux -s
                就可以进入啦!这里请特别留意!那个 linux 指的是 label 呢!就像刚刚我们有三个 label ,分别是 linux, linux-test 与 failsafe ,那么如果我要以 linux-test 这个开机设定文件的单人维护模式登入,就必需要改写成
                linux-test –s
                linux-test single
                请特别留意!! 

Grub

    grub 是较新的 boot loader 程序,他具有相当多的优点,这里不一一列举啦!无论如何, lilo 能做的, grub 几乎都可以做的到,包括选单、密码、指向等等的功能!不过, grub 比 lilo 要先进的几点是:

       1. 他可以让您在开机的时候『自行编辑与修改开机设定项目』,有点像是 bash 的指令模式;
       2. 他可以自动『动态寻找设定文件』,亦即他可以依据 /boot/grub/menu.lst 的设定而改变其设定!因此,修改设定只要改 /boot/grub/menu.lst 即可,不需要再重新安装 grub !

    很棒吧!不过,在设定底下的工作之前,请先确认您的 grub 这个套件已经安装上来来!如果还没有安装的话,那么先查阅一下 RPM 的安装方法再说!底下假设 grub 这个套件已经安装在您的主机上啰!

        * 设定档 /boot/grub/menu.lst

          Grub 的设定档也很简单,就是 /boot/grub/menu.lst 这个档案,请注意,那个 lst 是 L 的小写呢!如果有兴趣的话,可以使用 info grub 好好的去看一下他的所有功能,底下仅列出一些我们常用的功能与设定而已喔!
           
              o 关于硬盘的代号:

                在 grub 里面,有一点是比较让人觉得不适应的,那就是他的硬盘代号与 lilo 还有 Linux 传统的代号不一样~他的代号主要有点像这样:
                 
                      (hd0,0)


                hd 指的是 IDE 的硬盘,而里面的 0,0 代表什么呢?第一个 0 代表他是第一个 IDE 的 master ,而第二个 0 代表他是第一块 partition 的代号,所以呢,这个代号就是 hda1 啦!所以,我们可以得到底下这个对应表:
                 
                装置     
                Lilo
                    
                Grub
                IDE1 master     hda, hda1, hda2     (hd0), (hd0,0), (hd0,1)
                IDE1 slave     hdb, hdb1, hdb2     (hd1), (hd1,0), (hd1,1)
                IDE2 master      hdc, hdc1, hdc2     (hd2), (hd2,0), (hd2,1)
                IDE2 slave      hdd, hdd1, hdd2      (hd3), (hd3,0), (hd3,1)

                这里需要先**一下啰!


          好了,那么将我的 menu.lst 列出来一下吧先!
           
          [root @test root]# vi /boot/grub/menu.lst
          timeout 10        <==多久之后键盘没有动静,就直接以 default 的设定开机,这里是秒数!
          Color black/cyan yellow/cyan     <==设定颜色的参数
          i18n (hd0,0)/boot/grub/messages  <==设定 i18n 多国语系的讯息提示
          keytable (hd0,0)/boot/us.klt   <==设定键盘形式,通常使用美规的键盘即可!
          Default 0                        <==预设的开机选项,依照底下的排序,第一个为 0 !

          title linux                      <==这是第一个开机设定档,亦即排序为 0 号!
               kernel (hd0,0)/boot/vmlinuz root=/dev/hda1 devfs=mount
               initrd (hd0,0)/boot/initrd.img
                                           <==上面两个则是开机设定档的基本内容,分别是
                                              核心档案所在地与 Ramdisk 的设定内容!

          title failsafe                   <==这是第二个开机设定档,亦即排序为 1 号!
               kernel (hd0,0)/boot/vmlinuz root=/dev/hda1 devfs=nomount failsafe
               initrd (hd0,0)/boot/initrd.img

          title windows
               chainloader (hd1,0) +1
           
              o default 与 title 的计算方式:

                基本的说明已经在上表当中了,这里需要在说明的是关于 default 开机档的计算。如果今天我有四个开机设定档,那么 default 算的是什么呢?就是『排序』啦!假如我底下依序出现的设定档 title 分别是 linux, linux-test, windows, failsafe 的话,那么开机的时候, grub 的选单就会显示:
                   linux
                   linux-test
                   windows
                   failsafe
                其中,linux 就是 0 ,而 failsafe 就是 3 ,如果您要调整开机时后的选单顺序,就在 /boot/grub/menu.lst 修改一下他们的顺序即可!但是记得 default 要跟着变,因为他也是依据排序而变的呦!这点请不要忘记了?
              o title 内容的设定方式:

                基本上,如果是一般的硬盘环境中,我们仅需要两行就可以设定好 title 的内容了,分别是:
                 
                root   [开机根目录 / 所在的磁盘代号]
                kernel [开机档案的所在地完整档名] [root=/dev/硬盘代号]

                范例:
                root   (hd0,0)
                kernel /boot/vmlinuz-2.4.19-16mdk root=/dev/hda1

                设定上面就是这样而已!所以,开机完毕之后,请将您的 kernel 文件名称(完整档名)与开机的根目录所在的磁盘代号**一下,那么下次就可以手动设定开机设定项目呢!但如果是 windows 方面的设定时,那就直接使用 chainloader 这个项目即可,有点像这样:
                chainloader  [硬盘代号] +1

                范例:
                chainloader (hd1,0) +1
                  安装 grub 在系统中
        *

          要安装 grub 跟 /boot/grub/menu.lst 并没有相关性!因为刚刚我们就提过了, grub 为动态去搜寻设定文件的,所以写入 MBR 或 super block 时,并没有将 menu.lst 写入ㄋㄟ?好了,那我们就来安装看看吧!安装的方式主要也是分为安装在 MBR 与 super block 呢!底下我们就来谈谈这两种安装的方式:基本上的动作就是:
           
             1. 使用 root [磁盘代号] 选择开机根目录 / 所在磁盘代号;
             2. 使用 setup [磁盘代号] 选择 MBR 或 Super block 直接安装进去!
             3. 使用 quit 就可以离开 grub 了!
            
          [root @test root]# grub

          # 先安装在 Super Block 底下试看看:
          grub> root (hd0,0)      <==这里输入我要的 root 硬盘扇区!
           Filesystem type is ext2fs, partition type 0x83

          grub> setup (hd0,0)     <==实际安装上来!使用 setup 指令!
           Checking if "/boot/grub/stage1" exists... yes
           Checking if "/boot/grub/stage2" exists... yes
           Checking if "/boot/grub/e2fs_stage1_5" exists... yes
           Running "embed /boot/grub/e2fs_stage1_5 (hd0,0)"... failed (this is not fatal)
           Running "embed /boot/grub/e2fs_stage1_5 (hd0,0)"... failed (this is not fatal)
           Running "install /boot/grub/stage1 (hd0,0) /boot/grub/stage2 p /boot/grub/menu
          .lst "... succeeded
          Done.

          # 再安装在 MBR 试看看:
          grub> root (hd0,0)
           Filesystem type is ext2fs, partition type 0x83

          grub> setup (hd0)
           Checking if "/boot/grub/stage1" exists... yes
           Checking if "/boot/grub/stage2" exists... yes
           Checking if "/boot/grub/e2fs_stage1_5" exists... yes
           Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  17 sectors are embedded.
          succeeded
           Running "install /boot/grub/stage1 (hd0) (hd0)1+17 p (hd0,0)/boot/grub/stage2
          /boot/grub/menu.lst"... succeeded
          Done.
          grub> quit             <==离开 grub 啰!
           
          这样就安装进去啰!很方便吧!并不难吧!

        * 开机手动设定选项

          事实上,每次动手修改完 /boot/grub/menu.lst 就已经完成了 grub 的设定啰!因为他相当的聪明!但是,如果我设定错误怎么办?没关系!有很多的方法可以使用呢!如果您可以顺利的以硬盘进入 grub 画面,那么恭喜您,可以继续下面的行动了!但是如果您的 Linux 竟然无法顺利的开机了,也就是说,使用硬盘开不了机!那么也没有关系,别担心,就直接给他使用 CD 开机,然后在进入 grub 画面之后,再继续下面的动作!
           
              o 在 grub 画面下进行手动加入的动作:

                在 grub 画面中,通常画面的最下方都会显示一些基本的讯息,例如下方的 Mandrake 预设文字接口 grub 登入图标: 

使用特权

评论回复
28
los|  楼主 | 2008-3-11 11:30 | 只看该作者

good website for studying Linux



http://hi.baidu.com/grdd/blog/category/linux%B7%BD%BB%AA%D4%B0/index/3
 
 

使用特权

评论回复
29
high| | 2008-3-11 12:52 | 只看该作者

12345...在学linux啊.

用linux的浏览器上21ic是一件很不愉快的事情.好像侧边栏失效.

使用特权

评论回复
30
mmclyy| | 2008-3-13 21:58 | 只看该作者

向LZ表示祝贺

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则