OS起動メッセージをテキストとしてコピーしたり、シングルユーザモードでの操作時にコピー&ペーストする場合は、シリアルコンソールが使えると便利です。
VMware Fusion 上の FreeBSD でシリルコンソールを使う手順を書きます。
以下の手順は VMware Fusion Professional 8.5.0、FreeBSD 9.3-RELEASE で確認しています。
VMware で仮想マシンのシリアルポートを有効にする (telnet)
VMware Fusion の仮想マシン設定でシリアルポートの追加はできますが、ここで作成したシリアルポートはファイル出力しかできないため、シリアルコンソールとして使用できません。
仮想マシン設定ファイル (.vmx) ファイルをテキストエディタで編集して双方向通信可能なシリアルポートを設定します。
なお、ファイルを間違って編集した場合、仮想マシンが起動しなくなりますので、注意が必要です。
対象となる仮想マシンを停止した後、仮想マシン設定ファイル (.vmx) ファイルに以下の内容を追加します。
serial0.present = "TRUE"
serial0.fileType = "network"
serial0.fileName = "telnet://127.0.0.1:5555"
serial0.startConnected = "TRUE"
serial0.fileName
の値は http://kb.vmware.com/kb/2004954 を参考にしています。
この例では、IPアドレス 127.0.0.1、ポート番号 5555、プロトコル telnet でシリアルポートにアクセス可能となります。
127.0.0.1にアクセスできる同一ホスト上のユーザからは誰からでもアクセスできるので、セキュリティには注意が必要です。
ポート番号は他で使われていない、利用可能なポート番号を指定します。
仮想マシン設定ファイル (.vmx) 編集後に VMware Fusion の仮想マシン設定で確認すると、取り外し可能デバイスにシリアルポートが追加され、詳細を確認すると「カスタムのサポートされていない設定」と表示されます。
FreeBSD でシリアルコンソールを有効にする
シリアルコンソールとビデオコンソールのデュアルコンソールを有効にするため、ブートブロック設定ファイル /boot.config
に以下を設定します。
-Dh
シリアルコンソールに接続する
仮想マシンを起動し、telnetコマンドでシリアルコンソールに接続します。
接続先は仮想マシン設定ファイル (.vmx) で設定したIPアドレス、ポート番号です。
なお、BTX loader 1.0 BTX version is 1.02
の行だけはシリアルコンソールではなく通常のコンソールに表示されます。
$ telnet 127.0.0.1 5555
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
/boot/config: -Dh
Consoles: internal video/keyboard serial port
BIOS drive C: is disk0
BIOS 638kB/522176kB available memory
FreeBSD/x86 bootstrap loader, Revision 1.1
(root@snap.freebsd.org, Thu Jul 10 23:35:10 UTC 2014)
Loading /boot/defaults/loader.conf
/boot/kernel/kernel text=0xf0bf90 data=0x13d720+0x123388 syms=[0x8+0x149fb8+0x8+0x15ac2e]
/
Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [/boot/kernel/kernel]...
Copyright (c) 1992-2014 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 9.3-RELEASE-p43 #0: Sat May 28 00:19:32 UTC 2016
root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
gcc version 4.2.1 20070831 patched [FreeBSD]
(中略)
FreeBSD/amd64 (freebsd9) (ttyu0)
login: