5.7
|
Released May 1, 2015 Copyright 1997-2015, Theo de Raadt. ISBN 978-0-9881561-5-9 5.7 Song: "Source Fish"
All applicable copyrights and credits are in the src.tar.gz,
sys.tar.gz, xenocara.tar.gz, ports.tar.gz files, or in the
files fetched via |
What's New
This is a partial list of new features and systems included in OpenBSD 5.7. For a comprehensive list, see the changelog leading to 5.7.
- Improved hardware support, including:
- New xhci(4) driver for USB 3.0 host controllers.
- New umcs(4) driver for MosChip Semiconductor 78x0 USB multiport serial adapters.
- New skgpio(4) driver for Soekris net6501 GPIO and LEDs.
- New uslhcom(4) driver for Silicon Labs CP2110 USB HID based UART.
- New nep(4) driver for Sun Neptune 10Gb Ethernet devices.
- New iwm(4) driver for Intel 7260, 7265, and 3160 wifi cards.
- The rtsx(4) driver now supports RTS5227 and RTL8411B card readers.
- The bge(4) driver now supports jumbo frames on various additional BCM57xx chipsets.
- The ciss(4) driver now supports HP Gen9 Smart Array/Smart HBA devices.
- The mpi(4) and mfi(4) drivers now have mpsafe interrupt handlers running without the big lock.
- The ppb(4) driver now supports PCI bridges that support subtractive decoding (fixes PCMCIA behind the ATI SB400 PCI bridge), and devices with 64-bit BARs behind PCI-PCI bridges as seen on SPARC T5-2 systems.
- The puc(4) driver now supports Winchiphead CH382 devices.
- The sdmmc(4) driver now supports eMMC storage devices larger than 2GB.
- The sdhc(4) driver can properly resume on Ricoh controllers.
- The sdhc(4) driver now supports Ricoh R5U822 and R5U823 card readers.
- The mfii(4) driver now supports the Megaraid 3008 (Fury) and 3108 (Invader) cards.
- The myx(4) driver runs less code under the big lock.
- The msk(4) driver now supports Yukon Prime, Yukon Optima 2, Yukon 88E8079, and various EC U and Supreme chipsets.
- The umass(4) driver now supports Archos 24y Vision devices.
- The athn(4) driver now supports Atheros UB94 devices.
- The azalia(4) driver now supports Realtek ALC885 codecs and Bay Trail HD Audio devices.
- The ix(4) driver now supports onboard Ethernet devices in SPARC T5 machines.
- The upd(4) driver now handles UPSes with broken report descriptors.
- The ums(4) driver now supports the USB Tablet device emulated by Qemu.
- The umsm(4) driver now supports MEDION S4222 devices.
- The pciide(4) driver now supports Intel C610 chipsets.
- The ukbd(4) driver now supports "wellspring" Apple keyboards.
- The pms(4) driver now supports click-and-drag with Elantech v4 touchpads.
- The umodem(4) driver now supports Arduino Leonardo devices.
- The sk(4) driver now supports receive ring scaling.
- Replaced custom jumbo allocators in sk(4), nge(4), lge(4), and ti(4) with MCLGETI(9).
- Wireless network scanning problems with the iwn(4) driver have been fixed.
- Support for RS* IGP Radeon devices in the radeondrm(4) driver has been fixed.
- PowerMac7,2 and PowerMac7,3 can now boot with a multiprocessor kernel.
- Removed hardware support:
- The lofn(4) and nofn(4) drivers for Hifn crypto accelerator devices have been removed.
- The art(4) driver for Accoom Networks Artery T1/E1 devices has been removed.
- The urio(4) driver for Diamond Multimedia Rio MP3 players has been removed.
- Generic network stack improvements:
- The routing table is now used for most of the address lookup operations superseding the RB-tree and IPv4 address list.
- The SipHash algorithm is now used for PCB hashing, trunk(4) loadbalancing, pf(4) and bridge(4).
- Traffic destinated to link-local IPv6 addresses can now be seen with tcpdump(8).
- A carp(4) now needs to be configured with an explicit carpdev parent interface.
- The mbuf(9) layer has been made mpsafe.
- Introduce mbuf_list and mbuf_queue structures and APIs.
- Support changing the IPv6 input queue length via sysctl(1) and net.inet6.ip6.ifq.
- Installer improvements:
- The
etcandxetcsets are now part ofbaseandxbaseand are not distributed separately anymore. They are extracted frombaseandxbaseduring installation and upgrades.
Note that this includes thercandrc.conffiles! - The installer now supports trunk(4) interfaces during upgrades.
- The discovery of the responsefile location for unattended installation and
upgrades has been extended to be more flexible.
- Ask for the location if DHCP discovery fails for location or mode.
- Provide a default URL if the 'next-server' DHCP option is found.
- Use
/auto_install.confor/auto_upgrade.confif present. - Automatically start the installer in unattended mode if either one of these files is present when the system boots.
- Ignore hostname.if.* files when upgrading.
- Configure all physical interfaces before any dynamic interface types (e.g. trunks, vlans) when upgrading.
- fdisk(8) now zeros out GPT signatures found when writing out an MBR that has been re-initialized and has no EFI or EFISYS partition.
- Fixed manipulation of 'ro' and 'rw' fstab options to avoid damage to other options that happen to contain 'ro' or 'rw'.
- The ramdisk binary (one binary contains all the commands) is now compiled without optimization and security features. The benefit is a substantial saving in space, allowing more features in the future.
- The
- Routing daemons and other userland network improvements:
- nginx has been removed from base – use the package if you need it.
- sliplogin has been removed.
- Sendmail has been removed from base – use the package if you need it.
- IPv6 router solicitations are now sent by the kernel ("inet6 autoconf"); rtsol(8) and rtsold(8) are no longer necessary and have been removed.
- Enhancements and bugfixes in arp(8) and ndp(8)
- The effects of the AI_ADDRCONFIG flag on getaddrinfo(3) results are limited to DNS queries. This avoids erratic behavior with transient network problems, "raw" addresses and localhost entries in /etc/hosts.
- gethostbyname(3) now no longer fails when more than 16 addresses/aliases are returned. The original pre-asr limit of 35 has been restored, with additional results being truncated.
- tftp(1) now supports sending or receiving files larger than 65536 blocks in size.
- ntpd(8) now supports authenticated TLS constraints.
- Security improvements:
- Stricter enforcement of W^X in the kernel address space, especially on architectures with the right featureset (amd64, in particular, has seen substantial improvements).
- Support for loadable kernel modules has been removed.
- procfs has been removed.
- Comprehensive audit of the tree to use the reallocarray(3) idiom throughout.
- Many conversions from select(2) to poll(2).
- /var/tmp is now a symbolic link to /tmp, as a first step towards reducing the "fill it up" attack surface against the /var partition.
- memcpy(3) with overlapping arguments now aborts a program (with a syslog report), allowing these problems to be found. Overlapping copies should use memmove(3). Sometime after 5.7 release, having learned more about the situation and repairing instances that are discovered by users during release use, we will go back to the optimized version.
- Change rand(3), random(3), drand48(3), lrand48(3), mrand48(3), srand48(3) to return non-deterministic strong random values by default, sourced from arc4random(3). New functions srand_deterministic(3), srandom_deterministic(3), seed48_deterministic(3) and lcong48_deterministic(3) are added for cases where determinism needs to be requested.
- At resume (or unhibernate) time, use a variety of methods to reseed the random number generator. This also works on VMs which wake up (if a wakeup event is seen).
- All architectures have been transitioned to static PIE, meaning the statically linked binaries in /bin and /sbin now have randomly located text segments.
- Allow larger .openbsd.randomdata ELF segments.
- Sync kernel AES code and ssh(1) AES code to the one shipped with OpenSSL/LibreSSL.
- Removed passwd(1) support for all password ciphers except blowfish(3).
- Use sha512 instead of md5 for tcp(4) initial sequence number.
- Use sha512 instead of md5 in the random number generator.
- Delete secret or secret-derived data in many base utilities with explicit_bzero(3).
- Assorted improvements:
- New rcctl(8) utility to control daemons.
- fw_update(1) has been rewritten to be faster and smarter.
- Cleanup libevent(3), the compatibility layer for other operating systems has been removed. The API is still compatible with upstream libevent 1.4.15-stable.
- openssl(1) s_client now supports a -proxy parameter for connecting over an HTTP proxy.
- gzsig has been removed.
- Switch to fast assembly versions of some libc functions on amd64.
- Frequency scaling has been moved from apmd(8) to the kernel with an improved algorithm.
- Switch last workq API uses to taskq API and remove all traces of workq.
- Use services(5) names in the default pf rules in force during startup.
- what(1) now correctly displays $OpenBSD$ expansions.
- dhcpd(8) now removes addresses from its pf table a single time when they expire, rather than at every timeout after the expiry.
- dhcpd(8) now ensures that the pf table process exits when the main process does.
- dhcpd(8) has more informative log entries for DHCPACKs issued in response to DHCPINFORM messages.
- Added POSIX types blkcnt_t (int64) and blksize_t (int32), and used them for st_blocks (formerly int64_t) and st_blksize (formerly u_int32_t) in struct stat.
- Improved typography for banner(6).
- Allow hangman to play against any ELF file.
- dhclient(8) adjusts MTU when the interface-mtu DHCP option is provided.
- Various memory leaks in dhclient(8) plugged, providing more stability for long running (in terms of time or renewals) instances.
- The dhclient(8) command line options -q (quiet) and -d (don't daemonize) are now mutually exclusive.
- The communication between the privileged and unprivileged dhclient(8) processes was reworked to further minimize information sharing.
- dhclient(8) ensures lease timeouts (renew, rebind, expire) are sane and uses default values closer to RFC suggestions.
- dhclient(8) no longer crashes when a lease expires and cannot be renewed or replaced.
- dhclient(8) improved tracking network interface link states.
- Improved network error tracking and accounting in dhclient(8).
- Private number conversion functions in dhclient(8) eliminated in favour of standard library functions.
- Further signal race cleanups in ftp(1).
- BIND has been retired, encouraging use of nsd(8) and unbound(8).
- Significant namespace cleanup in the /usr/include files, especially related to <sys/param.h> and <limits.h>.
- softraid(4) RAID1 and CRYPTO volumes are now bootable on the sparc64 platform.
- relayd(8) now uses "TLS" rather than "SSL" terminology to reflect the deprecation of the latter.
- relayd(8) now supports the random and source-hash modes with redirections.
- relayd(8) now supports the OPENBSD-RELAYD-MIB via agentx with snmpd(8).
- Added interfaces for setting the close-on-exec flag and/or non-blocking mode on new file descriptors: pipe2(2), dup3(2), accept4(2), mkostemp(3), mkostemps(3), the
SOCK_CLOEXECandSOCK_NONBLOCKflags for socket(2) and socketpair(2), and theMSG_CMSG_CLOEXECflag for recvmsg(2). In addition, posix_spawn_file_actions_adddup2(3) now always clears the close-on-exec flag. - Added interfaces for setting the close-on-exec flag on new FILE handles and for requesting exclusive creation via the 'e' and 'x' mode letters for fopen(3), fdopen(3), freopen(3), and popen(3).
- Many library functions and programs changed to use the above for safety or simplicity.
- Added chflagsat(2), sockatmark(3), and stravis(3).
- Merged performance and safety fixes for fts(3) from FreeBSD.
- Merged fixes for file descriptor leaks in various rpc(3) functions from NetBSD.
- Added a
kern.global_ptracesysctl(1) to disable, by default, the ability to ptrace(2) processes that aren't your descendent. - kdump(1) now always displays both the numeric and the textual forms for users, groups, timestamps, and sysctl ids, eliminating the
-roption. It also auto-selects between decimal and hex format for arguments, renders more types of flags, and is more robust when parsing corrupt ktrace files. - chmod(1)/chgrp(1)/chown(8) now comply with POSIX's requirements when they encounter symlinks when the
-Roption is used, and are safe from race conditions when doing so. - The dmesg(8) utility can now display the console message buffer in addition to the system message buffer.
- inetd(8) now uses libevent instead of select(3).
- Reworking of the kernel pool(9) implementation to provide mpsafety and pave the way for performance improvements.
- Removed the workq API after replacing it with the task API.
- Add support for creating kernel threads that cannot sleep to taskq_create(9).
- Completed the implementation of the atomic (eg, atomic_cas_uint(9), atomic_swap_uint(9), atomic_add_int(9), atomic_sub_int(9), atomic_inc_int(9), and atomic_dec_int(9)) and membar (membar_sync(9)) APIs across all supported architectures.
- OpenBSD httpd(8):
- SSLv2/3 is not supported anymore; renamed all occurrences of "SSL" to "TLS".
- Various TLS improvements with better support for ECDHE/DHE forward secrecy.
- Improved support for virtual hosts by supporting name- and IP- based aliases.
- Added support for basic authentication by checking against files created with htpasswd(1).
- Added support for custom error codes, blocking and dropping of connections.
- Added support for redirections and macros in specified target URLs.
- Added the "root strip" option to sanitize PATH_INFO for some CGI scripts.
- Added an option to specify an alternative log directory instead of /var/www/logs.
- Various FastCGI improvements; httpd(8) is now compatible with many well-known web applications.
- Various other fixes and improvements.
- OpenSMTPD 5.4.4:
- SSLv3 is not supported anymore.
- Added support for a new message and headers parser.
- Added support for append-domain.
- Restricted address lookups to configured address families.
- Domain is no longer required when mailing a local user.
- Various other fixes and improvements.
- OpenSSH 6.8
- Potentially-incompatible changes:
- sshd(8):
UseDNSnow defaults to 'no'. Configurations that match against the client host name (via sshd_config(5) orauthorized_keys) may need to re-enable it or convert to matching against addresses.
- sshd(8):
- New/changed features:
- Much of OpenSSH's internal code has been re-factored to be more library-like. These changes are mostly not user-visible, but have greatly improved OpenSSH's testability and internal layout.
- Add
FingerprintHashoption to ssh(1) and sshd(8), and equivalent command-line flags to the other tools to control algorithm used for key fingerprints. The default changes from MD5 to SHA256 and format from hex to base64. Fingerprints now have the hash algorithm prepended. Please note that visual host keys will also be different. - ssh(1),
sshd(8):
Experimental host key rotation support. Add a protocol extension
for a server to inform a client of all its available host keys after
authentication has completed. The client may record the keys in
known_hosts, allowing it to upgrade to better host key algorithms and a server to gracefully rotate its keys. The client side of this is controlled by aUpdateHostkeysconfig option (default off). - ssh(1):
Add a
ssh_config(5)
HostbasedKeyTypeoption to control which host public key types are tried during host-based authentication. - ssh(1), sshd(8): fix connection-killing host key mismatch errors when sshd(8) offers multiple ECDSA keys of different lengths.
- ssh(1): when host name canonicalisation is enabled, try to parse host names as addresses before looking them up for canonicalisation. Fixes bz#2074 and avoiding needless DNS lookups in some cases.
- ssh-keygen(1), sshd(8): Key Revocation Lists (KRLs) no longer require OpenSSH to be compiled with OpenSSL support.
- ssh(1), ssh-keysign(8): Make ed25519 keys work for host based authentication.
- sshd(8): SSH protocol v.1 workaround for the Meyer, et al., Bleichenbacher Side Channel Attack. Fake up a bignum key before RSA decryption.
- sshd(8):
Remember which public keys have been used for authentication and
refuse to accept previously-used keys. This allows
AuthenticationMethods=publickey,publickeyto require that users authenticate using two different public keys. - sshd(8):
add
sshd_config(5)
HostbasedAcceptedKeyTypesandPubkeyAcceptedKeyTypesoptions to allow sshd(8) to control what public key types will be accepted. Currently defaults to all. - sshd(8):
Don't count partial authentication success as a failure against
MaxAuthTries. - ssh(1):
Add
RevokedHostKeysoption for the client to allow text-file or KRL-based revocation of host keys. - ssh-keygen(1), sshd(8): Permit KRLs that revoke certificates by serial number or key ID without scoping to a particular CA.
- ssh(1):
Add a "Match canonical" criteria that allows
ssh_config(5)
Matchblocks to trigger only in the second config pass. - ssh(1):
Add a
-Goption to ssh(1) that causes it to parse its configuration and dump the result to stdout, similar to "sshd -T". - ssh(1):
Allow
Matchcriteria to be negated (e.g. "Match !host"). - The regression test suite has been extended to cover more OpenSSH features. The unit tests have been expanded and now cover key exchange.
- The following significant bugs have been fixed in this release:
- ssh-keyscan(1): ssh-keyscan(1) has been made much more robust again servers that hang or violate the SSH protocol.
- ssh(1), ssh-keygen(1): Fix regression bz#2306: Key path names were being lost as comment fields.
- ssh(1):
Allow
ssh_config(5)
Portoptions set in the second config parse phase to be applied (they were being ignored). (bz#2286) - ssh(1): Tweak config re-parsing with host canonicalisation—make the second pass through the config files always run when host name canonicalisation is enabled (and not whenever the host name changes). (bz#2267)
- ssh(1): Fix passing of wildcard forward bind addresses when connection multiplexing is in use. (bz#2324)
- ssh-keygen(1): Fix broken private key conversion from non-OpenSSH formats. (bz#2345)
- ssh-keygen(1): Fix KRL generation bug when multiple CAs are in use.
- Various fixes to manual pages. (bz#2273, bz#2288 and bz#2316)
- Potentially-incompatible changes:
- LibreSSL
- User-visible features:
- Reluctantly add server-side support for
TLS_FALLBACK_SCSV. - Import BoringSSL's crypto bytestring and crypto bytebuilder APIs.
- Jettison DTLS over SCTP.
- Move
openssl(1)
from
/usr/sbin/opensslto/usr/bin/openssl. - Two important cipher suites, GOST and Camellia, have been reworked or reenabled, providing better interoperability with systems around the world.
- libtls: New API for loading CA chains directly from memory instead of a file, allowing verification with privilege separation in a chroot(8) without direct access to CA certificate files.
- libtls: Ciphers default to TLSv1.2 with AEAD and PFS.
- libtls: Improved error handling and message generation.
- Added
X509_STORE_load_memAPI for loading certificates from memory. This facilitates accessing certificates from a chrooted environment. - New AEAD "MAC alias" allows configuring TLSv1.2 AEAD ciphers by using 'TLSv1.2+AEAD' as the cipher selection string.
- New
openssl(1)
command '
certhash' replaces thec_rehashscript. - Application-Layer Protocol Negotiation (ALPN) support.
- Reluctantly add server-side support for
- Code improvements:
- Dead and disabled code removal including MD5, Netscape workarounds, non-POSIX IO, SCTP, RFC 3779 support, "#if 0" sections, and more.
- The ASN1 macros are expanded to aid readability and maintainability.
- Various NULL pointer asserts removed in favor of letting the OS/signal handler catch them.
- Dozens of issues found with the Coverity scanner fixed.
- Security updates:
- Fix a Bleichenbacher style timing oracle with bad PKCS padding.
- Fix memory leaks.
- Address POODLE attack by disabling SSLv3 by default.
- SHA256 Camellia cipher suites for TLS 1.2 from RFC 5932.
- Earlier libtls support for non-blocking sockets and randomized session ID contexts.
- Ensure the stack is marked non-executable for assembly sections.
- Multiple CVEs fixed including CVE-2014-3506, CVE-2014-3507, CVE-2014-3508, CVE-2014-3509, CVE-2014-3510, CVE-2014-3511, CVE-2014-3570, CVE-2014-3572, CVE-2014-8275, CVE-2015-0205 and CVE-2015-0206.
- User-visible features:
- mandoc 1.13.3:
- man(1), apropos(1), and mandoc(1) now have a unified user interface, all with the same options, and are in fact all implemented by the same binary program.
- For man(1), this implies new options -l and -IKOTW, and it now finds manual pages by the names in their NAME sections even if they lack matching file names.
- For apropos(1), this implies new options -acfhklw and -IKOTW.
- For mandoc(1), this implies new options -acfhkl.
- mandoc(1) now automatically detects and transparently accepts input encoded in utf-8 and iso-8859-1, and provides a new option -K to explicitly specify the input encoding.
- The mandoc(1) default output mode now is -Tlocale rather than -Tascii.
- eqn(7) now supports in-line equations, and terminal rendering of equations is considerably improved.
- mandoc(1) -Thtml now generates polyglot HTML5 and renders eqn(7) using MathML.
- mandoc(1) can no longer fail with fatal errors, no matter how broken the input file may be, and the -Wfatal message level no longer has any effect. A new diagnostic level -Wunsupp is provided. Besides, many diagnostic messages are now more specific.
- Many crashes were fixed that Jonathan Gray found with the American Fuzzy Lop (afl).
- Syslogd:
- OpenBSD syslogd(8) is based on libevent now.
- Sending and receiving UDP messages works with both IPv4 and IPv6.
- Syslog messages can also be sent over TCP or TLS. The syntax to specify the loghost is documented in syslog.conf(5).
- Sending over TCP and TLS is reliable. If a connection terminates, syslogd tries to reconnect. When the message buffer in memory gets full, the number of dropped messages is counted and logged.
- With TLS, the X.509 certificate of the syslog server is verified.
- The maximum message size has been increased according to newer RFC.
- Ports and packages:
- Over 9,000 ports.
- Many pre-built packages for each architecture:
- i386: 8722
- sparc64: 8184
- alpha: 6811
- sh: 0
- amd64: 8745
- powerpc: 8286
- m88k: 1148
- sparc: 4026
- arm: 0
- hppa: 6718
- vax: 1550
- mips64: 1595
- mips64el: 6914
- Some highlights:
- Chromium 40.0.2214.115
- Emacs 21.4 and 24.4
- GCC 4.8.4 and 4.9.2
- GHC 7.8.4
- GNOME 3.14.2
- Go 1.4.1
- Groff 1.22.3
- JDK 1.7.0.71
- KDE 3.5.10 and 4.14.3
- LLVM/Clang 3.5 (20140228)
- LibreOffice 4.3.5.2
- MariaDB 10.0.16
- Mono 3.12.0
- Mozilla Firefox 31.4.0esr and 35.0.1
- Mozilla Thunderbird 31.4.0
- Node.js 0.10.35
- OpenLDAP 2.3.43 and 2.4.40
- PHP 5.3.29, 5.4.38, 5.5.22 and 5.6.5
- Postfix 2.11.4
- PostgreSQL 9.4.1
- Python 2.7.9 and 3.4.2
- R 3.1.2
- Ruby 1.8.7.374, 1.9.3.551, 2.0.0.598, 2.1.5, and 2.2.0
- Sendmail 8.15.1
- Tcl/Tk 8.5.16 and 8.6.2
- TeX Live 2013
- Vim 7.4.475
- Xfce 4.10
- As usual, steady improvements in manual pages and other documentation.
- The system includes the following major components from outside suppliers:
- Xenocara (based on X.Org 7.7 with xserver 1.16.4 + patches, freetype 2.5.5, fontconfig 2.11.1, Mesa 10.2.9, xterm 314, xkeyboard-config 2.13 and more)
- Gcc 4.2.1 (+ patches) and 3.3.6 (+ patches)
- Perl 5.20.1 (+ patches)
- SQLite 3.8.6 (+ patches)
- NSD 4.1.1
- Unbound 1.5.2
- Sudo 1.7.2p8
- Ncurses 5.7
- Binutils 2.15 (+ patches)
- Gdb 6.3 (+ patches)
- Less 458 (+ patches)
- Awk Aug 10, 2011 version
How to install
Following this are the instructions which you would have on a piece of paper if you had purchased a CDROM set instead of doing an alternate form of install. The instructions for doing an HTTP (or other style of) install are very similar; the CDROM instructions are left intact so that you can see how much easier it would have been if you had purchased a CDROM instead.
Please refer to the following files on the three CDROMs or mirror site for extensive details on how to install OpenBSD 5.7 on your machine:
- .../OpenBSD/5.7/alpha/INSTALL.alpha (on CD1)
- .../OpenBSD/5.7/i386/INSTALL.i386 (on CD1)
-
.../OpenBSD/5.7/hppa/INSTALL.hppa (on CD1)
- .../OpenBSD/5.7/amd64/INSTALL.amd64 (on CD2)
-
.../OpenBSD/5.7/macppc/INSTALL.macppc (on CD2)
- .../OpenBSD/5.7/sparc64/INSTALL.sparc64 (on CD3)
-
.../OpenBSD/5.7/sparc/INSTALL.sparc (on CD3)
- .../OpenBSD/5.7/alpha/INSTALL.alpha
- .../OpenBSD/5.7/armish/INSTALL.armish
- .../OpenBSD/5.7/aviion/INSTALL.aviion
- .../OpenBSD/5.7/hppa/INSTALL.hppa
- .../OpenBSD/5.7/landisk/INSTALL.landisk
- .../OpenBSD/5.7/loongson/INSTALL.loongson
- .../OpenBSD/5.7/luna88k/INSTALL.luna88k
- .../OpenBSD/5.7/macppc/INSTALL.macppc
- .../OpenBSD/5.7/octeon/INSTALL.octeon
- .../OpenBSD/5.7/sgi/INSTALL.sgi
- .../OpenBSD/5.7/socppc/INSTALL.socppc
- .../OpenBSD/5.7/sparc/INSTALL.sparc
- .../OpenBSD/5.7/vax/INSTALL.vax
- .../OpenBSD/5.7/zaurus/INSTALL.zaurus
Quick installer information for people familiar with OpenBSD, and the use of the "disklabel -E" command. If you are at all confused when installing OpenBSD, read the relevant INSTALL.* file as listed above!
OpenBSD/i386:
The OpenBSD/i386 release is on CD1. Boot from the CD to begin the install - you may need to adjust your BIOS options first.
If your machine can boot from USB, you can write install57.fs or miniroot57.fs to a USB stick and boot from it.
If you can't boot from a CD, floppy disk, or USB, you can install across the network using PXE as described in the included INSTALL.i386 document.
If you are planning on dual booting OpenBSD with another OS, you will need to read INSTALL.i386.
OpenBSD/amd64:
The OpenBSD/amd64 release is on CD2. Boot from the CD to begin the install - you may need to adjust your BIOS options first.
If your machine can boot from USB, you can write install57.fs or miniroot57.fs to a USB stick and boot from it.
If you can't boot from a CD, floppy disk, or USB, you can install across the network using PXE as described in the included INSTALL.amd64 document.
If you are planning to dual boot OpenBSD with another OS, you will need to read INSTALL.amd64.
OpenBSD/macppc:
Burn the image from a mirror site to a CDROM, and power on your machine while holding down the C key until the display turns on and shows OpenBSD/macppc boot.
Alternatively, at the Open Firmware prompt, enter boot cd:,ofwboot /5.7/macppc/bsd.rd
OpenBSD/sparc64:
5.7 Errata 001: Unfortunately, 5.7 cannot boot from CDROM on some machines due a bootloader bug.
Put CD3 in your CDROM drive and type boot cdrom.
If this doesn't work, or if you don't have a CDROM drive, you can write CD3:5.7/sparc64/floppy57.fs or CD3:5.7/sparc64/floppyB57.fs (depending on your machine) to a floppy and boot it with boot floppy. Refer to INSTALL.sparc64 for details.
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install will most likely fail.
You can also write CD3:5.7/sparc64/miniroot57.fs to the swap partition on the disk and boot with boot disk:b.
If nothing works, you can boot over the network as described in INSTALL.sparc64.
OpenBSD/alpha:
Write 5.7/alpha/floppy57.fs or 5.7/alpha/floppyB57.fs (depending on your machine) to a diskette and enter boot dva0. Refer to INSTALL.alpha for more details.
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install will most likely fail.
OpenBSD/armish:
After connecting a serial port, Thecus can boot directly from the network either tftp or http. Configure the network using fconfig, reset, then load bsd.rd, see INSTALL.armish for specific details. IOData HDL-G can only boot from an EXT-2 partition. Boot into linux and copy 'boot' and bsd.rd into the first partition on wd0 (hda1) then load and run bsd.rd, preserving the wd0i (hda1) ext2fs partition. More details are available in INSTALL.armish.
OpenBSD/hppa:
Boot over the network by following the instructions in INSTALL.hppa or the hppa platform page.
OpenBSD/landisk:
Write miniroot57.fs to the start of the CF or disk, and boot normally.
OpenBSD/loongson:
Write miniroot57.fs to a USB stick and boot bsd.rd from it or boot bsd.rd via tftp. Refer to the instructions in INSTALL.loongson for more details.
OpenBSD/luna88k:
Copy 'boot' and 'bsd.rd' to a Mach or UniOS partition, and boot the bootloader from the PROM, and the bsd.rd from the bootloader. Refer to the instructions in INSTALL.luna88k for more details.
OpenBSD/octeon:
After connecting a serial port, boot bsd.rd over the network via DHCP/tftp. Refer to the instructions in INSTALL.octeon for more details.
OpenBSD/sgi:
To install, burn cd57.iso on a CD-R, put it in the CD drive of your machine and select Install System Software from the System Maintenance menu. Indigo/Indy/Indigo2 (R4000) systems will not boot automatically from CD-ROM, and need a proper invocation from the PROM prompt. Refer to the instructions in INSTALL.sgi for more details.
If your machine doesn't have a CD drive, you can setup a DHCP/tftp network server, and boot using "bootp()/bsd.rd.IP##" using the kernel matching your system type. Refer to the instructions in INSTALL.sgi for more details.
OpenBSD/socppc:
After connecting a serial port, boot over the network via DHCP/tftp. Refer to the instructions in INSTALL.socppc for more details.
OpenBSD/sparc:
Boot from one of the provided install ISO images, using one of the two commands listed below, depending on the version of your ROM.
ok boot cdrom 5.7/sparc/bsd.rd or > b sd(0,6,0)5.7/sparc/bsd.rd
If your SPARC system does not have a CD drive, you can alternatively boot from floppy. To do so you need to write floppy57.fs to a floppy. For more information see this page. To boot from the floppy use one of the two commands listed below, depending on the version of your ROM.
ok boot floppy or > b fd()
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install will most likely fail.
If your SPARC system doesn't have a floppy drive nor a CD drive, you can either setup a bootable tape, or install via network, as told in the INSTALL.sparc file.
OpenBSD/vax:
Boot over the network via mopbooting as described in INSTALL.vax.
OpenBSD/zaurus:
Using the Linux built-in graphical ipkg installer, install the openbsd57_arm.ipk package. Reboot, then run it. Read INSTALL.zaurus for a few important details.
How to upgrade
If you already have an OpenBSD 5.6 system, and do not want to reinstall, upgrade instructions and advice can be found in the Upgrade Guide.
Notes about the source code
src.tar.gz contains a source archive starting at /usr/src.
This file contains everything you need except for the kernel sources, which are
in a separate archive. To extract:
# mkdir -p /usr/src # cd /usr/src # tar xvfz /tmp/src.tar.gz
sys.tar.gz contains a source archive starting at /usr/src/sys.
This file contains all the kernel sources you need to rebuild kernels.
To extract:
# mkdir -p /usr/src/sys # cd /usr/src # tar xvfz /tmp/sys.tar.gz
Both of these trees are a regular CVS checkout. Using these trees it is possible to get a head-start on using the anoncvs servers as described here. Using these files results in a much faster initial CVS update than you could expect from a fresh checkout of the full OpenBSD source tree.
Ports Tree
A ports tree archive is also provided. To extract:
# cd /usr # tar xvfz /tmp/ports.tar.gz
Go read the ports page if you know nothing about ports at this point. This text is not a manual of how to use ports. Rather, it is a set of notes meant to kickstart the user on the OpenBSD ports system.
The ports/ directory represents a CVS (see the manpage for cvs(1) if you aren't familiar with CVS) checkout of our ports. As with our complete source tree, our ports tree is available via AnonCVS. So, in order to keep up to date with the -stable branch, you must make the ports/ tree available on a read-write medium and update the tree with a command like:
# cd /usr/ports # cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_5_7
[Of course, you must replace the server name here with a nearby anoncvs server.]
Note that most ports are available as packages on our mirrors. Updated ports for the 5.7 release will be made available if problems arise.
If you're interested in seeing a port added, would like to help out, or just would like to know more, the mailing list ports@openbsd.org is a good place to know.
