电脑技术学习

FreeBSD连载(08):其他安装问题

dn001

其他安装问题

  安装系统是一个复杂的过程,原因之一就是个人计算机硬件种类繁多,可组合的方式也是多种多样,因此就会引起复 杂的安装问题。

  • 网络安装方式

  除了使用安装光盘来安装FreeBSD之外,还有其他几种安装介质可供选择,其中网络安装方式同样也是一种非 常方便的安装方式。

  如果使用者是直接连接到Internet上的,就不需要安装光盘,而只需要制作启动软盘(磁盘镜象文件同样可 以通过Internet下载),然后使用启动软盘就可以直接从Internet上安装FreeBSD系统,因此如果使 用者的本地网络与Internet有稳定且快速连接的时候,也可以选择网络安装方式。

  网络安装方式包括ftp、ftp passive、和NFS方式,需要根据安装服务器提供的服务方式来选择网 络安装方式。通常NFS方式更适合本地连接,用户自己设定的安装服务器才提供NFS安装服务(或者本地FreeBSD 爱好者之间也会相互共享资源),面向Internet的公共服务器通常提供更可靠的ftp服务,因此ftp安装方式更 为常见。而ftp安装方式和ftp passive安装方式的区别是ftp passive方式在下载文件时使用ft p的passive模式,以克服大多数防火墙对端口的限制,因此如果要安装的系统不是直接与Internet相连,而 通过防火墙连接到Internet,就需要使用ftp passive安装方式。

  使用网络安装方式时的一个重要问题是必须配置好网络界面,因此Sysinstall将在选择好安装介质之后、 选择安装组件之前,就提示用户配置网络界面。由于Sysinstall设置的网络界面为永久连接型的网络接口,如网卡 ,而另一些网络界面为要求预先连接的网络接口,如拨号连接的ppp0界面,不能直接通过Sysinstall设置,因 此不适合使用网络安装方式。

  上面为ftp安装方式的菜单,除了提供Internet上的多个现有FreeBSD的ftp安装站点之外,还 可以选择手工输入URL(第二项),由用户输入一个距离最近的安装服务器的ftp站点。这个站点可以由用户自己维护, 使得在一个网络中安装多台系统更为简易。

  如果网络连接比较慢,直接使用网络安装方式会由于网络速度的原因而造成安装过程不能正常进行。那么就可以先将 FreeBSD安装文件下载到本地硬盘上,再选择Dos安装介质或预先安装好的文件系统作安装介质,进行安装。

  当使用DOS基本分区作安装介质时,需要按照安装文件的原有目录结构,将安装文件复制到DOS分区中根目录下 的FreeBSD目录中。安装光盘tools目录中的setup.exe工具,能在DOS下用于使用安装光盘来设置D OS安装介质。这种情况一般只用于系统光驱型号太老,不为FreeBSD识别,或者要安装的系统没有光驱或网卡,因而 必须预先将安装文件拷贝到它的硬盘上。

  选择了这种安装方式,安装程序将询问FreeBSD安装文件位于哪个DOS分区中。

  无论安装系统是放置在DOS基本分区,还是以前安装好的FreeBSD分区中、光盘上,或者是放置在网络上的 NFS服务器上,都可以使用手工方式预先将这些文件系统安装到系统的目录树上,再选择File System安装介质 选项进行安装。当然这需要首先打开一个应急Shell进行操作。通常这种方式主要用于安装好系统之后的系统维护,而在 初始安装时用到的较少。

  此外,也可以使用软盘或磁带做安装介质,但实际使用中较为少见。

  • 升级系统

  可以在安装程序的主菜单中选择Upgrade方式进行系统升级。系统升级的好处是可以保留以前系统中的各种设 置,以及用户的配置信息和数据文件。然而,这种使用安装程序的升级方式并不是最佳的升级方法,因为FreeBSD是一 种极具活力的操作系统,而光盘等传统媒体的安装介质是静态的,使用这种方式升级系统并不能得到最新的系统。另一个原因 是FreeBSD的源代码是公开的,使用源代码进行升级也十分方便,并且发生危险丢失数据的风险更小。

  • 手工安装系统组件

  FreeBSD的安装软件由不同的组件组成,例如bin、manpages等。这些组件通常被分割为较小的文 件,以便它能被保存到软盘上,也能减少从网络下载时的可能会出现的网络故障。

  由于系统被分为不同的组件,很可能在系统安装过程中遗漏了某种非常有用的组件,或者由于偶然的原因,被某些组 件被破坏了。此时就需要在安装系统之后,再来安装这些组件。这可以使用安装程序/stand/sysinstall来 完成,然而手工进行安装这些组件却更为方便。

$ ls /cdrom/bin

CHECKSUM.MD5 bin.ao bin.be bin.bu bin.ck

TRANS.TBL bin.ap bin.bf bin.bv bin.cl

bin.aa bin.aq bin.bg bin.bw bin.cm

