OpenBSD 3.6 安装指南(简体中文译本)下

原创 2005年04月25日 09:59:00
4.5.3 - 设置系统的主机名

现在你必须设置一下主机名. 这个值, 连同 DNS 域名(specified below), 会被存放在 /etc/myname, 这个文件会在启动时用来设置主机名. 如果你不设置系统的域名, 系统就会使用默认的 'my.domain' .

设置这个名字很重要, 因为当系统安装后第一次启动生成系统密钥时会被用到. 不论网络有没有被配置好,密钥都会被生成.

  Enter system hostname (short form, e.g. 'foo'): puffy

4.5.4 - 配置网络

现在到配置你的网络了. 如果你打算做一个 FTP 或者 NFS 的基本安装那必须要配置网络, NFS的安装需要以你输入的信息为基础. 这里就是一个安装过程中的网络配置的例子.

  Configure the network? [yes] Enter
  Available interfaces are: fxp0.
  Which one do you wish to initialize? (or 'done') [fxp0] Enter
  Symbolic (host) name for fxp0? [puffy] Enter
  The default media for fxp0 is
          media: Ethernet autoselect (100baseTX full-duplex)
  Do you want to change the default media? [no] Enter
  IP address for fxp0? (or 'dhcp') 199.185.137.55
  Netmask? [255.255.255.0] Enter
  Done - no available interfaces found.
  DNS domain name? (e.g. 'bar.com') [my.domain] example.com
  DNS nameserver? (IP address or 'none') [none] 199.185.137.1
  Use the nameserver now? [yes] Enter
  Default route? (IP address, 'dhcp' or 'none') 199.185.137.128
  add net default: gateway 199.185.137.128
  Edit hosts with ed? [no] Enter
  Do you want to do any manual network configuration? [no] Enter

在上面这个例子中, 我们用了静态 IP 地址. 需要指出的是, 你可以在很多平台上使用 "dhcp"  (除了 Alpha), 如果你的环境支持的话. 如果使用 DHCP, 大多数信息会由远端的 DHCP 服务器获取; 并会要求你确认信息. 这里又是一个安装过程中配置网络的例子, 这次是用 DHCP:

  Configure the network? [yes] Enter
  Available interfaces are: fxp0.
  Which one do you wish to initialize? (or 'done') [fxp0] Enter
  Symbolic (host) name for fxp0? [puffy] Enter
  The default media for fxp0 is
          media: Ethernet autoselect (100baseTX full-duplex)
  Do you want to change the default media? [no] Enter
  IP address for fxp0? (or 'dhcp') dhcp
  Issuing hostname-associated DHCP request for fxp0.
  Sending on   Socket/fallback/fallback-net
  DHCPDISCOVER on fxp0 to 255.255.255.255 port 67 interval 1
  DHCPOFFER from 199.185.137.128
  DHCPREQUEST on fxp0 to 255.255.255.255 port 67
  DHCPACK from 199.185.137.128
  New Network Number: 199.185.137.0
  New Broadcast Address: 199.185.137.255
  bound to 199.185.137.55 -- renewal in 43200 seconds.
  Done - no available interfaces found.
  DNS domain name? (e.g. 'bar.com') [example.org] Enter
  DNS nameserver? (IP address or 'none') [199.185.137.1] Enter
  Use the nameserver now? [yes] Enter
  Default route? (IP address, 'dhcp' or 'none') [199.185.137.128] Enter
  Edit hosts with ed? [no] Enter
  Do you want to do any manual network configuration? [no] Enter

注意: 安装的时候用 DHCP 方式来配置单个接口是很简单的. 如果你想用 DHCP 来配置多个接口那你会碰到很多错误. 你必须在安装后手工配置额外的接口.

现在,我们输入一下根用户的口令t:

Password for root account? (will not echo) pAssWOrd
Password for root account? (again) pAssWOrd

记得使用一个安全点的口令. 你也可以在启动后用 passwd(1) 建立新的口令:

    The new password should be at least six characters long and not purely
    alphabetic.  Its total length must be less than _PASSWORD_LEN (currently
    128 characters).  A mixture of both lower and uppercase letters, numbers,
    and meta-characters is encouraged.

4.5.5 - 选择安装媒介

网络建立好之后, 安装脚本会给你一个手工调整配置的机会. 你建立的文件系统会被挂载根用户的口令也会被要求输入. 这样你的硬盘就能准备好安装 OpenBSD 的软件包套件了.

下面,你要挑选一下安装媒介. 选项都被列出来了.

  You will now specify the location and names of the install sets you want to
  load. You will be able to repeat this step until all of your sets have been
  successfully loaded. If you are not sure what sets to install, refer to the
  installation notes for details on the contents of each.
 
  Sets can be located on a (m)ounted filesystem; a (c)drom, (d)isk or (t)ape
  device; or a (f)tp, (n)fs or (h)ttp server.
  Where are the install sets? c
  Available CD-ROMs are: cd0.

在这里我们用 CD-ROM 安装. 会有一个被系统识别为 CD-ROM 的设备列表被显示出来. 大多数人只有一个. 如果你有很多个那就选你哟给你来安装 OpenBSD 的那个.

注意: 所有可用的源码安装方式都会被列出来, 但不是所有的方式都能在你的机器上工作的. 比如. "(n)fs" 就被列出来了 但是不是所有的平台都支持 NFS 安装的. 如果你选了一种不可行的方式, 你会收到一条错误信息然后会被要求重新选择安装方式.

  Available CD-ROMs are: cd0.
  Which one contains the install media? (or 'done') [cd0] Enter

  Pathname to the sets?  (or 'done') [3.6/i386] Enter

这里,你要设定一下安装文件所在的文件夹的位置, 官方 CD-ROM 上的位置是 3.6/i386/ .
4.5.6 - 选择安装套件.

现在就是选择你要安装的软件套件的时候了. 在后面一段中你能看到对这些包的描述. 被安装程序所找到的文件会被显示在屏幕上. 你的工作就是确定哪些文件是你需要的. 非 X 的包默认被选中; 然而有人需要限制包的数量来运行基本的 OpenBSD 系统, 那只要选 base36.tgz, etc36.tgz 和 bsd.其他人或许想要安装所有的软件包套件.下面这个例子就是完全安装.

  The following sets are available. Enter a filename, 'all' to select
  all the sets, or 'done'. You may de-select a set by prepending a '-'
  to its name.

          [X] bsd
          [X] bsd.rd
          [ ] bsd.mp
          [X] base36.tgz
          [X] etc36.tgz
          [X] misc36.tgz
          [X] comp36.tgz
          [X] man36.tgz
          [X] game36.tgz
          [ ] xbase36.tgz
          [ ] xetc36.tgz
          [ ] xshare36.tgz
          [ ] xfont36.tgz
          [ ] xserv36.tgz

  File Name? (or 'done') [bsd.mp] all

  The following sets are available. Enter a filename, 'all' to select
  all the sets, or 'done'. You may de-select a set by prepending a '-'
  to its name.

          [X] bsd
          [X] bsd.rd
          [X] bsd.mp
          [X] base36.tgz
          [X] etc36.tgz
          [X] misc36.tgz
          [X] comp36.tgz
          [X] man36.tgz
          [X] game36.tgz
          [X] xbase36.tgz
          [X] xetc36.tgz
          [X] xshare36.tgz
          [X] xfont36.tgz
          [X] xserv36.tgz

在这你能发挥一下你的才能-- -x* 会移除所有 X 部件, 如果你改变主意的话. 在这个例子中, 我们要案装所有的套件. 即使系统不会用到所有的套件, 我们还是推荐开启或者安装所有的套件. 这里有更多的选择细节.

一旦你成功选定了你要的的套件, 你会看到提示问你要不要解压并安装这些套件.一条显示出来的进程栏会告诉你安装信息以及需要消耗多少时间. 安装时间的长短取决于你安装 OpenBSD 的机器如何, 安装套件的多寡, 安装源的速度如何. 这个过程从十几分钟到几小时不等.

  File Name? (or 'done') [done] Enter
  Ready to install sets? [yes] Enter
  Getting bsd ...
  100% |**************************************************|  5232 KB    00:08    
  Getting bsd.rd ...
  100% |**************************************************|  4614 KB    00:02    
  Getting bsd.mp ...
  100% |**************************************************|  5285 KB    00:03    
  Getting base36.tgz ...
  100% |**************************************************| 31396 KB    00:22    
  Getting etc36.tgz ...
  100% |**************************************************|  1655 KB    00:01    
  Getting misc36.tgz ...
  100% |**************************************************|  2193 KB    00:01    
  Getting comp36.tgz ...
  100% |**************************************************| 18232 KB    00:15    
  Getting man36.tgz ...
  100% |**************************************************|  6792 KB    00:05    
  Getting game36.tgz ...
  100% |**************************************************|  2536 KB    00:01    
  Getting xbase36.tgz ...
  100% |**************************************************| 10121 KB    00:07    
  Getting xetc36.tgz ...
  100% |**************************************************|   430 KB    00:00    
  Getting xshare36.tgz ...
  100% |**************************************************|  1888 KB    00:02    
  Getting xfont36.tgz ...
  100% |**************************************************| 31742 KB    00:22    
  Getting xserv36.tgz ...
  100% |**************************************************| 15460 KB    00:11    

  Sets can be located on a (m)ounted filesystem; a (c)drom, (d)isk or (t)ape
  device; or a (f)tp, (n)fs or (h)ttp server.
  Where are the install sets? (or 'done') [done] Enter

在这里你能从其它源添加想要的额外的包(包括自定义的包套件) , 或者当你已经安装了你所要的所有包套件,那就敲击 'done' .
4.5.7 - 打包收工
下面你会被问到一些有关设定你刚装好的系统的问题.首先是 sshd(8) 要不要在系统启动的时候开启. 通常你都是希望 sshd(8) 运行的, 但是有时你不打算这样做. 如果你的应用软件对于 sshd(8) 没有依赖, 在理论上不运行它还是有一点安全优势的.

  Started sshd(8) by default? [yes] y

你会被问到要不要在这个系统上运行 X . 如果你回答 'Y', /etc/sysctl.conf 就会被修改加入 machdep.allowaperture=1 或者 machdep.allowaperture=2, 是加入哪条那要看你使用什么硬件平台.在有些平台上这个问题不会被问到.

  Do you expect to run the X Window System? [yes] y

下面你会被问到是否要用一个串级的控制台, 而不是一个标准的显示器和键盘. 如果你选 "yes" 并且回答了其它几个简单的问题, /etc/boot.conf 和 /etc/ttys 会根据你的情况被修改. 大多数人会选择默认选项-- no.

  Change the default console to com0? [no] Enter

你最后一个任务就是填写一下时区. 这取决于你的机器的所在地, 这里或许会有数个等同的适用的答案. 下面这个例子中, 我们选择 US/Eastern, 同样也可以用 EST5EDT 或者 US/Michigan 和其他等同的选项.敲击键盘 ? 提示符会指导你作出选择.

  Saving configuration files......done.
  Generating initial host.random file ......done.
  What timezone are you in? ('?' for list) [US/Pacific] ?
  Africa/      Chile/       GB-Eire      Israel       NZ-CHAT      Turkey
  America/     Cuba         GMT          Jamaica      Navajo       UCT
  Antarctica/  EET          GMT+0        Japan        PRC          US/
  Arctic/      EST          GMT-0        Kwajalein    PST8PDT      UTC
  Asia/        EST5EDT      GMT0         Libya        Pacific/     Universal
  Atlantic/    Egypt        Greenwich    MET          Poland       W-SU
  Australia/   Eire         HST          MST          Portugal     WET
  Brazil/      Etc/         Hongkong     MST7MDT      ROC          Zulu
  CET          Europe/      Iceland      Mexico/      ROK          posix/
  CST6CDT      Factory      Indian/      Mideast/     Singapore    posixrules
  Canada/      GB           Iran         NZ           SystemV/     right/
  What timezone are you in? ('?' for list) [US/Pacific] US
  What sub-timezone of 'US' are you in? ('?' for list) ?
  Alaska          Central         Hawaii          Mountain        Samoa
  Aleutian        East-Indiana    Indiana-Starke  Pacific
  Arizona         Eastern         Michigan        Pacific-New
  Select a sub-timezone of 'US' ('?' for list): Eastern
  Setting local timezone to 'US/Eastern'...done.

如果你不确定精确的时间, 你可能会希望读一下这个.

最后一步就是为系统建立 /dev 目录 (在一些机器上可能会比较耗时间, 特别是当你的 RAM 很小的时候), 并且安装启动区段.

  Making all device nodes...done.
  Installing boot block...
  boot: /mnt/boot
  proto: /usr/mdec/biosboot
  device: /dev/rwd0c
  /usr/mdec/biosboot: entry point 0
  proto bootblock size 512
  /mnt/boot is 3 blocks x 16384 bytes
  fs block shift 2; part offset 3069360; inode block 152, offset 4136
  using MBR partition 1: type 166 (0xa6) offset 3069360 (0x2ed5b0)
  done.

  CONGRATULATIONS! Your OpenBSD install has been successfully completed!
  To boot the new system, enter halt at the command prompt. Once the
  system has halted, reset the machine and boot from the disk.
  # halt
  syncing disks... done

  The operating system has halted.
  Please press any key to reboot.

OpenBSD 已经在你的机器上装好并等待第一次启动啦, 你只要...

在你重启前
现在, 你的系统已经准备好重启并开始配置服务了. 然而,在这之前, 查看一下勘误表来检查有没有会有一些对你有影响的错误还是比较明智的选择.
你重启之后

在你安装好系统后要阅读的第一样东西就是 afterboot(8).

你也可以在下面这些很有用的连接里找找看:

    * Adding users in OpenBSD
    * Initial Network Setup
    * Man Pages of popular/useful commands
    * OpenBSD man pages on the Web
    * The OpenBSD Ports and Packages system for installing software, as well as here and here

最后一件事...
 OpenBSD 开发小组希望你发送一份 dmesg. 所有的开发人员,还有所有的用户,都会感谢你的.

4.6 - 安装需要那些文件?

一次完整的 OpenBSD 安装可以分解成一定数量的独立软件包套件. 不是所有的应用都需要所有的包套件的的. 这是对每个包的描述:

    * bsd - 这是内核,一定要的
    * bsd.mp - 多处理器内核 (SMP)  (只用于某些平台)
    * bsd.rd - RAM 磁碟内核
    * base36.tgz - 包含了所需的基本 OpenBSD 系统
    * etc36.tgz - 包含了所有需要的 /etc 里的文件
    * comp36.tgz - 包含了编译器和它的工具, 头文件 和库文件. 推荐使用
    * man36.tgz - 包含了man页 推荐使用
    * misc36.tgz - Contains misc info, setup documentation
    * game36.tgz - Contains the games for OpenBSD
    * xbase36.tgz - 包含了基本 X11 安装
    * xetc36.tgz - 包含了 /etc/X11 和 /etc/fonts 配置文件
    * xfont36.tgz - 包含了 X11 的字体服务器和字体
    * xserv36.tgz - 包含了 X11 的X 服务器
    * xshare36.tgz - 包含了 X 的 man 页, 本地设置,等等

 etc36.tgz 和 xetc36.tgz 套件不作为升级安装的部分, 只在完全安装中用到, 所以你做的任何定制都会丢失. 你必须通过手动修改来升级你的 /etc, /dev 和 /var 文件夹.

4.7 - 安装 OpenBSD 需要多少空间 ?

下面讲的是安装一个完整系统所要的最小空间. 这个大小包括了足够大的能容许你运行一个连到互联网上的 home 系统所需的额外空间.

    * 这里都是最小的值.
    * 如果你打算安装很多第三方的软件, 把你的 /usr 分区设得大一点! 起码三倍于这些值!
    * 如果是一个要处理大量 email 或者网页(个子存放于 /var/mail 和 /var/www) 你要把你的 /var 分区留大一点,或者把它们放到独立的分区.
    * 如果是一个多用湖系统那会生成很多日志, 你仍然要把你的 /var 分区留得大一点 (/var/log).
    * 如果你打算用源代码重新编译内核或者系统, 你要把 /usr 分区留大点, 起码要比下面的大 2G .

As you read this, keep in mind that /usr and /usr/X11R6 are usually both parts of the same filesystem, that is, /usr, as there is no big advantage to making them into separate filesystems.


SYSTEM          /       /usr    /var    /usr/X11R6
alpha           80M     250M    25M     140M
hp300           80M     250M    25M     140M
hppa           100M     200M    25M     120M
i386            60M     250M    25M     140M
mac68k          80M     250M    25M     100M
macppc          80M     250M    25M     140M
mvme68k         80M     250M    25M     100M
sparc           80M     250M    25M     120M
sparc64         80M     250M    25M     100M
vax            100M     200M    25M     120M

另外, 建议使用 /tmp 分区.  /tmp 分区用于编译 ports 的软件,  所以它需要多大空间取决于你要派它作多大用场. 50M 对答多数人够了, 但是一些大型应用软件会需要 100M 或更多的 /tmp 空间.

在你用 disklabel 进行编辑的时候, 你可以只给你的系统选一个 'a' (住文件系统) 和 'b' (swap) .  你在 disklabel设的 'a' 将会是你的根分区, 它会包含了三个主要的文件夹 (/, /usr, and /var) 还会留一定的空间给 /tmp. 你设定的 'b' 分区会自动得变成系统里的交换分区 -- 我们建议最小要分给它 32MB 但是如果你的空间有余那至少要给它 64MB. 如果你的空间还有很多,拿给它 256MB, 甚至 512MB.

交换分区是用来存放系统核心备份以防发生崩溃. 如果你考虑过这个因素, 你的交换分区就改比你的主内存更大一些. 注意,在重启的时候, savecore(8) 会把交换分区里的东西放到 /var/crash , 如果你觉得这样做很有必要, 你的 /var 应该有足够大的空间来存放这些备份文件.

使用独立的文件系统有很多好处, 要比只使用一个或两个文件系统强:

    * 安全: 你可以把一些文件系统标记为 'nosuid', 'nodev', 'noexec', 'readonly',等. 事实上只要你建立了上述分区安装程序会自动为你做这些事的.
    * 稳定性: 一个用户,或者一个糟糕的程序, 当他们有写的权限的后他们会弄得文件系统里都是垃圾. 你的一个危险的程序, 如果实在另一个文件系统运行,就不会干扰其他文件系统.
    * 速度: 一个文件系统如果频繁读写很容易产生碎片. (幸运的是, OpenBSD 使用的 ffs 文件系统, 不容易产生大量的碎片.)
    * 健壮性: 如果你的一个区发生了问题那么其它的区是不会有问题的.
    * 大小: 许多机器对启动ROM加载内核的磁碟有一定的限制 . 有时有, 这种限制可能不大 ( 对老的486机器回是 504M ), 或者, 会能更大一些 (比如, 在i386的机器上会是 2G, 8G, 或者 128G ). As the kernel can end up anywhere within the root partition, the entire root partition should be within this area. 想要获得更多详情, 请参见这里的章节. 一个好的建议可能会是把你的 / 分区控制在 2G 以下, 除非你很了解你的机器 (很特殊的机器) 并且能处理这些问题 .

一些对分区作的考虑:

    * 如果你第一次是想做一个实验型的系统, 在你还不知道到底需要如何分配空间时,建立一块很大的 / 分区和交换分区会比较容易. 但是这样做你会损失一些 OpenBSD 默认的安全特性 因为这些特性需要独立的 /, /tmp, /var, /usr和 /home 分区.
    * 一个连到互联网上的系统或者为了防范恶意入侵需要一个独立的 /var (或者还需要一个独立的 /var/log) 分区来做记录.
    * 留个 /home 分区是个很不错的主意. 想试试新版本的操作系统? 其它的文件会被擦除和重新载入, 但是你的 /home 分区不需要变动. 不过记得留一份你的配置文件的附件!
    * 如果你的一个独立分区上有很多文件需要删除的话那么快速得重新格式化要比删除那些文件来的快. 在 upgrade-minifaq 有那么一个例子 (/usr/obj).
    * 如果由于一些原故你要用源码重新编译系统, t源码会被放在 /usr/src. 如果你没有给 /usr/src 分配一个独立的分区, 那一定要给 /usr 足够大的空间.
    * 一个很平常但很容易忘记的事实: 在你启动机器的时候你不一定想挂起所有的空间! 既然现在已经很少能买到比 20G 还小的硬盘了, 你或许会想留一些空间不被挂载. 如果你发现一块分区不够用了, 你就可以把还没使用的空间挂载上去, 或者将你已有的分区复制一下, 编辑 /etc/fstab 来添加你新建的分区, 这样,你就能使用更多空间了.
    * 如果你的分区大小过于接近最小空间要求, 那当你以后升级系统的时候你会后悔的.
    * 如果你允许用户在 /var/www (i.e., 个人网页文件)里拥有写的权限, 你或许想把它规划在一个独立的分区, 这样你就能分摊用户使用空间的限额, 如果他们吧这个分区都塞满了, 那么你的系统的其它分区就不会受影响.

4.8 - 多系统启动 OpenBSD/i386
多操作系统启动就是在一台机器上有多个操作系统, 有些是选择启动哪个系统的意思. 这是一件比较麻烦的工作! 如果你对你所做的这些工作还不太理解的话(安装使用OpenBSD), 那你就可以停下不要忙着删除电脑里的资料了. New OpenBSD 用户一般会被建议一开始从一块空白的硬盘上开始使用 OpenBSD , 先在一台不承担重要工作的机器上开始练习做各种你想要的配置,然后再在比较重要的机器上配置多操作系统启动. FAQ 14 理由很多关于 OpenBSD 启动进程的信息.

这里是一些多操作系统启动的选项:
设置活动(active)分区
通常这是最先被想到的, 而且很多时候这是多操作系统启动最好的解决方法. 只要把你现在正使用的操作系统所在的分区设为活动分区那么下次启动他就能默认启动了. 每个操作系统都会有那么一个程序来做这件事; OpenBSD 下的是 fdisk(8), 和 Windows 9x 和DOS 和其它一些操作系统下的那个程序一样的名字. 这对于一个需要很长时间来关机或者重启的系统来说还是不错的 -- 你可以设定好它然后进行重启, 到旁边休息一下喝杯咖啡, 回来的时候就会发现系统如你所愿的那样开始启动了 -- 不用等待 Magic Moment 来选择进入哪个 OS.
用软盘启动
如果你想用什么硬盘外的东西来启动 OpenBSD (或者你不想其它的用户查觉机器上有什么变化), 那就是软盘了 只要制作一张标准的 OpenBSD 安装软盘就好了, 并编辑一个 /etc/boot.conf 文件 (当然,你也要在软盘上建立一个 /etc 文件夹) 加入以下内容

     boot hd0a:/bsd

这样系统就从驱动器 0 启动,OpenBSD 的分区是 'a', 内核文件是 /bsd. 注意你也可以从其它驱动器启动只要添加类似于: "boot hd2a:/bsd" 就能从你的第三个驱动器启动了. 当你想要启动 OpenBSD, 把软盘塞到软驱里, 重启就好了. 想要启动其它 OS 的话, 把软盘拿出来,重启一下就好了.

下面这个例子就是如何从软盘启动, 看一下 /etc/boot.conf.  "boot hd0a:/bsd" 行告诉启动程序哪里去引导内核 -- 在这个例子中, 是 BIOS 里的第一块 HD (硬盘). 记住,软盘里只有一个很小的文件被读取出来 (/boot)  -- 系统还是会从硬盘中加载整个内核的, 所以这只增加了启动进程五秒钟的时间.
Windows NT/2000/XP NTLDR
如果要多重启动 OpenBSD 和 Windows NT/2000/XP, 你需要使用 NTLDR,  NT 用户的启动器. 要配合 NT 来多重启动, 你需要一份 OpenBSD Partition Boot Record (PBR)的附件. 运行了 installboot 之后, 你就能用 dd(1) 把它复制到一个文件中去了:

    # dd if=/dev/rsd0a of=openbsd.pbr bs=512 count=1

现在启动 NT 然后把t openbsd.pbr 让到 C:. 在 C:/BOOT.INI 加一行:

    c:/openbsd.pbr="OpenBSD"

重启之后, 你就能在NT的启动选项里看到 OpenBSD 了. 这里有更多关于 NTLDR 的修改指南.

在 Windows XP 上你也能用GUI编辑启动信息 GUI; 请查看 XP 的 Boot.ini HOWTO.

像这样的程序有很多, 比方说, BootPart. 这个程序能运行于 Windows NT/2000/XP, 它能查找 OpenBSD PBR, 然后放置于 NT/2000/XP 的分区, 并添加到 C:/BOOT.INI

 OpenBSD 的安装或升级程序会重新安装 OpenBSD 的 boot loader, 它会将系统的位置码写入 PBR, 所以如果你重新安装或者升级了你的 OpenBSD , 你要将前面的过程再做一遍并取一份新的 OpenBSD PBR.

注意: The Windows NT/2000/XP boot loader 只能启动装在主硬盘的操作系统. 你不能用它来启动装在第二硬盘的 OpenBSD .

其它的 boot loaders

其它的 OpenBSD 用户成功使用的启动器包括 GAG, OS-BS, The Ranish Partition Manager and GRUB.

OpenBSD 和 Linux (i386)

请参考 INSTALL.linux, 那里深入讨论了如何让 OpenBSD 和 Linux 公事一机.
4.9 - 安装之后发送你的 dmesg 到 dmesg@openbsd.org

在这里要提醒一下大家, 这对于 OpenBSD 开发人员获知硬件的工作情况很重要,.

一段来自 /usr/src/etc/root/root.mail 的引用

如果你想确认你的机器在 OpenBSD 运行的非常良好, 请帮我们一个忙 (在配置好你的邮件系统后!) 输入:
 # dmesg | mail -s "Sony VAIO 505R laptop, apm works OK" dmesg@openbsd.org
这样我们就可以知道大家都在用什么样的配置.  这些关于你的机器的信息中的每个字节都能很好的帮助我们.
我们将根据这些信息来改进我们未来的发行版中的设备驱动.  (请使用我们提供的 GENERIC 内核,而不是用户
自定义的内核, 除非你不能用 GENERIC 内核启动).  这些设备驱动信息将帮助我们改进现有驱动里的问题. 非常感谢你!

记得用一个同样能接收电子邮件的帐户来发送邮件这样开发人员才能联系到你 ,如果他们为了让你的机器顺利运行或许需要需要你进行一些测试或者修改. 如果是相同的运行 OpenBSD 的机器那就不许要都发送 dmesg 了, 如果这台机器不能接受电子邮件, 那就这样做:

$ dmesg | mail your-account@yourmail.dom

然后把这条信息转寄到

 dmesg@openbsd.org

your-account@yourmail.dom 就是你常用电子邮件帐号. (或者通过 FTP/scp/floppydisk/carrier-pigeon/...来发送信息)

注意 - 请发送基于 GENERIC 内核的 dmesgs. 自定义的内核可能删除了很多设备选项,所以它们的 dmesg 用处不大.

同样需要注意的是接收 dmasg 的机器是使用 spamd spam rejection 系统的. 这会造成你的 dmesg 会在相当一段时间内无法被邮件服务器接收. 非常难熬的是大概在半个或一个或一个多小时之后才能发出信息.
4.10 - 安装之后添加软件套件
"靠,不是吧!!我在装系统的时候忘了装个软件包了!"

有时侯你意识到你确实需要安装comp36.tgz (或者其它系统组件) , 但是你没意识到那该是在安装系统的时候.好消息: 这里有两种方法来让你在初次安装后再添加软件包:
使用升级程序
从你的安装媒介启动(CD-ROM 或者软盘), 选择升级 (不是安装). 当你看到要安装的软件套件列表时, 选中第一次你没安装的那个套件, 选择安装源, 然后让它为你安装.
用 tar(1)
安装包通常都是压缩在 tar 包里的, 你可以手工得把它解压到根分区:

  # cd /
  # tar xzvpf comp36.tgz

