BSD界隈四方山話

第67回OpenBSD 6.0登場

OpenBSD 6.0登場

OpenBSDプロジェクトは2016年9月1日、OpenBSDの最新版となる「OpenBSD 6.0」を公開しました。OpenBSDプロジェクトはリリースエンジニアリングに定評があり、確実に半年ごとに最新版をリリースしています。

 OpenBSD 6.0
図 OpenBSD 6.0

OpenBSD 6.0のインストーラはOpenBSDミラーサイトから取得できます。日本に設置されているサーバですと、次のURLからダウンロードできます。

rsync(1)でダウンロードする場合、たとえば次のようにコマンドを実行します。

 rsync(1)を使ってインストーラをダウンロードする例
rsync --progress rsync://ftp.kddilabs.jp/openbsd/6.0/amd64/install60.iso ./

OpenBSD 6.0がサポートしているアーキテクチャはi386、amd64、macppc、sparc64、alpha、armv7、hppa、landisk、loongson、luna88k、octeon、sgi、soppc、zaurusです。新しくインストールしないでOpenBSD 5.9からのアップグレードを行いたい場合、OpenBSD Upgrade Guide: 5.9 to 6.0の内容を参考にしながら作業を行ってみてくださいという説明があります。

新機能や変更点

OpenBSD 6.0でとくに興味深い新機能や変更点をまとめると次のとおりです。

  • セキュリティの改善(W^Xをデフォルトで厳密に適用、setjmp(3)系列の関数でスタックおよびリターンアドレスの値にXORクッキーを適用するように変更、tcpdump(8)の-rオプションを特権ユーザでなくても利用できるように変更、Linuxエミュレーションサポートの廃止、ユーザマウントオプションの廃止、サイバー攻撃に対する耐性を向上させるためにTCP SYNキャッシュにおいて定期的に乱数ハッシュ関数をリシードするように変更、TCPおよびUDPのポートバインディングに特権が必要になるように変更できる機能を追加、mbuf(9)から関数ポインタを削除)
  • ネットワークスタックの改善(高速ルックアップを実現するためにARTベースのルーティングテーブルへ切り替え、フォワーディングパスパケットにおけるルーティングルックアップ回数を1回まで削減、vlan(4)インターフェースを経由するIPv4パケットのVLANヘッダの取り扱いを改善、bpf(4)のクローニングを最大1024まで許可、ネットワークインプットパスをスレッドコンテキスト上で実行されるように変更)
  • ユーザランドネットワークの改善(rc.d(8)およびrcctl(8)にルーティングテーブルの機能を追加、nc(1)にTTLフラグオプション-Mおよび-mを追加、tcpbench(1)にAF_UNIXサポートを追加、arp(8), dhclient(8), dhcpd(8), dhcrelay(8), hostapd(8), mopd(8), npppd(8), rarpd(8), rbootd(8), tcpdump(8)にbpf(4)クローニング機能への対応を追加)
  • IEEE 802.11ワイヤレススタックの改善
  • armv7サポートの改善(EFIブートローダの追加、FFSからの読み込みサポート、サポートするすべてのSoCに対して単一のカーネルイメージで対応、スタティックテーブルベースのデバイス判定からFDT(Flattened Device Tree)をつかったダイナミックな検出方法へ切り替えなど)
  • インストーラの改善
  • 各種ドライバのアップデートと機能追加

ユーザランドにマージされている代表的なアプリケーションは次のバージョンにアップグレードされました。

  • OpenSMTPD 6.0.0
  • OpenSSH 7.3
  • OpenNTPD 6.0
  • LibreSSL 2.4.2

大きな変更が実施されたバージョンというよりも、半年分の開発の成果物がまとまったバージョンといったように見えます。いくつか安定性の改善につながる変更が取り込まれていますので、該当する場合にはOpenBSD 5系からOpenBSD 6.0へアップグレードしたほうがよいと思います。

パッケージ

OpenBSD 6.0ではそれぞれのパッケージごとに次の数のパッケージが提供されています。

  • alpha: 7422
  • amd64: 9433
  • hppa: 6346
  • i386: 9394
  • mips64: 7921
  • mips64el: 7767
  • powerpc: 8318
  • sparc64: 8570

注目のアプリケーションとしては次が掲載されています。

  • Afl 2.19b
  • Chromium 51.0.2704.106
  • Emacs 21.4 and 24.5
  • GCC 4.9.3
  • GHC 7.10.3
  • Gimp 2.8.16
  • GNOME 3.20.2
  • Go 1.6.3
  • Groff 1.22.3
  • JDK 7u80 and 8u72
  • KDE 3.5.10 and 4.14.3 (plus KDE4 core updates)
  • LLVM/Clang 3.8.0
  • LibreOffice 5.1.4.2
  • Lua 5.1.5, 5.2.4, and 5.3.3
  • MariaDB 10.0.25
  • Mono 4.4.0.182
  • Mozilla Firefox 45.2.0esr and 47.0.1
  • Mozilla Thunderbird 45.2.0
  • Mutt 1.6.2
  • Node.js 4.4.5
  • Ocaml 4.3.0
  • OpenLDAP 2.3.43 and 2.4.44
  • PHP 5.5.37, 5.6.23, and 7.0.8
  • Postfix 3.1.1 and 3.2-20160515
  • PostgreSQL 9.5.3
  • Python 2.7.12, 3.4.5, and 3.5.2
  • R 3.3.1
  • Ruby 1.8.7.374, 2.0.0.648, 2.1.9, 2.2.5, and 2.3.1
  • Rust 1.9.0-20160608
  • Sendmail 8.15.2
  • Sudo 1.8.17.1
  • Tcl/Tk 8.5.18 and 8.6.4
  • TeX Live 2015
  • Vim 7.4.1467
  • Xfce 4.12

今回のPortsツリーにはproot(1)と呼ばれる、chroot環境でパッケージをビルドするためのツールが追加された点も注目点として挙げられています。

使ってみようOpenBSD

だいたいよく好んでいる*BSD以外は普段使うことはないと思いますが、新しくリリースされたタイミングで仮想環境にインストールするなどして一通り触ってみることをお薦めします。*BSDファミリーは構造が似ていますので手探りでいろいろと使えますし、新しい発見や普段は考えなかった発想などを見つけることができると思います。

おすすめ記事

記事・ニュース一覧