OpenBSD 4.2 版本:
发布于2007年11月1日
Copyright 1997-2007, Theo de Raadt.
ISBN 978-0-9784475-0-2
4.2 歌曲: "100001 1010101"
新特性
如何安装
如何升级
使用 ports 的方法
购买 CD
如何得到此版本的文件:
- 从我们的订购系统中购买 CDROM。
- 从镜像站点的 FTP 页面中选择合适的镜像。
- 进入镜像站点的 pub/OpenBSD/4.2/ 目录。
- 简要阅读本文档的剩余部分。
- 阅读 4.2 勘误表获得问题列表和背景。
- 阅读 4.1 与 4.2 之间的详细修改记录。
说明: 所有相关的版权和荣誉声明在 src.tar.gz,sys.tar.gz 和
xenocara.tar.gz 文件中,或在通过 ports.tar.gz 下载的文件中。由于空间不足,
用于构建 ports.tar.gz 文件中的程序包的发行文件并未包括在 CDROM 中。
新特性
以下是仅 OpenBSD 4.2 中新特性和新系统功能的部分列表。 完整的列表位于 4.2
的修改记录中。
- 新增/扩展的构架平台:
- OpenBSD/sparc64.
The PCIe UltraSPARC IIIi machines like the V215 and V245 are now supported.
- OpenBSD/hppa.
Four-digit B/C/J-class workstations like the B2000, C3750 or J6750 are
now supported (in 32-bit mode).
- OpenBSD/alpha.
Add support in the alpha platform for a couple of new Alpha models,
AlphaServer 1200 and 4100.
- 遗漏的构架平台:
- OpenBSD/sgi.
Due to various issues, this architecture will not be released this
time.
- 更新了硬件支持, 包括:
- Native Serial-ATA support:
- ahci(4)
driver for SATA controllers conforming to the Advanced Host Controller
Interface specification.
- jmb(4)
driver for the JMicron JMB36x SATA II and PATA Host Controller.
- sili(4)
driver for SATA controllers using the Silicon Image 3124/3132/3531 SATALink
chipsets.
- The pciide(4)
driver has had support added for newer chipsets, including:
- Intel ICH8M PATA
- JMicron JMB36x PATA
- VIA CX700/VX700 PATA
- The lm(4)
driver now supports Winbond W83627DHG and W83627EHF-A Super I/O Hardware
Monitors.
- The siop(4)
driver now has support for NCR 53C720/770 controllers in big endian mode. In
particular this means that the onboard Fast-Wide SCSI on many hppa machines is
supported now.
- New tht(4)
driver for Tehuti Networks 10Gb Ethernet controllers.
- The malo(4)
driver now supports Marvell 88W8385 802.11g based Compact Flash devices.
- New uts(4)
driver for USB touch screens, and the
xtsscale(1) calibration utility.
- The i810(4)
X.Org driver and the PCI AGP driver now support Intel i965GM chips.
- New led(4)
driver for the front panel LEDs on the V215/245.
- New bbc(4)
driver providing support for the BootBus Controllers in UltraSparc III systems.
- New pmc(4)
driver for the watchdog(4)
timer on the National Semiconductor PC87317 SuperIO chip.
- New pyro(4)
driver for the SPARC64 Host/PCIe bridge.
- New astro(4)
driver for the Astro Memory and I/O controller on hppa.
- New elroy(4)
driver for the Elroy PCI hostbridge on hppa.
- New lcd(4)
driver for the front panel LCD display on hppa.
- New ssio(4)
driver for the National Semiconductor PC87560 Legacy IO on hppa.
- New pxammc(4)
driver for the MMC/SD/SDIO controller on zaurus.
- New xlights(4)
driver for the front panel lights on the Xserve G4.
- New sysbutton(4)
driver for the system identification button on the Xserve G4.
- New piixpcib(4)
driver for System Management Mode initiated speedstep frequency scaling on
certain pairings of the Intel PIIX4 ISA bridges and Intel Pentium 3
processors.
- CPU frequency and voltage can now be scaled on all CPUs when running
GENERIC.MP on a multiprocessor i386 or AMD64 machine with enhanced speedstep or
powernow.
- Intel enhanced speedstep is now supported on OpenBSD/amd64.
- New support for the on die CPU temperature sensor found on the Intel
Core family of processors.
- The nvram(4)
driver is now available on OpenBSD/amd64.
- 新工具:
- 新功能:
- FFS2, the updated version of the fast file system.
- ftp(1)
now can send cookies loaded from a netscape-like cookiejar, supports proxies
requiring a password, and has a keep-alive option to avoid overly aggressive
control connection dropping.
- pkg_add(1)
has been vastly improved. It is more robust, outputs more consistent error
messages, and can deal with a lot more update scenarios gracefully. It also
has much better look-up capabilities for multiple entries in
PKG_PATH, stopping at the first directory with suitable
candidates.
- ftp-proxy(8)
is now able to automatically tag packets passing through the pf(4)
rule with a supplied name.
- Kernel work queues, workq_add_task(9),
workq_create(9),
workq_destroy(9)
provides a mechanism to defer tasks to a process context when it is impossible
to run such a task in the current context.
- ifconfig(8)
now understands IP address/mask in CIDR notation.
- Add IP (v4 and v6) load balancing to carp(4),
similar to the ARP balancing.
- sensorsd(8)
now supports a zero-configuration monitoring and has a more intuitive logging
for all sensors that automatically provide sensor state. It also features
advancements in user-specified monitoring, including monitoring of sensors
that are periodically flagged as invalid.
- sensorsd.conf(5)
now supports sensor matching by sensor type, allowing easier configuration.
- The i386 bootloader can now load amd64 kernels.
- The amd64 bootloader can now load i386 kernels.
- 各种改进和代码清理:
- Huge performance improvements in the network stack, including:
- In pf, store routing table ID, queue ID etc directly in the
packet header mbuf instead of using mbuf tags (which use malloc'd memory).
This yields a 100% improvement in pf performance.
- Packet forwarding can skip IPSEC stack if no IPSEC flows are
defined. This yields a further 5% improvement in packet forwarding
performance.
- Skip TCP/UDP/ICMP/ICMP6 checksumming when not necessary. This
yields a further 10% improvement in pf performance.
- A change in the way the kernel random pool is stirred greatly
increases performance with network interface cards that support interrupt
mitigation, especially on architectures where reading the clock is expensive
(such as amd64).
- Enable interrupt holdoff on sis(4)
chips that support it. Significant performance gain for slower CPU devices with
sis(4), such as Soekris.
- Large (>1TB) disk and partition support in the disklabel and
buffer cache code and in the userland utilities that manipulate disk blocks.
Note that some parts of the system are not 64-bit disk block clean yet, so
partition larger than 2TB cannot be used at the moment.
- Large (>2^32-1 sectors) SCSI disk sizes now probed.
- Thread support for the Objective-C library (libobjc).
- carp
route handling has been fixed, solving some problems the routing daemons were
exhibiting.
- i386 TLB handling improved to avoid possible corruption on Core2Duo
processors.
- Rework TLB shootdown code for i386 and amd64, gives fairly large
speed improvements.
- i386 and amd64 use the BIOS disk geometry when creating default
disklabels.
- Default disk geometry changed from 64 heads/32 sectors to 255
heads/63 sectors.
- More usb devices with various quirks coaxed to work.
- Archive/Wangtek cartridge tape drives (wt*) no longer supported.
- rcs
has improved GNU compatibility.
- make(1)
has improved stability of -j option.
- isakmpd(8)
now allows key exchange with RSA signature authentication to work with Cisco IOS.
- Fixed isakmpd(8)
interop-issues with peers, that start rekeying on port 4500 for NAT-T (e.g. Cisco, Openswan)
- The stability of OpenBSD/alpha has been greatly improved.
- The stability of OpenBSD/hppa has been greatly improved.
- 对安装/升级过程的修改:
- Allow the specification of an NTP server during installation.
- Allow no fsck'ing of clean non-root partitions during upgrade.
- Check for INSTALL.<arch> to confirm sets are for the correct architecture.
- Create and format the MSDOS partition for macppc installs in a more flexible and reliable way.
- OpenBGPD 4.2:
- Include support for Four-octet AS Number Space.
- Allow matching on communities using 0 in the AS part.
- Filtering on IPv6 prefixes is now possible.
- Various bugs in the encoding of multiprotocol updates were fixed.
- Allow the use of pkill -HUP bgpd to reload the config.
- bgpctl can filter prefix output by community now
- OpenNTPD 4.2:
- Improved support for timedelta sensors.
- OpenOSPFD 4.2:
- Added support for RFC 3137: OSPF Stub Router Advertisement
- It is possible to specify a carp demote group on interfaces and areas.
- Added support for mapping route labels to AS-external route tags and vice versa.
- Allow the use of pkill -HUP ospfd to reload the config.
- Hoststated 4.2:
- Added support for Layer 7 load balancing (or relay).
- Added support for reloading through hoststatectl or SIGHUP.
- OpenSSH 4.7:
- Prevent ssh(1)
from using a trusted X11 cookie if creation of an untrusted cookie fails; found
and fixed by Jan Pechanec.
- sshd(8)
in new installations defaults to SSH Protocol 2 only. Existing installations are
unchanged.
- The SSH channel window size has been increased, and both ssh(1)
and sshd(8)
now send window updates more aggressively.
These improves performance on high-BDP (Bandwidth Delay Product) networks.
- ssh(1)
and sshd(8)
now preserve MAC contexts between packets, which saves 2 hash calls per packet
and results in 12-16% speedup for arcfour256/hmac-md5.
- A new MAC algorithm has been added, UMAC-64 (RFC4418) which is
approximately 20% faster than HMAC-MD5.
- A -K flag was added to ssh(1)
to set GSSAPIAuthentication=Yes.
- Failure to establish a ssh(1)
TunnelForward is now treated as a fatal error when the ExitOnForwardFailure
option is set.
- ssh(1)
returns a sensible exit status if the control master goes away without passing
the full exit status. (bz #1261)
- 超过 4,500 个 ports,改进的 package 工具。
- 每种架构都有许多预先构建的包:
- i386: 4360
- sparc64: 4205
- alpha: 3779
- sh: 817
|
- amd64: 4283
- powerpc: 4230
- sparc: 3283
- m68k: 1107
|
- arm: 2131
- hppa: 3215
- vax: 108
|
一些精彩程序:
- Gnome 2.18.
- GNUstep 1.14.
- KDE 3.5.7 and koffice 1.6.3.
- Xfce 4.4.1.
- OpenMotif 2.3.0.
- OpenOffice.org 2.2.1.
- Mozilla Firefox 2.0.0.6.
- PostgreSQL 8.2.4.
- GHC 6.6.1 (amd64 and i386 only)
- 按照惯例,手册或其它文档也有相应补充和修改。
- 以下是系统包含的外部提供的重要程序:
- Xenocara (based on X.Org 7.2 + patches, freetype 2.2.1, fontconfig
2.4.2, expat 2.0.0, Mesa 6.5.2, xterm 225 and more)
- Gcc 2.95.3 (+
patches) and 3.3.5 (+
patches)
- Perl 5.8.8 (+ patches)
- Our improved and secured version of Apache 1.3, with SSL/TLS and DSO support
- OpenSSL 0.9.7j (+ patches)
- Groff 1.15
- Sendmail 8.14.1, with libmilter
- Bind 9.3.4 (+ patches)
- Lynx 2.8.5rel.4 with HTTPS and IPv6 support (+ patches)
- Sudo 1.6.9p4
- Ncurses 5.2
- Latest KAME IPv6
- Heimdal 0.7.2 (+ patches)
- Arla 0.35.7
- Binutils 2.15 (+ patches)
- Gdb 6.3 (+ patches)
如何安装
如果通过购买的 CD 安装,请按照下述指令操作。使用
FTP(或其它安装方式)安装与之类似;CDROM 中的安装说明,
会让你知道如果使用购买的 CD 安装是多么方便。
有关安装 OpenBSD 4.2 更详细的信息,请参阅在三张 CD 或相关 FTP
镜像站点中的以下文件:
- CD1:4.2/i386/INSTALL.i386
- CD2:4.2/amd64/INSTALL.amd64
- CD2:4.2/macppc/INSTALL.macppc
- CD3:4.2/sparc64/INSTALL.sparc64
- FTP:.../OpenBSD/4.2/alpha/INSTALL.alpha
- FTP:.../OpenBSD/4.2/armish/INSTALL.armish
- FTP:.../OpenBSD/4.2/hp300/INSTALL.hp300
- FTP:.../OpenBSD/4.2/hppa/INSTALL.hppa
- FTP:.../OpenBSD/4.2/landisk/INSTALL.landisk
- FTP:.../OpenBSD/4.2/mac68k/INSTALL.mac68k
- FTP:.../OpenBSD/4.2/mvme68k/INSTALL.mvme68k
- FTP:.../OpenBSD/4.2/mvme88k/INSTALL.mvme88k
- FTP:.../OpenBSD/4.2/sparc/INSTALL.sparc
- FTP:.../OpenBSD/4.2/vax/INSTALL.vax
- FTP:.../OpenBSD/4.2/zaurus/INSTALL.zaurus
快速安装仅适合熟悉 OpenBSD 和"isklabel -E"命令用法的人。如果你根本不懂安装
OpenBSD,请参阅上面罗列的相应 INSTALL.* 文件!
OpenBSD/i386:
设置 BIOS 可以从 CD 启动。OpenBSD/i386 发行版本在 CD1 中。如果你的 BIOS
不支持从 CD 启动,就可能需要制作启动软盘。用的 CD1:4.2/i386/floppy42.fs
来制作启动软盘,通过软盘驱动器启动。
使用 CD1:4.2/i386/floppyB42.fs 来制作引导软盘,可以获得更好的 SCSI
支持,或者使用 CD1:4.2/i386/floppyC42.fs 来制作引导软盘,
获得更好的笔记本电脑支持。
注意: 一些陈旧的 BIOS 不能从 CD 启动。解决方法参见
4.2 刊误页。
如果你不能从 CD 或软盘启动的话,还可以用 PXE 通过网络安装,请参阅
INSTALL.i386 文件。
如果计划让 OpenBSD 与另一操作系统共存,双重启动,请参阅 INSTALL.i386
文件。
在 MS-DOS 环境制作启动软盘,请使用位于 CD1:4.2/tools/rawrite.exe
的"rawrite"工具。在 Unix OS 环境制作启动软盘,请使用 dd(1)
工具。下面是使用 dd(1)
的例子,"device"可以是"floppy","rfd0c",或"rfd0a"。
# dd if=<file> of=/dev/<device> bs=32k
请确保你的软盘无坏道,已经正确格式化。否则很可能会安装失败。
有关制作启动软盘和安装 OpenBSD/i386 的信息请参阅
FAQ 4.3.1。
OpenBSD/amd64:
OpenBSD/amd64 的 4.2 版本在 CD2 中。设置 BIOS 可以从 CD 启动,然后用 CD
启动,开始安装。如果不能从 CD 启动,可以通过制作启动软盘来安装。用
CD2:4.2/amd64/floppy42.fs 来制作启动软盘,然后用软驱来启动。
如果不能从 CD 或软盘启动,可以用 PXE 通过网络来安装,有关信息请参阅
INSTALL.amd64 文件。
如果计划让 OpenBSD 与另一个操作系统共存,双重启动,请参阅
INSTALL.amd64。
OpenBSD/macppc:
将 CD2 放入 CDROM,开机后一直按着 C 键,直到显示器显示
OpenBSD/macppc boot 。
或者在出现 Open Firmware 提示时,输入
boot cd:,ofwboot /4.2/macppc/bsd.rd 。
OpenBSD/sparc64:
将 CD3 放入 CDROM,输入 boot cdrom 。
如果这个没用,或没有光驱,你可以把 CD3:4.2/sparc64/floppy42.fs 或
CD3:4.2/sparc64/floppyB42.fs 写入软盘,用它作为启动盘,输入
boot floppy 来启动。详细内容参阅 INSTALL.sparc64。
请确保你的软盘无坏道,已经正确格式化。否则很可能会安装失败。
你也可以将 CD3:4.2/sparc64/miniroot42.fs 写入磁盘中的 swap 分区,
然后在启动时输入 boot disk:b 。
如果以上都不行,你可以通过网络来启动安装。相关内容在 INSTALL.sparc64
中。
OpenBSD/alpha:
根据你的机器类型,将 FTP:4.2/alpha/floppy42.fs 或
FTP:4.2/alpha/floppyB42.fs 写入软盘,然后在启动时输入
boot dva0 。详细内容参阅 INSTALL.alpha。
请确保你的软盘无坏道,已经正确格式化。否则很可能会安装失败。
OpenBSD/armish:
连接串口之后,Thecus 能直接通过网络用 tftp 或 http 启动。使用 fconfig
配置网络,重置之后,加载 bsd.rd。详细信息请参阅 INSTALL.armish 。IOData HDL-G
只能在 EXT2 格式的分区上启动。进入 linux,复制"boot"和"bsd.rd"到 wd0(hda1),
然后加载和运行 bsd.rd,保留 wd0i(hda1) 上的 EXT2 分区。请参阅 INSTALL.armish
以获得更多信息。
OpenBSD/hp300:
OpenBSD/hppa:
OpenBSD/landisk:
OpenBSD/mac68k:
正常启动 MacOS,将 FTP:4.2/mac68k/utils 下的程序
“BSD/Mac68k Booter” 解压到硬盘。用 bsd.rd 内核文件的位置配置
“BSD/Mac68k Booter”,启动后进入安装程序。更多相关信息请参阅
INSTALL.mac68k 。
OpenBSD/mvme68k:
OpenBSD/mvme88k:
OpenBSD/sparc:
从提供的 ISO 安装文件引导,根据你所用的 ROM 版本,
需用到下面两个命令中的一个。
ok boot cdrom 4.2/sparc/bsd.rd
或
> b sd(0,6,0)4.2/sparc/bsd.rd
如果你的 SPARC 系统没有 CD 驱动器,将 floppy42.fs 写入软盘,
通过软盘来启动安装。更多的信息请参阅
FAQ 4.3.1。根据 ROM 版本的不同,
从软盘启动安装需要下面两个命令中的一个。
ok boot floppy
或
> b fd()
请确保你的软盘无坏道,已经正确格式化。否则很可能会安装失败。
如果你的 SPARC 系统没有软驱和 CD,你可以制作可引导磁带,
或者通过网络来安装。相关内容在 INSTALL.sparc 中。
OpenBSD/vax:
用 mopbooting 通过网络启动来安装,相关信息请参阅 INSTALL.vax。
OpenBSD/zaurus:
关于源代码的说明:
src.tar.gz 包含的源代码文件开始路径是 /usr/src。
该文件包括除了内核代码之外的所有源代码,内核代码位于单独的档案文件中。
解压方法:
# mkdir -p /usr/src
# cd /usr/src
# tar xvfz /tmp/src.tar.gz
sys.tar.gz 包含的源代码文件路径开始是 /usr/src/sys。
该文件包括了重建内核需要的所有源代码。解压方法:
# mkdir -p /usr/src/sys
# cd /usr/src
# tar xvfz /tmp/sys.tar.gz
这些文件是 CVS 检出格式。可以使用匿名 CVS
服务器基于它们获得最新的版本。基于这些文件更新,比完全重新从 CVS
检出的速度要快得多。
如何升级
如果你已经安装了OpenBSD 4.1,不想重新安装,可以在升级指南中找到升级方法和忠告。
使用 ports 的方法
也提供了 ports 的档案文件。解压方法:
# cd /usr
# tar xvfz /tmp/ports.tar.gz
# cd ports
ports/ 子目录是 OpenBSD ports 树的检出副本。假如你不了解 ports,
请浏览 ports 页面。该文件并非是如何使用 ports 的手册,
它只是 OpenBSD ports 系统用户的初级读本。
ports/ 目录是我们从 CVS(如果你不熟悉 CVS,请参阅手册
cvs(1)) 检出的 ports 副本。与我们的代码一样,ports 也可以通过匿名 CVS
服务器更新。因此,为了确保版本是最新的,必须使 ports/ 在可读写的介质中,
更新的命令是:
# cd [portsdir]/; cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_4_2
[当然,在实际操作时需要将本地目录和服务器名称替换成你的 ports
所在位置和较近的匿名 CVS 服务器。]
注意大部分的 ports 可以通过 FTP 获得预先编译的二进制包。如果发现问题,会为
4.2 版本发布升级包。
如果你有兴趣观察 ports 的变动信息,或者帮助我们,或者只想获得更多的信息,
请加入邮件列表 ports@openbsd.org 。
www@openbsd.org
$OpenBSD: 42.html,v 1.4 2008/03/24 10:14:50 saad Exp $