不要忘了用在上面的这个命令中用 'p' 选项,这样你就能正确得保存文件的许可信息!

一个常见的错误就是以为能用 pkg_add(1) 来补装软件包. 但是在这里这是不行的. pkg_add(1) 只能用于 package 文件, 普通的 tar 包是不能用的.
4.11 -  'bsd.rd' 是什么?
bsd.rd 是一个 "内存磁区(RAM Disk)" 内核. 这个文件非常有用; 大多数时候许多开发人员都很小心得把它放在系统的根文件夹里.

称之为是 "RAM Disk kernel" 是形容内核使用的根分区 -- 不是使用一个物理驱动器, 在从 bsd.rd 启动后应用软件都是被存放于内核中, 并且运行于一个基于内存的文件系统. bsd.rd 同样包含了一些能让你完成系统安装和维护的工具.

在一些平台上, bsd.rd 是一种很受欢迎的安装途径 -- 你把内核放置于一个已有的文件系统, 启动它, 从它开始执行安装程序. 在大多数平台上, 如果你已经有了一个老版本的 OpenBSD, 那你能用FTP下载一个新版本的 bsd.rd, 用它启动, 完全不用其它移动媒介来安装新版本的 OpenBSD .

这是一个在 i386 机器上启动 bsd.rd 的例子:

  Using Drive: 0 Partition: 3
  reading boot.....
  probing: pc0 com0 com1 apm mem[639k 255M a20=on]
  disk: fd0 hd0+
  >> OpenBSD/i386 BOOT 2.02
  boot> boot hd0a:/bsd.rd
. . . normal boot to install . . .

需要指出的是, 你将会进入安装程序, 但是你也可以中断它进入控制台来配置你的系统.

启动 bsd.rd 使用的规则就是不论你的机器上是怎么个情况,修改内核启动路径从 /bsd 改为 bsd.rd .


4.12 - 常见的安装问题
4.12.1 - 我的 Compaq 知认出 16M RAM
一些 Compaq 机器有那么一个问题:where the full system RAM is not detected by the OpenBSD 的第二级 boot loader 不能正常得探测出系统的全部内存, 只有16M内存能被 OpenBSD 识别并使用. 它能通过建立 / ,修改 /etc/boot.conf 文件来修正, 或者在 OpenBSD 引导前的 "boot>" 提示符下输入一条命令命令. 如果你的机器有 64M RAM,但是 OpenBSD 一开始只能认出 16M, 你要用的命令就是:

     machine mem +0x3000000@0x1000000

将 48M (0x3000000) 加到之前的 16M (0x1000000). 同样, 如果你的机器有同样的问题, 你可以在安装软盘/CD-ROM 的 boot> 提示符前输入上面的命令, 载入系统, 重启, 建立 /etc/boot.conf 文件并加入上面的那条语句这样以后启动的时候系统就能认出所有的内存了.

也曾有报告说对 ROM 的升级同样能解决这个问题.
4.12.2 - 我的 i386 在安装后不能启动
你的安装看上去没什么问题, 但是在第一次启动的时候, 你没看到任何 OpenBSD 的启动提示. 对于这个问题一般有这么几个原因:

    * 分区中没有一块被 fdisk(8) 标示为活动分区. 为了修正它, 用启动软盘或其它媒介重启机器,将一块分区标示为 "active" (bootable). 看一下这里(连接)
    * 磁碟上没有有效的引导器. 如果在安装时你对 "Use entire disk for OpenBSD?" 回答"Y", 或者使用了 fdisk 的 "reinit" 选项 , 那么 OpenBSD 的启动记录就会被安装在磁碟的主启动记录区; 不然, 原先的主启动代码是不会被修改的. 如果没有引导记录的话那是会出问题的. 一种解决方法就是重新用安装媒介启动, 进入控制台在 fdisk 下用命令行对 MBR 升级一下:

    # fdisk -u wd0

      注意:  "update" 选项搭配互联模式("-e")的fdisk不会写入使磁碟可启动的标识性代码.
    * 在一些罕见的例子中, 在第二阶段启动器安装的时候可能会有一些问题. 这里有一些关于第二阶段启动器的讨论.

4.12.3 - 我的 (老式的,运行慢的) 机器启动了,但是在ssh-keygen 这一步卡住了
很可能你的机器运行得很好, 只不多需要点时间来完成 ssh key 的生成.一台 SPARCStation2 或者 Macintosh Quadra 可能需要45分钟或者更长来完成ssh-keygen(1) 的三个步骤, 有的机器可能还要长. 就等着它弄完吧; 这只在每次安装运行一次.
4.12.4 - 我安装的时候看到了这样的一条信息 "Failed to change directory"
在 OpenBSD 开发小组的工作周期运行到发布新版本的 beta 阶段,你用FTP安装它的预览版的话, 你可能会看到:

  Do you want to see a list of potential FTP servers?  [yes] Enter
  Getting the list from 192.128.5.191 (ftp.openbsd.org)... FAILED
  Failed to change directory.
  Server IP address or hostname?

这是一个很正常的在预备发布期间可以预料到的一个情况. 安装程序会到FTP列表中的主要FTP服务器中去查询安装包的信息,但是那里的包直到新版本正式发布后才会更新, 所以你才会看到那些信息.

查看一下 FTP 列表中的镜像选择你常用的 FTP 镜像(你确定那里面有你要得软件包), 在提示符出现后手工输入它.

注意: 如果你是从 CD-ROM 安装那就不会有这个问题了.
4.12.5 - 我登录的时候, 看到 "login_krb4-or-pwd: Exec format error"
Kerberos IV 已经从 OpenBSD 3.4 总移除掉了, 但是如果你是升级的话, 老的 Kerberos IV 二进制包仍会留在你的系统里. 这是一个 i386 平台下的问题, 因为老的 Kerberos 文件是 a.out 格式的, 无法在标准的 ELF 内核中运行 (屏蔽了 a.out 模拟器). 如果你碰到这种问题, 那你登录的时候就要越过 krb4 认证模式:

    OpenBSD/i386 (puffy.openbsd.org) (ttyC0)

    login: joeuser:passwd
    password:

你同样可以用 "username:passwd" 语法来做 ssh 连接 或者用 su(1) 来控制你的系统. 现在编辑一下 /etc/login.conf, 把 krb4 配置删了.
4.12.6 - 我的分区表被毁了或者被清空了!
很少有的, 一个用户发现本来他的系统是没问题的, 但是在运行 fdisk wd0 后, 他们发现分区表里什么都没了(有时侯只留了点没用的东西). 这通常是因为他们在用 fdisk(8) 建立分区的时候留下了0扇区的空间做分区补偿, 而不是需要的一个磁道的补偿 (注意: 这里的假设是针对 i386 or amd64 平台的. 不同的平台有不同的补偿要求, 有的还不需要补偿). 系统会通过 PBR 引导, 而不是 MBR.

即使这样配置好了系统也能工作, 但仍然有个遗留问题要修改. 为了修复它, 这块磁碟上的文件系统要被重建 (现在你该知道你要做的工作是什么了吧, 你可能只需重新建立你的 disklabel 和 MBR, 你也只会丢失并重建这块磁碟上的第一块 OpenBSD 分区).
4.13 - 定制安装过程
siteXX.tgz file
 OpenBSD 安装/升级脚本中允许用户自己配置的套件叫 "siteXX.tgz",  XX 就是发行版本号 (e.g. 36). siteXX.tgz 文件里有, 和其它套件一样, 一个gzip(1) 压缩的 tar(1) 包, '/' 像其它包一样用 xzpf 解压. 在所有其它包安装好之后这个包才能安装.

这个文件能使用户从"一般的"软件包套件搭配中添加和移除出软件包并且能用它来自定义安装或者升级.

一些 siteXX.tgz 的适用例子:

    * 新建一个 siteXX.tgz ,里面包含了你第一次安装 OpenBSD 后使用的软件包的修改信息. 然后, 如果你要重新安装系统的话你只要很简单的选择 siteXX.tgz 那你之前做过的修改就会自动完成而不用再次去做定制.
    * 对各种不同的机器都制作一个 siteXX.tgz 文件,就能使记录各种不同机器的配置信息得到保存. 在一种类型的机器上安装系统 (e.g. 使用不同显示卡的机器) 只要选择对应系统伤制作的的 siteXX.tgz 就能完成所有的工作.
    * 把一些常规的配置文件放进 siteXX.tgz  -- /etc/skel files, /etc/pf.conf, /var/www/conf/httpd.conf, /etc/rc.conf.local, etc.

install.site/upgrade.site scripts
作为安装或升级过程最后的一步, 安装脚本会在新安装或者升级系统的根目录中寻找 install.site 或者 upgrade.site, 根据当前的安装进程, chroot 到新安装或者升级的 root 目录中,在chroot的环境中运行脚本. 记得,升级是在一个启动了的文件系统上完成的, 所以你的目标文件系统应该被挂载到 /mnt. 然而如果你是在正规的 root 目录下运行脚本的话,你的脚本可能要修改一下. 由于脚本是在所有软件都装好后运行的, 在你运行这个脚本的时候你应该事先优化一下你的系统功能 (在单用户模式的时候) .

注意: install.site 脚本必须被包含在 siteXX.tgz 中, 尽管 upgrade.site script 可以在升级前放置于 root 文件夹或者放置于 siteXX.tgz 中的.

T这些脚本可以做很多事:

    * 可以移除一些已经装在或升级到系统上但是你不想要的软件包.
    * 快速得恢复或建立一个新的系统.

稍有些可惜的是, 在这个环境中部能使用 pkg_add(1) .

整合 siteXX.tgz 和 install.site/upgrade.site 的目的是为了给用户更大的定制修改系统的能力,而不需要让他们自己去手工编译定制套件.
4.14 - 我怎么安装一批相同的系统 ?
如果你想要安装很多相同的 OpenBSD 系统那么有很多工具可用.
siteXX.tgz 和 install/upgrade.site files
看一下上面一节.
用 dump(8) 做备份恢复
在大多数平台上, 启动媒介都是包含了备份程序的, 可以用来恢复由 dump(8) 制作的备份文件. 你从 floppy, CD, 或者 bsd.rd 启动, 然后运行 fdisk, disklabel, 将存放在磁带机或其它媒介上的文件配置备份恢复过来, 并安装启动磁区. 更多详情请看着里.
磁盘镜像
不幸的是, 现在还没有一个已知的能在 FFS 文件系统上使用的并能制作只包含启动分区的软件包. 大多数主流的镜像软件会把 OpenBSD 分区当作一块 "常规" 分区, 并且会制作整块硬盘的镜像. 这样能达成你的目的, 但是这样会造成很大的空间浪费 -- 一个空的, 10G 的/home 分区会要求 10G 的空间来存放镜像文件, 即使里面什么都没有. 即使你把镜像文件安装到了更大的驱动器, 你也不能直接使用多出来的空间, 你也不能把镜像安装到一个比原来的驱动器小的驱动器里.