bin.ab bin.ar bin.bh bin.bx bin.cn

bin.ac bin.as bin.bi bin.by bin.co

bin.ad bin.at bin.bj bin.bz bin.cp

bin.ae bin.au bin.bk bin.ca bin.cq

bin.af bin.av bin.bl bin.cb bin.cr

bin.ag bin.aw bin.bm bin.cc bin.cs

bin.ah bin.ax bin.bn bin.cd bin.ct

bin.ai bin.ay bin.bo bin.ce bin.inf

bin.aj bin.az bin.bp bin.cf bin.mtree

bin.ak bin.ba bin.bq bin.cg install.sh

bin.al bin.bb bin.br bin.ch

bin.am bin.bc bin.bs bin.ci

bin.an bin.bd bin.bt bin.cj

  这些以bin开头,以两个字母为后缀的文件事实上是对一个使用tar和gzip打包压缩后的大文件进行分割得 到的,因此可以使用gzip和tar进行解开,并安装到合适的位置。这个目录中也提供了一个脚本程序install. sh,能自动进行这一步工作。如果使用者想手工重新安装某一组件,可以运行相应目录下的install.sh脚本程序 。例如,如果在初始安装时没有安装manpages组件(或者该组件被无意中破坏了),想要重新安装manpages 组件,可以运行:

  # /cdrom/manpages/install.sh

  注意:由于这样做会覆盖原有系统中的文件,主要是更改过的系统设置文件,因此这样安装某些系统相关的组件(例 如bin组件)就非常危险!除非必要,不要重新安装bin组件(包括使用Sysinstall程序)!

  以MD5为后缀的CHECKSUM.MD5是根据这些文件生成的校验文件,用于检查这些文件是否在传输过程中 出现错误。可以在一个安装好的FreeBSD系统下使用md5命令来生成文件的校验,与这个文件中保存的数据进行比较 ,如果校验数据一致,就说明文件没有在传输过程中出现问题。

  还有的组件,如X Free86组件没有被分割为小文件保存,是几个tar和gzip处理过的压缩文件,该目 录下同样提供了脚本程序install.sh,以便来进行安装。ports目录下的组件Ports Collecti on也是一个单独的压缩包。

  • 使用其他启动引导程序

  在个人计算机上安装FreeBSD系统,常常会遇到与其他操作系统共存的问题,一般情况下使用FreeBSD 的Boot Manager来管理多个操作系统。但在某些情况下使用者可能希望使用其他种类的引导程序,无论使用哪个 操作系统引导程序,都需要这些引导程序相互协作,而不发生冲突现象。

  对于同时使用FreeBSD与Linux共存的个人计算机,在使用FreeBSD Boot Manager 引导时,需要将Linux的引导程序LILO放在其自己分区的最前端(Super Block),而不能放到主引导区 中。FreeBSD Boot Manager可以直接启动Linux分区上的LILO程序。但如果使用者是将Lin ux安装在扩展分区上的逻辑分区上,(这是一种很糟糕的分区设置方式,极度增加了系统的不安全性,至少不应该将根文件 系统放置在逻辑分区上),就必须使用Linux LILO引导。因此就需要在FreeBSD安装时,安装BootMa nger选择None,而将LILO安装到主引导区,通过在Linux中编辑lilo.conf文件对FreeBSD 分区进行设置,更新LILO后,就可以通过LILO启动FreeBSD分区。建议使用Boot Manager来启动 Linux,因为Boot Manager不需要进行配置,使用起来最简单和方便。

  对于同时使用Windows NT的系统,如果使用FreeBSD Boot Manager引导,那么在F reeBSD Boot Manager的选择之后,会再有Windows NT的OS Loader的选择菜单,从 而需要进行两次选择。因此也可以使用Windows NT OS loader来引导FreeBSD系统,此时不能安 装Boot Manager,而应使用标准主引导区,此外,还需要FreeBSD基本分区的第一个扇区,以便OS L oader能用来启动FreeBSD。首先将激活分区设置为FreeBSD分区启动FreeBSD系统,使用dd命令 将FreeBSD分区的第一个扇区写到一个文件中(假设FreeBSD安装到了第三分区wd0s3中)

  # dd if=/dev/rwd0s3 of=bootsect.bsd bs=512

  然后将这个命名为bootsect.bsd的文件拷贝到NT启动分区的根目录中,如果NT启动分区(假设为第 一个分区wd0s1)为FAT文件系统,则可以在FreeBSD下拷贝。

  # mount -t msdos /dev/wd0s1 /mnt

  # cp bootsect.bsd /mnt/bootsect.bsd

  然后编辑C盘根目录下的boot.ini,增加一项c:bootsect.bsd="FreeBSD",然 后将启动分区更改为DOS的启动分区,则系统重起之后,在OS loader的启动菜单中就增加了一项启动FreeB SD的选择。

  注意,系统升级会导致第一个扇区的内容改变,因此需要及时更新启动扇区文件。

未完,待续。。。  

标签: