top page > PC unix (2) > here

FreeBSD/amd64 10.3 on Endeavor NP25S


概要

Endeavor NP25S (EPSON) に FreeBSD/amd64 10.3 を install しましたので,その記録を提示します.

→ この OS を入れた HDD が壊れました. 続きは新たな PC で行なうことにしました. ST180E を参照して下さい.


目次

1. まえがき
2. install
3. X Window System
4. vt driver
5. firefox

1. まえがき

FreeBSD 9.3 からいきなり 10.3 に更新しました. 今後はこちらを常用する環境として使い込んで行きたいと思います.

2. install

freebsd-update を用いて,FreeBSD 9.3 から 10.3 へと更新しました. 従って,AFT の件は再検討できませんでした.

/var の容量が不安だったので,/etc/freebsd-update.confWorkDir を以下のように変更しました.

--- freebsd-update.conf.orig    2013-06-03 09:08:56.000000000 +0900
+++ freebsd-update.conf 2016-04-02 14:32:34.000000000 +0900
@@ -42,6 +42,7 @@
 # Directory in which to store downloaded updates and temporary
 # files used by FreeBSD Update.
 # WorkDir /var/db/freebsd-update
+WorkDir /usr/freebsd-update

 # Destination to send output of "freebsd-update cron" if an error
 # occurs or updates have been downloaded.

新たに設定した WorkDir は,mkdir しておく必要があります.

 # mkdir /usr/freebsd-update

更新は以下の手順で行ないました.(まさに「教科書通り」です.)

  # freebsd-update upgrade -r 10.3-RELEASE      [1]
  # freebsd-update install
  # shutdown -r now

  # freebsd-update install
  # portupgrade -f -a            [2]
  # freebsd-update install
  # shutdown -r now

[1] FreeBSD 9.3 では kernel として GENERIC でなく VT を使っていたので,作業の途中で「kernel は手作業で入れ替えてね」という警告を受けました. その「手作業」の手順を調べるのがおっくうだったので,kernel を GENERIC に戻してやり直しました.

[2] ports/misc/freebsd-doc-?? を ports から導入しようとすると,関連する ports が大量にあって凄いことになります. それゆえ,私は ports/misc/freebsd-doc-{en,de,fr,ja,ru} は packages から導入しております.
  ところが,この状態で portupgrade を使ってしまったので,当然ですが凄いことになりました. この場合,これらを先ず pkg install で最新のものに更新してから portupgrade すれば良いのだと思います.

3. X Window System

X Server は 1.17.4 が導入されます. /etc/make.conf には X に関しては何も設定しておりません.

ports で言えば X Server 1.14.7 以後の話ですが,X に関して誤解を招くような情報も散見致しますので,補足しておきます.

  1. HAL は廃止になったのではなく,devd とは排他的な option として残っています.
    ただ,X.Org 自身が HAL を "Future Removed" の項目に入れているので,頑張って使い続けない方が良いと思います.
  2. devd は,以前から FreeBSD にて稼働しています. 例えば,PC の電源が入った状態で USB mouse を挿すと moused が動き始めるのは devd がからんでいます. しかし,X Server と直接の情報のやり取りはしておりませんでした.
    今回,それをするようになったということです.
  3. xorg.conf は廃止になったのではなく,使うことはできます. 現在の推奨される置き場は /usr/local/etc/X11/ です.
    単一のファイルでなく /usr/local/etc/X11/xorg.conf.d/ の中にばらして置くこともできます.
    (X Server は両方を読みに行きます.)
  4. HAL も devd も使わないという選択も,引き続き可能です.

以下は,/usr/ports/x11-servers/xorg-server/ にて make した際の config の画面の抜粋です.

( ) HAL   Compile with HAL config support
(*) DEVD  Use devd for autoconfiguration of input devices      こちらが default です.

以下は X を起動した際に動的に link される module です.