如果条件允许你这样做, 你可以用 dd 来实现你想要的, 允许你将磁碟从一块复制到另一块 , 扇区对扇区得复制. 这样就能免费得完成商业软件所能完成的事.
4.15 - 我如何发送 dmesg(8) 来报告安装问题?
在报告问题的时候, 发送完整的系统 dmesg(8) 才是正确的. 但是当你想要这样做的时候, 由于系统无法正常工作或者根本没法安装以至于你没有磁碟网络或者其它你需要的资源来发送 dmesg 到邮件列表. 这里有些解决的办法:

    * 软盘: 一个启动磁碟和 CD-ROM 有足够的工具来让你将 dmesg 存放到 MSDOS 软盘,再放到另外一台能发送邮件的机器上去. 把 MSDOS 的格式化好的软盘放进驱动器然后执行下面的命令:

     mount -t msdos /dev/fd0a /mnt
     dmesg >/mnt/dmesg.txt
     umount /mnt

      如果你另外还有一个 OpenBSD 系统, 你可以把它写入一个 OpenBSD 兼容的软盘 -- 通常软盘会有足够的空见存放 dmesg. 如果用这种软盘, 就去掉上面命令中的 "-t msdos" 参数.

    * 串行终端: 使用串行终端来捕获另外一台机器上的输出常常是最好的捕获诊断信息的办法 - 特别是当机器启动之后马上就出问题的时候. 那第二台电脑, 你需要一根合适的串行缆线 (通常是裸的调制解调器缆线), 还有一个终端模仿器用来将屏幕输出存放到一个文件中.

      在这个 FAQ 里有一些常见的关于建立一个串行终端的信息; 下面的这些命令足够用来捕获安装的记录.

      i386

      在启动提示符下输入

boot> set tty com0

      这会告诉 OpenBSD 使用第一个串行端口 (在PC文档中一般被称为 COM1 或 COMA ) 作为串行终端. 默认的波特率是 9600.

      Sparc/Sparc64

      如果没有配备键盘的话这种机器会自动使用串行终端. 如果你配备了键盘和显示器, 你仍能在 ok 提示符后面用下面的语句使系统强制使用串行终端.

ok setenv input-device ttya
ok setenv output-device ttya
ok reset

    * FTP: 有些情况下, 你可以用启动磁碟或 CD 上的 FTP 客户端软件来发送 dmesg 到本地 FTP 服务器, 之后你再把它取回来.

4.16 - 使用 bsd.rd-a.out安装或升级 OpenBSD/i386
一般使用 bsd.rd 内核来做升级或者安装没什么特别的问题. 但是, 在 OpenBSD 3.4 上,  i386 平台上的执行格式由 a.out 变为了 ELF, 以至于一些老的启动引导器 (OpenBSD 3.3 或者更早)无法引导新格式的 bsd.rd 内核.

为了解决这个问题, 并且使得升级过程中能使用 bsd.rd, 一个 a.out 版本的 bsd.rd 被制作了出来并被作为了 OpenBSD/i386 v3.5 FTP 发布中一部分. 这个文件, bsd.rd-a.out, 可以被 OpenBSD 3.3 或者更老的系统所引导, 但是一个正规的 OpenBSD 3.5 内核, 包含了最新的 ELF 启动引导器, 能够在一个老机器上引导 OpenBSD/i386 3.5 .

只要把下载的 bsd.rd-a.out 放置到你的 root 目录. 用它,而不是用 bsd 或者 bsd.rd,来启动系统 (当然要修改一下启动项,使bsd.rd-a.out作为你的启动内核).

在安装了最小化的 3.5 后 (base35.tgz, etc35.tgz, bsd), 下载 3.6 的(or -snapshot) bsd.rd 然后再从它进行安装.

Microsoft Sql server 2008 简体中文开发版安装指南

安装步骤:     在Windows7操作系统中,启动安装程序后,系统兼容性助手将提示软件存在兼容性问题,在安装完成之后必须安装SP1补丁才能运行,如下图所示。这里选择“运行程序”开始SQL S...

OpenBSD 简体中文FAQ最新版本(含PF)

  • 2010年07月05日 13:17
  • 425KB
  • 下载

快捷安装ZendStudio13.5简体中文语言包

**快捷安装ZendStudio语言包** 第一步:去官方网站浏览最新语言包下载地址 链接官方网站: http://www.eclipse.org/babel/downloads....

Sublime Text 3使用教程及简体中文汉化包,安装格式化代码插件

代码编辑器Sublime Text 3的使用教程以及简体中文汉化包的安装、安装格式化代码等插件...

Eclipse 官方简体中文语言包下载地址及安装方法

打开Eclipse Babel Project 主页: http://www.eclipse.org/babel/downloads.php Eclipse Babel Project A...

Microsoft Office 2010 Professional Plus 简体中文专业增强版安装与激活方法

微软office 2010 VOL大客户版,在安装后需要用KMS激活方式进行激活,在这儿分享office 2010 Professional Plus 2010(专业增强版)光盘镜像下载+KMS激活...

Office 2010 简体中文破解版 安装详解

软件压缩包下载地址: http://www.xitongzhijia.net/soft/24189.html Office2010安装   1、安装Office2010前,切记要将之前的Offic...

微软Visual Studio 2013 With Update3简体中文旗舰版下载(集成UPDATE3,直接安装即可)

http://www.wuleba.com/25890.html
  • suirosu
  • suirosu
  • 2014年10月24日 09:22
  • 3002

在centos安装bugzilla4.4.10、nginx,安装简体中文包

安装nginx具体安装教程从网上找,本文所使用的版本为: nginx/1.0.15安装mysql,并创建一个bugzilla库具体安装教程从网上找,本文所使用的版本为 Server version:...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:OpenBSD 3.6 安装指南(简体中文译本)下
举报原因:
原因补充:

(最多只允许输入30个字)