Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1719433
  • 博文数量: 177
  • 博客积分: 9416
  • 博客等级: 中将
  • 技术积分: 2513
  • 用 户 组: 普通用户
  • 注册时间: 2006-01-06 16:08
文章分类

全部博文(177)

文章存档

2013年(4)

2012年(13)

2011年(9)

2010年(71)

2009年(12)

2008年(11)

2007年(32)

2006年(25)

分类: BSD

2006-01-24 13:32:05

7.      从网上获取FreeBSD引导软盘

计算机启动时需要一些启动系统的指令。这被称为“引导”计算机。“引导”代码必须存储在计算机的引导设备上。也就是说,计算机将检查一系列引导设备来获取启动系统所需的代码。

硬盘和软盘驱动器是两个主要的引导设备,光驱和网卡也可以配置成系统的引导设备。一旦引导代码完成初始化计算机的工作就装载内核。内核是FreeBSD最终要的部分,建立硬件和软件之间的链接,包含所有的设备驱动,执行所有的可执行程序,控制所有的系统资源。

FreeBSD有一个包含引导信息,内核,设置/安装工具的软盘,这张软盘就是引导软盘。该软盘是作为磁盘镜像存储的,该镜像是引导软盘一个扇区接着一个扇区的拷贝。每个扇区的内容被拷贝到一张1.44兆的软盘,这样就保留了FreeBSD原来的格式和文件结构,因为一个跨平台拷贝的文件不会保留FreeBSD文件系统。传输该磁盘镜像到软盘时,使用的是 或者fdimage.exe,将DOS格式的软盘转换成FreeBSD格式的,可以引导,安装的软盘。

有两种方法获取引导盘,采用哪种方法视你所使用的操作系统而定。

获取文件:获取文件的最简单方法就是通过网页浏览器,或者FTP客户端,以及一张格式化的软盘,1.44M的软驱(因为磁盘镜像文件的大小小于1.44M)。启动浏览器或者ftp客户端,连接到

记住!:

*(大小写很重要!) FreeBSD将同一字母的大写和小写视为不同的字符,而WindowsDOS则不是。

引导软盘跟版本有关。你需要知道你想安装哪个版本的FreeBSD以便就进入相应的目录。所有可以下载的版本都以目录的形式列出。如果你在选择版本的时候有问题,请参阅“选择一个安装版本”一旦你选择了一个适当的版本,进入floppies目录,点击文件并下载到你的计算机。

警告:

如果屏幕上出现了任何文本信息,则这些信息不会被下载到你的硬盘,仅仅在屏幕上显示。你需要在boot.flp上点击右键并选择save link as将该连接保存到你的电脑上。

 

小心:

不要现在就把它保存到你的软盘上!将其保存到硬盘或者文件系统上。你应该用特殊的工具将其传导软盘上。

 

小心:

如果你使用ftp下载软盘镜像,确定你使用的是二进制的传输方式。如果你使用了ascii方式传输,文件将会非常的大,以至于在软盘上存不下,而且还会导致文件损坏。

UNIX方法:

如果你从FreeBSD系统或者其他的UNIX工作站来创建引导盘,你需要使用dd程序以及对软驱的写权限。

注意:

可能需要超级用户权限。

现在把软盘插入服务器软驱。如果你使用telnet连接,不要把软盘插到本地主机,因为它依然属于服务器。

在提示符后输入:

dd if=boot.flp of=/dev/fd0

软驱指示灯将会亮起,几分钟之后,你将会得到一条告诉你在多少时间内有多少字节写到软盘。如果你有任何关于dd的问题,请阅读ddman page

DOS方法:

首先从FreeBSD站点下载rawrite程序,可以使用Netscape或任何ftp客户端来下载,打开然后下载文件。要使用该程序,在DOS提示符后输入rawrite在提示后面输入源文件名: boot.flp并敲回车。在输入目标驱动器提示后面输入:a:并回车。然后屏幕上讲显示一系列的"Writing Sector XX"信息,同时软驱指示灯亮起。

Win95用户:

如果你使用的是Win95,你应该下载并使用fdimage.exe。可以在rawrite.exe所在的目录下找到。如果你在Win95上使用rawrite.exe,就必须按“alt+enter”来最大化DOS窗口。

P.S.当你回答了许多下载提示之后,确信Win95没有把它重命名为类似rawrite(3).exe的东西。

