BSD界隈四方山話

第48回FreeBSD 10.3-RELEASEをbhyveにインストール

FreeBSD 10.3-RELEASE

2016年4月4日(米国時間⁠⁠、FreeBSDプロジェクトからFreeBSDの最新安定版となるFreeBSD 10.3-RELEASEが公開されました。amd64版、i386版、ia64版、powerpc版、powerpc64版、sparc64版、armv6版が公開されています。Amazon EC2、Google Compute Engine、Hashicorp/Atlas Vagrant向けのイメージや仮想環境ディスクイメージも公開されています。

10.3にはセキュリティ修正やバグ修正が取り込まれているほか、起動に関する各種改善が取り込まれています。特にUEFIブート回りの処理が改善しているほか、UEFIシステムでroot-on-zfsのインストールが可能になっています。これ以外の機能向上としてはLinuxバイナリ互換機能の64ビット対応とepoll対応が注目されるほか、rebootの処置対応追加が注目されます。reboot -rのようにすると高速に再起動が実施されることを確認できます。

今回はFreeBSD 10.3-RELEASEの機能をいろいろ試すために、bhyveにFreeBSD 10.3-RELEASEをインストールする方法を紹介します。

仮想環境のセットアップ

次の構成で仮想環境を用意することにします。インストールイメージファイルや設定ファイルなどを適宜用意しておきます。

 ホストとゲストの設定
項目内容
ホストOSFreeBSD 10.3-RELEASE/amd64
ゲストOSFreeBSD 10.3-RELEASE/amd64
ホストNICbge0
ゲストNICtap2 via bridge0
仮想CPU2個
仮想メモリ2GB
仮想ディスク(32BG)/dev/zvol/z/freebsd-10.3
インストーラ/d/bhyve/FreeBSD-10.3-RELEASE-amd64-disc1.iso
リスト /boot/loader.confに追加する設定
vmm_load="YES"
リスト /etc/sysctl.confに追加する設定
net.link.tap.up_on_open=1
リスト /etc/rc.confに追加する設定
cloned_interfaces="bridge0 tap0 tap1 tap2 tap3 tap4 tap5 tap6 tap7 tap8 tap9 tap10 tap11 tap12"
ifconfig_bridge0="addm bge0 addm tap0 addm tap1 addm tap2 addm tap3 addm tap4 addm tap5 addm tap6 addm tap7 addm tap8 addm tap9 addm tap10 addm tap11 addm tap12"

設定ファイルを用意したあとにシステムを再起動しないのであれば、次のようにコマンドを手動で実行します。

 ネットワーク環境をセットアップ
# kldload vmm
# ifconfig tap2 create
# sysctl net.link.tap.up_on_open=1
net.link.tap.up_on_open: 0 -> 1
# ifconfig bridge0 create
# ifconfig bridge0 addm bge0 addm tap2 up

仮想環境で利用する仮想ディスクを次のようにZFSで作成します。

 ゲストの仮想ディスクをセットアップ
# zfs create -V 32G -o volmode=dev z/openbsd-5.9

これで仮想環境のセットアップは完了です。

FreeBSD 10.3インストール

次のようにvmrun.shスクリプトを実行してFreeBSD 10.3インストーラを起動します。

 FreeBSD 10.3インストーラ起動
# sh /usr/share/examples/bhyve/vmrun.sh \
    -i -c 2 -m 2G -t tap2 \
    -d /dev/zvol/z/freebsd-10.3 \
    -I /d/bhyve/FreeBSD-10.3-RELEASE-amd64-disc1.iso \
    freebsd-10.3
 FreeBSD 10.3インストール
FreeBSD 10.3インストール
 FreeBSD 10.3インストール2
FreeBSD 10.3インストール2
 FreeBSD 10.3インストール3
FreeBSD 10.3インストール3

インストールで特に躓くことはないでしょう。インストールが完了したらshutdown -p nowのようにコマンドを実行して仮想環境を終了します。

FreeBSD 10.3 on bhyveを利用

毎回vmrun.shスクリプトを実行するのは面倒なので、次のようなエイリアスを用意します。

 FreeBSD 10.3起動エイリアス
alias bhyve_freebsd_10.3='sudo bhyvectl --destroy --vm=freebsd-10.3; sudo sh /usr/share/examples/bhyve/vmrun.sh -c 2 -m 2G -t tap2 -d /dev/zvol/z/freebsd-10.3 freebsd-10.3; sudo bhyvectl --destroy --vm=freebsd-10.3'

これで次回からbhyve_freebsd_10.3でFreeBSD 10.3-RELEASEの仮想環境が起動してくるようになります。

 FreeBSD 10.3 on bhyve
FreeBSD 10.3 on bhyve
 FreeBSD 10.3 on bhyve 2
FreeBSD 10.3 on bhyve 2
 FreeBSD 10.3 on bhyve 3
FreeBSD 10.3 on bhyve 3

reboot(8)コマンドのマニュアルにrerootの説明(-rオプション)が追加されていることを確認できます。

FreeBSD勉強会 告知

第52回 5月26日(木) 19:00~ FreeBSD翻訳に貢献しよう!基本的なツールの使い方

ソースコードが読めないからドライバを書いたりカーネルを書き換えたりできないし、新しくportsを作るのもちょっと難しい……そう思ってはいませんか? プロジェクトに貢献するのはなにもソースコードだけではありません。FreeBSDにはFreeBSD Handbookという優れたドキュメントがあります。このドキュメントを翻訳するだけでも、多くの日本のユーザに貢献することになります。

FreeBSD Docチームは最近POの機能を取り込んだ翻訳システムを構築して活用しています。このシステムを導入する前に比べると自動化できる部分も増えましたし、システマティックに変更部分を判断することもやりやすくなりました。こうした新しい翻訳作業に関してdocチームは各国で開催されるカンファレンスやサミットでチュートリアルを開催するなど、こうした仕組みを広く伝える取り組みを行っています。

今回の勉強会では、翻訳するにあたって使われているツールやサービスについて紹介したり、実際にどうやって作業を行っているのかの紹介を実施します。実際に翻訳作業をするわけではなくても、新しいドキュメント管理の方法を学ぶという上でも役に立つのではないかと思います。多くの方のご参加をお待ちしております :)

参加申請はこちらから。

おすすめ記事

記事・ニュース一覧