% kldstat
Id Refs Address            Size     Name
 1   26 0xffffffff80200000 179de78  kernel
 2    1 0xffffffff8199e000 ace8     sem.ko
 3    1 0xffffffff81a11000 358e     ums.ko      ← これは X を起動する前に load されています.
 4    1 0xffffffff81a15000 78703    i915kms.ko  ← これ以下は X を起動すると自動的に load されます.
 5    1 0xffffffff81a8e000 522db    drm2.ko
 6    4 0xffffffff81ae1000 22bb     iicbus.ko
 7    1 0xffffffff81ae4000 1a51     iic.ko
 8    1 0xffffffff81ae6000 1e48     iicbb.ko

HAL を選択した X Server にて HAL を使う方法,使わない方法は従来と同じです. (HAL を使う場合,設定ファイルは従来の流儀だけでなく下記の DEVD と同じものも使えますが,ここでは追求しません.)

一方,DEVD を選択した X Server ですが,devd を使わない方法は HAL を使わない方法と同じです.

devd を使う場合の設定法は,FreeBSD Handbook に例示されています. 例えばキーボードの設定は keyboard.conf に次のように記述します. 置き場は /usr/local/etc/X11/xorg.conf.d/ です.

Section "InputClass"      ← 従来の InputDevice でないことに注意.
        Identifier      "Keyboard1"
        Driver          "keyboard"
        MatchIsKeyboard "on"      ← これは新設された項目です.
        Option     "XkbRules"   "xorg"
        Option     "XkbModel"   "jp106"
        Option     "XkbLayout"  "jp"
        Option     "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

マウスですが,以下には USB マウスについてのみ例示します. (PS/2 マウスを繋ぐことができる PC には新しい FreeBSD や X を導入していないのです.) moused は,/etc/rc.conf に以下のように記述して起動しないようにしています.

moused_nondefault_enable="NO"

マウスの設定が必要な場合には,例えば mouse.conf に次のように記述します.

Section "InputDevice"      ← こちらは InputDevice のままです.
        Identifier  "Mouse1"
        Driver     "mouse"
        Option     "Protocol"   "auto"
        Option     "Device"     "/dev/ums0"
        Option     "Emulate3Buttons"
EndSection

ややこしいのですが,/dev/ums0 の部分を /dev/sysmouse にしても問題なく動作します. (moused は動いていないのに!)

moused を起動すると X の log にて "Device Busy" と言われて Mouse が反応しません. 設定次第では両立できるような気がしますが,試さないことにします.

4. vt driver

FreeBSD 10.3 の GENERIC kernel には sc だけでなく vt も含まれております. 従って,FreeBSD 9.3 の場合のように kernel を再構築する必要はありません.

vt を使う場合には,/boot/loader.conf に以下のように記述します.

kern.vty=vt
hw.vga.textmode=0

相変わらず,dmesg の出力に vt driver に関連する部分はありません.(sc の場合にはあります.)

自前で用意したフォントやキーマップは,ファイルを各々次のところに置きます.

/usr/share/vt/fonts/
/usr/share/vt/keymaps/

これらを OS の boot 直後に利用するためには,/etc/rc.conf に次のように記述します.

font8x16="??????"      フォントのファイル名 (.fnt は省略可)
keymap="?????"         キーマップのファイル名 (.kbd は省略可) [1]

allscreens_flags="-f ?????"  フォントのファイル名 [2]

[1] キーマップのファイル名ですが,sc ではお馴染の "jp.106.kbd" は,vt では "jp.kbd" に変わっております.

sc 用のファイルは /usr/share/syscons/keymaps/ にありますので,jp.kbd の内容を変更したければ,これが参考になります.

[2] " の間には,vidcontrol のパラメーターを記述します. このように設定しないと,[Alt] + [F2] などで切り換わる Virtual Terminal のフォントは自動的には変更されません.

なお,/etc/rc.conf には次のような設定もできるのですが,これなしでもキーマップは変更されています.

allscreens_kbd_flags="?????"

5. firefox

HTML5 を表示する場合には,/boot/loader.conf に次のように設定します.

sem_load="YES"