当数据全部写到软盘之后,你就拥有了一个FreeBSD安装/引导软盘。可以使用它来给你所有的机器安装FreeBSD

8.      准备发行版本集

本章节阐述如何准备一个定制的安装媒体。这些媒体包括:

·         软驱

·         MSDOS分区

·         NFS服务器

·         本地FTP站点

·         已有的FreeBSD分区

注意:

如果你不使用上述媒体,请跳过这部分。 (这些不是最方便的或者是推荐的安装方法,但是一定可用。)

每一种安装介质(fera:就是上面说的安装媒体,不过我个人认为安装介质比较好)在不同的目录中查找需要的文件。为了安装程序能够找到安装文件,你应该将它们拷到正确的目录下。

例如,你想从软盘安装最小版本,就需要/bin版本,比如/bin目录,将拷贝到软盘上。能够在CD-ROM或者FreeBSDFTP站点上找到/bin,在/pub/FreeBSD/2.2.6-RELEASE/目录下。/bin目录和所有的内容都需要拷贝到MS-DOS格式的软盘上,一张盘上大概能放6个文件,文件名为bin.aabin.ab等等。

重要:

你必须拷贝bin.inf到第一张软盘。

当你把它们拷到软盘之后,你应该可以用dir命令来查看。

所有文件拷到软盘之后,你就有一组FreeBSD安装软盘了。在安装过程中根据提示使用它们。

要想从DOS分区安装,你应该先把所有需要的文件拷到C:\FreeBSD\文件夹(fera:文件夹是DOSWindows的术语,目录是UNIX的术语,一般情况下可以通用,在此区分是为了强调WINDOWSUNIX的区别J)。

要从一个定制FTP站点安装,把所有文件拷贝到公众可以访问的目录下的FreeBSD/2.2.6-RELEASE/目录。

NFS安装方式使用网络共享文件系统,这是在网络上UNIX主机之间共享文件系统的方法。拷贝所需的目录到导出的文件系统的FreeBSD/2.2.6-RELEASE/目录fera:此处省略了一句话:“A directory will need to be exported on the distribution site”。因为我对NFS不熟悉,怕翻译错了。)

下面列出了你能安装的标准Distribution集和你必须从安装介质拷贝文件的目录

Developer

·         /bin

·         /doc

·         /manpages

·         /info

·         /proflibs

·         /src

·         /dict

X-Developer

·         /bin

·         /doc

·         /manpages

·         /info

·         /proflibs

·         /src

·         /dict

·         /XF8633

Kern-Developer

·         /bin

·         /doc

·         /manpages

·         /info

·         /proflibs

·         /src/sys

·         /dict

User

·         /bin

·         /doc

·         /manpages

·         /dict

X-User

·         /bin

·         /doc

·         /manpages

·         /dict

·         /XF8633

Minimal

·         /bin

9.      使用引导软盘和内核配置

这里你应当已经选择了一个-RELEASE来安装,并且已经决定使用那种介质来安装。 可以在网络上使用FTP或者NFS来安装,也可以使用已有的FreeBSDDOS分区,或者使用软盘来安装。所有的安装介质都需要引导盘,除了可以启动的CD-ROM安装方式。本部分阐述如何在不关心你所使用的安装介质的情况下使用引导软盘安装。

安装之前应该准备好安装介质(软盘、MSDOS、已有的UNIX分区、NFS或者FTP站点),阅读“Preparing Distribution Sets”章节,找到需要下载什么,将它们存放在哪里。

在你使用引导盘引导前,检查CMOS设置,应该使用软盘驱动器作为第一引导设备而不是硬盘驱动器。如果你安装的是服务器,可能不需要激活APM(自动电源管理)在退出CMOS设置前,检查IDE驱动器是否正确的安装识别。对于SCSI驱动器,应该使用SCSI工具来检查。

注意:

如果你不知道你机器上每个硬件的类型,就应该收集所有的相关文档,因为你一定会用到。你的计算机装箱单将为你提供最好的信息,它将为你提供你所安装硬件设备的类型。如果你已经安装了一个操作系统,你就能够通过各种方法获取信息。如果你安装了DOS,用msd;在Win95上,右键点击“我的电脑”,选择“属性”-〉“设备管理器”来获取信息。

把引导盘插入软驱,或者引导设备,重启计算机。

稍候将看到以下信息:

>> FreeBSD BOOT @ 0x10000: 639/31744 K of Memory
 
Usage: bios_drive:interface(unit,partition)kernel_name options
    bios_drive   0, 1, ...
    interface    fd, wd or sd
    unit         0, 1, ...
    partition    a, c, ...
    kernel_name  name of kernel, or ? for list of files in root directory
    options      -a (ask name) -C (cdrom) -c (userconfig) -D (dual consoles)
                 -d (debug early) -g (gdb) -h (serial console) -P (probe kbd)
                 -r (default root) -s (single user) -v (verbose)
Examples:
    1:sd(0,a)mykernel  boot `mykernel' on the first SCSI drive when one IDE
                       drive is present
    1:wd(2,a)          boot from the second (secondary master) IDE drive
    1:sd(0,a)?         list the files in the root directory on the specified
                       drive/unit/partition, and set the default bios_drive,
                       interface, unit and partition
    -cv                boot with the defaults, then run UserConfig to modify
                       hardware parameters (c), and print verbose messages (v)
 
Use ? for file list or press Enter for defaults
Boot:

这是引导提示。FreeBSD提供了输入不同于正常引导过程的参数,经常被用于进入单用户模式或者从另一个内核引导。参阅“便衣定制内核”以获取更多信息。

如果你没有任何输入,将会继续进行默认的引导过程。在这里我们使用默认的引导过程。

下一步将出现内核配置菜单:

Skip kernel configuration and continue with installation.
Start kernel configuration in Visual Mode
Start kernel configuration in CLI Mode (experts only)

这些选项让我们可以修改内核,扫描设备而不是使用默认的设置。 跳过这一步,表明接受所有默认的值,则转到安装的下一部分,而且将不再会有机会修改内核直到重启计算机。可以在两种模式下配置内核:CLI模式(命令行界面);可视模式(菜单驱动界面)。模式是最容易使用和理解的。

选择“Start kernel configuration in Visual Mode”。在选择之前,我们需要对IRQ和端口以及设备有一个基础的了解。

这里你不需要知道太多,只需要知道每个硬件设备的端口以及IRQ。这也是你需要每个硬件设备的文档的原因。一些设备可以设置IRQ Port,在你安装之前就应该设置好。可能需要跳线设置,或者使用设备制造商提供的配置工具来设置。PCI设备不需要由你在配置内核过程中来设置。这个工具仅仅影响ISA设备。

一旦你知道每个设备在你计算机上的IRQ和端口,就可以进入可视模式内核配置。

--Active-Drivers-------------------------------------21 Conflicts---------Dev-----IRQ----Port
Storage:               (Collapsed)
Network:               (Collapsed)
Communication:         (Collapsed)
Input:                 (Collapsed)
Multimedia:
PCI:                   (Collapsed)
Miscellaneous: 
--Inactive Drivers----------------------------------------------------------Dev--------------
Storage:               
Network:               
Communication:         (Collapsed)
Input:                 (Collapsed)
Multimedia:
PCI:                   
Miscellaneous:
---------------------------------------------------------------------------------------------

该屏幕让你能够修改或者移除从引导过程中扫描到的ISA设备。在引导时FreeBSD检测每个它知道的设备 ,所有的“活动设备”都将被检测到,所有被移除得设备将被移到“停止设备”部分,并不作任何检测。如果你删除了某个需要的设备,你可以到“停止设备”部分去恢复。

在屏幕的顶部可以看到21个冲突,这有点费解,因为实际上没有21个物理上的冲突。这仅仅是潜在的冲突,FreeBSD告诉我们如果它要检测的所有设备都存在,则将有21个冲突。FreeBSD被设置成检测所有它知道的设备并在通用的IRQ和端口查找它们。因为很多设备都能在通用IRQ上被找到,因此FreeBSD报告一个潜在冲突。例如,FreeBSD在同一个地址上检测一些不同的网卡,由于你知有一个网卡,IRQ冲突实际上不存在。

现在我们的工作时浏览设备驱动器不同的部分,使不在我们系统中的硬件失效或者删除它们。对于每个的确属于我们系统的设备,需要保证IRQ和端口值正确。

不一定非要删除所有不使用的设备,因为FreeBSD检测但是不能找到它们,就会忽略它们。然而,删除不属于我们系统的额外设备是明智的,因为可能它们有很长的超时时间,也就是说, FreeBSD需要等待很长的时间来确保它们确实不存在,因此,删掉它们将加速引导进程。

大多数情况下,你需要做的一切就是改变一小部分设备的设置,删除一两个设备来加速引导过程。例如,在我的系统中有两个SCSI驱动器,一个NE2000网卡(IRQ 10),一个PS/2鼠标。我必须删掉IDE驱动器,修改NE2000驱动为IRQ 10,从禁用列表中找到PS/2鼠标并启用。

在这里依然显示了18个冲突,然而,在我的机器上没有冲突的设备,因此我可以忽略这些,继续安装。我已经解决了我机器上实际的设备冲突。如果在解决了冲突问题之后问题依然存在,你可以试试从内核配置菜单中删除所有额外的设备,然后检查是否存在你没有注意到的冲突。

如果你争取地删除了所有额外的设备,并正确地设置了剩余设备的IRQ和端口,潜在冲突就不会再出现,除了PS/2鼠标。如果还有任何剩余的冲突,那就是真正的冲突。任何真正的冲突都将导致冲突双方无法正常工作。如果你通过删除所有的额外设备消除了全部潜在的冲突,你必须把这个讨厌的设备移到另一个IRQ或者端口(依赖于冲突在哪里)来避免实际的冲突。

记住这些,我们开始规划存储:在高亮显示的存储部分上敲回车展开树,应该列出不少SCSI和磁盘控制器。这些包括了从CD-ROM到磁带设备到软盘等所有的磁盘,依字母顺序排列。这些仅仅是ISA设备,PCI设备由安装程序自动操作。

以下是前四个:

--Active-Drivers----------------------------21 Conflicts---------Dev-----IRQ----Port
Adaptec 154x SCSI Controller                  CONF           aha0           0x330
Adaptec 152x SCSI Controller                                 aic0    11      0x340
Buslogic         SCSI Controller              CONF           bt0            0x330
Floppy Disk Controller                                       fdc0     6     0x3f0

上述总线控制器和适配控制器因为试图使用同一个端口而存在冲突,将其中的一个删掉,或者将其一改到另一个未用的端口来消除冲突。仅仅改变FreeBSD查找的端口解决不了问题,除非该端口确实是该设备所设置的。如果SCSI控制器和网卡都被设置在0x330端口,其一就必须修改。仅仅让FreeBSD到另一个地方查找SCSI控制器好像能解决该问题,但这仅仅在误导FreeBSD并隐藏两个设备的冲突的情况下才能成功。冲突的IRQDMA需要在物理设备上进行修改,使用跳线或者制造商提供的配置工具来进行修改。在配置菜单中FreeBSD需要被指向正确查找端口的地方。

Dev”列出了你将在FreeBSD中引用的硬件设备的文件名,是实际设备驱动的名字。所有这些设备存放在/dev目录。因此访问软驱你应该使用/dev/fdc0。然而,你通常不访问设备控制器,而是它们控制的设备。参考“访问软盘”。

系统中没有SCSI设备,就删掉所有的SCSI控制器,对于IDE设备也一样。仅仅留下在你系统中实际存在的设备。如果你删掉了一个你需要的设备,在“失效驱动”中相应设备上敲TAB键就可以重新得到。

要改变一个设备的端口或者IRQ值,将高亮条至于该设备上,敲回车。然后在屏幕底部弹出一个对话框,在这个框里可以修改端口地址、IRQ号、标志以及内存地址。端口地址是16进制数。如果在你的文档里显示端口地址为330,则可能是0x330。使用TAB键在各字段间移动光标,敲q来保存修改并退出。你也可以总是先回到上一个屏幕然后在退出内核配置编辑器时报存修改。

当你最终完成,潜在的冲突依然可能存在,但你已经正确配置所有的东西,不再有实际的冲突了。

PS/2鼠标用户:

如果你使用PS/2鼠标,将会与控制台冲突,显示两个冲突。这是正常的。

确保所有的东西都正确,然后敲q来保存改动,继续下一步安装。一旦你进行下一步,将不会有机会来修改设备,除非你重启主机。

阅读(2519) | 评论(3) | 转发(0) |
给主人留下些什么吧!~~