FreeBSDインストールレシピ

ここではDEC社製Celebris GL200に対しFreeBSD3.xをインストールする事を前提に記述します.

インストールディスクの作成

FreeBSDのインストールはまずインストールデスクの準備から始めます. 材料は
  1. 1.44MByteのフロッピーディスク 2枚。
  2. FreeBSDが収録されているCDROM(FreeBSD3.xを想定)もしくはftp://ftp3.jp.freebsd.org/pub/FreeBSD/3.1-RELEASE/floppies/kern.flpをダウンロードする
  3. Win95マシンまたはFreeBSDマシン
Win95マシンよりインストールディスクを作る手順は以下の通りです.
  1. CDROM(F:と仮定)と1.44MByteのフロッピーディスクをWin95マシンにいれます.
  2. C:\tmpに日本語版boot.flpをダウンロードします.
  3. C:\tmpにcdで移動し F:\tools\rawrite.exe boot.flp a: を実行します. 後は待つだけです.
FreeBSDマシンからは以下のようにddを使えば書き込めます。
  1. dd if=kern.flp of=/dev/rfd0
  2. dd if=mfsroot.flp of=/dev/rfd0

FreeBSDのインストール

  1. インストールディスクをCelebris GL200に入れて起動します. このときフロッピードライブからのブートが出来るようにBIOSを設定しておきます. この時点でインストールに使うCDROMを入れておきます.
  2. メニューがでてきたらインストールの手順で"カスタム"を選択します. すると以下のようなメニューがでてきます.
    1.オプション
    2.パーティション
    3.ラベル
    4.配布ファイル
    5.メディア
    6.コミット
    7.展開
    0.終了
  3. 2.パーティションを選択しFreeBSDが使用できる領域を確保する. 手順は
    1. unusedになっているパーティーションにカーソルをもっていきCをおす.
    2. 使用するバイト数を入力する.
    3. フォーマットの種類(165)を入力する.
    4. Qで終了する.
    5. ブートマネージャをインストールするため
      (*)Bootmgr FreeBSD ブートマネージャ。。。。。。。
      でOKにする.
  4. 3.ラベルを選択しFreeBSDが使用するボリュームをパーティションからスライスする.

    /の作成

    1. ディスクwd0の区画名wd0s1(パーティーションの切り方により異なる)にカーソルをもっていきCを押してスライスする.
    2. 容量を150MByteとする.
    3. FSを選択してファイルシステムとして扱う.
    4. マウントポイントに"/"を設定.

    swapの作成

    1. ディスクwd0の区画名wd0s1(パーティーションの切り方により異なる)にカーソルをもっていきCを押してスライスする.
    2. 容量を256MByteとする.(メモリーの倍が目安)
    3. SWAPを指定してSWAPディスクとして使用する.

    /varの作成

    1. ディスクwd0の区画名wd0s1(パーティーションの切り方により異なる)にカーソルをもっていきCを押してスライスする.
    2. 容量を500MByteとする.
    3. FSを選択してファイルシステムとして扱う.
    4. マウントポイントに"/var"を設定.

    /usrの作成

    1. ディスクwd0の区画名wd0s1(パーティーションの切り方により異なる)にカーソルをもっていきCを押してスライスする.
    2. 容量を500MByteとする.(容量を残り全部にする)
    3. FSを選択してファイルシステムとして扱う.
    4. マウントポイントに"/usr"を設定.

    /homeの作成

    1. ディスクwd0の区画名wd0s1(パーティーションの切り方により異なる)にカーソルをもっていきCを押してスライスする.
    2. 容量を100MByteとする.
    3. FSを選択してファイルシステムとして扱う.
    4. マウントポイントに"/home"を設定.
    最後にQをおしてラベルの設定を終了する.
  5. 4.配布ファイルを選択しインストールするものを設定する.
    1. "X-ユーザ"というタグが現れるので, そこにカーソルをもっていきスペースキーを押す.
    2. crypt関数のインストールで米国外なのでインストールしないを意味するNOを選択する.
    3. portsコレクションをインストールするか聞いてくるが, ここでは行なわない. 従ってNOを選択する.
    4. X-Window関係のインストールするものを聞いてくるので以下の項目を設定する.
      1. B.基本のところでdoc, html, prog,lkitを新たに選択する.
      2. S.サーバのところではSVGAサーバが選択されているか確認する.
      3. F.フォントのところではすべてを選択する.
    最後に終了を選択してこのメニューからでる.
  6. 5.メディアを選択してインストールメディアを選ぶ. ここではCDROMを選択します. もしネットワークインストールの場合はネットワークカードの初期化をする. 入力する項目はホスト名, ドメイン名, ゲートウェイ, ネームサーバ, IPアドレス, ネットマスクをいれる.
  7. 6.コミットを選択してインストール作業を実行します. ここではいろいろ恐い事を言ってきますが勇気を出してyesを選択します. バイナリーのインストールが終了すると細かい設定を聞いてきます. まず未設定オプションを設定するの選択で"yes"とします. すると以下のようなメニューがでてきます.
    1. D. 配布ファイル
    2. P. パッケージ
    3. R. rootパスワード
    4. F. Fdisk
    5. L. Label
    6. 1. ユーザ管理
    7. 2. コンソール
    8. 3. タイムゾーン
    9. 4. メディア
    10. 5. マウス
    11. 6. ネットワーク
    12. 7. スタートアップ
    13. 8. オプション
    14. D. HTML DOCS
    ここで設定する必要があるところはコンソール, タイムゾーン, マウス, ネットワークの設定, スタートアップ, rootパスワードです.
    1. 2.コンソールでの設定はキーマップ, キーのリピート, スクリーンセイバーです.
      1. キーマップにJapanese106をスペースキーを用いて選択.
      2. リピート速度は高速
      3. スクリーンセイバーにブランクを選択する.
      4. 最後に終了を選択してこのメニューからでる.
    2. 3.タイムゾーンの設定
      タイムゾーンで設定する項目は時間区分をJSTに設定するところにある.
      1. タイムゾーンを選択し最初にでてくる選択肢でNOと答える.
      2. 次にアジアの中にあるJapanを選択します. ここでmost location と south ryuukyuu islandと聞いてくるが1.のmost location を選択する.
      3. 最後に確認の意味でJSTかと確認を聞いてくるので改めてJSTを選択する.
    3. 5.マウスの設定
      ここではマウスポートの設定とマウスデーモンの設定を行ないます.
      1. "2.ポート"でマウスポートをPS/2にする.
      2. またマウスデーモンの項目もあるがここでは無効にする.
      3. 最後に終了を選択してこのメニューからでる.
    4. "6.ネットワークの設定"
      NFSクライアントやサーバになるかの設定はここで行なうが, ここでは主にNICの設定を行なう.
      1. インターフェースの項目でスペースキーを押す. またここではNICのデバイス名にfxp00を指定する.
      2. NICの設定画面になるのでホスト名(FQDN), ドメイン名, ゲートウェイ, ネームサーバ, IPアドレス, ネットマスクを入力する.
      3. ifconfigのパラメータに"media 100baseTX"を入力する.
      4. 最後に終了を選択してこのメニューからでる.
      ntpの項目では
        2.ntp サイトを指定する.
      NFS Clientをスペースで選択する.
    5. 7.スタートアップ
      この項目ではNISサーバ/クライアント, プロセスアカウンティング, lpd, Linax Emulator, quota, のスタートアップ設定を行なう. ここではpccard mem, pccard ifconfig, startup dirs, accounting. lpd, linux にマークする.
    6. R.rootパスワード
      ルートのパスワードの設定をここで行なう.
  8. 以上の作業が終了したら導入終了を選択して作業を終らせリブートする.

起動後の設定

再起動させたらrootでログインする.

/etc/rc.conf

  1. /etc/rc.confに記述されているntpdate_enableをYESにし, ntpdate_flags="tipgw2.t-kougei.ac.jp"にして時刻を自動修正させる.

Wnnをインストールするためにwnnユーザとwnnグループを作成する.

  1. /etc/groupにwnnグループを登録する.
          wnn:*:999:
          
  2. /etc/passwdにwnnユーザを作成する. vipwを用い、以下のような記述をする.
          wnn:*:999:999::0:0:Wnn User:/nonexistent:/sbin/nologin
          

/usr/X11R6と/usr/localの場所変更.

/usr/X11R6と/usr/localは/usrにありフリーウェアのインストール状況によってディスクを圧迫する可能性があるので/homeに移動するのが望ましい. 方法としては
  1. X11R6, localをtarで固め/homeにて解凍するのが最も単純であるが, cp -p -Rでコピーするのも一つの手です.

X-Windowの設定

  1. /usr/X11R6/bin/xf86configを起動
  2. メッセージが出力されるのでエンターキーを押す.
  3. マウスの選択で4. PS/2 Mouseを選択する.
  4. 3ボタンのエミュレーションを聞いてくるのでyを選ぶ.
  5. Mouseデバイスを聞いてくるので/dev/psm0を指定.
  6. "Do you want to use XKB?" はnと答える.
  7. "....binding for the Alt key?"はnと答える.
  8. メッセージがでてくるのでエンターキーを押す.
  9. 水平同期信号を指定する. ディスプレイが30〜80であるので11を選び30-86と入力する.
  10. 垂直同期信号を指定する. ディスプレイが50から130であるので5を選び50-130と入力する.
  11. モニター定義名を聞いてくるのでエンターを押す.
  12. 製造者を聞いてくるのでエンターを押す.
  13. モデル番号を聞いてくるのでエンターを押す.
  14. "....card data base ?" と聞いてくるのでエンターを押す.
  15. SVGAを選択するので3を入力
  16. "/usr/X11R6/bin/X"にリンクを張るか聞いてくるのでyを押す.
  17. ビデオメモリーの大きさを聞いてくる. 自動判別させるためにエンターを押す. もし8Mだった場合には6のotherを選択し8192と代入する.
  18. ビデオカードの定義名を聞いてくるのでエンターを押す.
  19. 製造者を聞いてくるのでエンターを押す.
  20. モデル番号を聞いてくるのでエンターを押す.
  21. RAMDACの指定を聞いてくるが指定しないのでqをおす.
  22. クロックチップの種類を聞いてくるが自動識別させるためエンターを押す.
  23. "X-probeonly now?"と聞いてくるがエンターを押す.
  24. ディスプレイモードの設定のメニューに切り替わります.
    1. 色の深さを聞いてきます. ここではデプス8を選ぶため1を入力します.
    2. 解像度は1024x768
    3. バーチャルスクリーンを使用するか聞いてくるがnを入力.
    4. 再び色の深さを聞いてきます. ここではデプス16を選ぶため1を入力します.
    5. 解像度は1024x768
    6. バーチャルスクリーンを使用するか聞いてくるがnを入力.
    7. 5を入力して終了.
  25. /etcに書き込ませるためにyを入力する.

X-Window上でのキーボードの再設定

xf86configで設定すると日本語のキーボードに対応する事が出来ない. 従って以下のような作業を行なう.
  1. /usr/X11R6/bin/startxでX-Windowを起動する.
  2. /usr/X11R6/bin/XF86Setupを実行する.
  3. reconfigurationするか聞いてくるのでyesとこたえる.
  4. keyboardを選択して
          model:
             Japanese 106-key
          Layout(Language):
             Japanese
          
    にする.
  5. Doneで終了する.
  6. OKをおす.
  7. "Save the configuration and exit" を選択する.

xdmの設定

  1. /usr/X11R6/lib/X11/xdm/Xresourcesを
          ! $XConsortium: Xresources /main/8 1996/11/11 09:24:46 swick $
          xlogin*login.translations: #override\
                 CtrlR: abort-display()\n\
                 F1: set-session-argument(failsafe) finish-field()\n\
                 CtrlReturn: set-session-argument(failsafe) finish-field()\n\
                 Return: set-session-argument() finish-field()
          xlogin*borderWidth: 3
          xlogin*greeting: CLIENTHOST
          xlogin*namePrompt: login:\040
          xlogin*fail: Login incorrect
          #ifdef COLOR
          xlogin*greetColor: CadetBlue
          xlogin*failColor: red
          xlogin*Foreground: black          !!!!<-ここを追加
          xlogin*Background: AntiqueWhite   !!!!<-ここを追加
          *Foreground: black
          *Background: #fffff0
          #else
          xlogin*Foreground: black
          xlogin*Background: white
          #endif
          XConsole.text.geometry: 480x130
          XConsole.verbose:       true
          XConsole*iconic:        true
          XConsole*font:          fixed
          
          Chooser*geometry:               700x500+300+200
          Chooser*allowShellResize:       false
          Chooser*viewport.forceBars:     true
          Chooser*label.font:             *-new century schoolbook-bold-i-normal-*-240-*
          Chooser*label.label:            XDMCP Host Menu  from CLIENTHOST
          Chooser*list.font:              -*-*-medium-r-normal-*-*-230-*-*-c-*-iso8859-1
          Chooser*Command.font:           *-new century schoolbook-bold-r-normal-*-180-*
          
  2. /usr/X11R6/lib/X11/xdm/tkshutdownを作成する.
    中身は
          #!/usr/local/bin/wish8.0jp
          button .b0 -width 8 -height 3 -text "Shutdown" -command {
          set a [tk_messageBox -type okcancel -default cancel -icon question -mess
          age "Shutdown OK"]
          if { $a == "ok" } { exec /sbin/shutdown -h now }
          }
          .b0 configure -font rk24
          pack .b0
          
    である. 注意点として/usr/local/bin/wish8.0jpがインストールされていること.
  3. /usr/X11R6/lib/X11/xdm/Xsetup_0を
          #!/bin/sh
          # $XConsortium: Xsetup_0,v 1.3 93/09/28 14:30:31 gildea Exp $
          /usr/X11R6/lib/X11/xdm/tkshutdown &
          xsetroot -solid \#007c78
          xconsole -geometry 480x130-0-0 -daemon -notify -verbose -fn fixed -exitOnFail
          
    のようにする.
  4. /usr/X11R6/lib/X11/xdm/GiveConsoleに
          sessreg -a -l $DISPLAY -x /usr/X11R6/lib/xdm/Xservers $USER
          kill -9 `ps axw|grep tkshutdown|awk '{print $1}'`
          
    を付け足す.
  5. /usr/X11R6/lib/X11/xdm/TakeConsoleに
          sessreg -d -l $DISPLAY -x /usr/X11R6/lib/xdm/Xservers $USER
          
    を付け足す.
  6. /usr/X11R6/lib/X11/xdm/Xserversに
          :0 local /usr/X11R6/bin/X -bpp 16
          
    のように-bpp 16 を付け足す.
  7. mkdirで/usr/X11R6/etc/rc.dを作成する.
  8. /usr/X11R6/etc/rc.d/xdm.shを作成する. 中身は
          #!/bin/sh
          #
          if [ -f /usr/X11R6/bin/xdm ]; then
             /usr/X11R6/bin/xdm; echo -n ' xdm ' >/dev/console
          fi
          #
          
    です.
  9. chmod +x /usr/X11R6/etc/rc.d/xdm.sh を実行してこのシェルを実行可能にする.

httpdのインストール

httpdにはapache-1.3.0を使用します.
  1. pkg_add apache-1.3.0.tgzでapacheをインストールします.
  2. /usr/local/etc/apacheに設定ファイル, /usr/local/wwwにコンテンツがインストールされる.
  3. access.conf.default, httpd.conf.default, magic.default, mime.types.default, srm.conf.defaultから.defaultを取った名前にコピーする.
  4. アクセス制限をかけるaccess.confの中のallowの項目を変更する.
          < Directory /usr/local/www/data >
    
          # This may also be "None", "All", or any combination of "Indexes",
          # "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
    
          # Note that "MultiViews" must be named *explicitly* --- "Options All"
          # doesn't give it to you.
    
          Options Indexes FollowSymLinks
    
          # This controls which options the .htaccess files in directories can
          # override. Can also be "All", or any combination of "Options", "FileInfo", 
          # "AuthConfig", and "Limit"
    
          AllowOverride None
    
          # Controls who can get stuff from this server.
    
          order allow,deny
          allow from t-kougei.ac.jp
          #~~~~~~~~~~~~~~~~~~~~~~~~~
          < /Directory>
          
  5. httpd.confの ServerAdmin のメールアドレスを適切なものへ変える.
          ServerAdmin yukiya@t-kougei.ac.jp
          
  6. srm.confの DocumentRootを適切なものへ変える. シンボリックリンクで/usr/localの場所を変えているとシンボリックリンクの場所を無視するため正しく設定できない. そのためこの項目は必ずシンボリックリンクを含めない絶対パスで記述する必要がある.
          #DocumentRoot /usr/local/www/data
          DocumentRoot /home/local/www/data
          

sendmail.cfの設定

nt299のsendmail.cfはこれです. ちなみにリレーサーバはtip30になっています.

カーネル再コンパイル

カーネルの再コンパイルは/usr/src/sys/i386/confで行ないます. まずカーネルのオプションの設定ですが通常GENERICを別ファイルにコピーし(例としてnt299), それを適切に編集します. 編集例はこれです. GENERICとの差分はこれです. 他に付け加えた方が良いオプションですが
  1. options SC_DISABLE_REBOOT #キーボードリブートの禁止ため入れる.
  2. options USERCONFIG を外す. これによりカーネルコンフィグを阻止する.
  3. options VISUAL_USERCONFIG を外す. これによりカーネルコンフィグを阻止する.
  4. options XSERVER を入れる.
  5. device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmint が入っているか確認する. r
  6. options SYSVSHM が入っているか確認する.
  7. options SYSVSEM が入っているか確認する.
  8. options SYSVMSG が入っているか確認する.
編集し終えた後
config nt299
を実行し以下のコマンドでカーネル再構築を開始します.
cd ../../compile
make depends
make
make install
shutdown -r now

シングルユーザモードで起動する時パスワードを聞いてくるように/etc/ttysのconsoleエントリーを以下のようにする.

  1. console none unknown off secure

インストールしたソフトウェアの一覧

ImageMagick-4.0.7
afterstep-1.0
apache-1.3.0
arpwatch-2.0.2
autoconf-2.12
automake-1.3
bash-2.02
enlightenment-0.14
esound-0.2.4
fbsd-icons-1.0
fd-1.03g
fli2gif-1.1
fnlib-0.3
freefonts-0.10
freetype-1.1
fvwm-1.24r
fvwm-2.0.46
fvwm95-2.0.43a
gcc-2.8.1
giflib-3.0
gifmerge-1.33
giftrans-1.12
gmake-3.76.1
gtk-1.0.4
http-analyze-2.01
imlib-1.7
ja-Canna-3.2.2
ja-Wnn-4.2
ja-a2ps-1.41
ja-communicator-4.04
ja-gawk-2.15.6
ja-grep-2.0
ja-groff-0.99
ja-handbook-2.2.6
ja-jcode.pl-2.6
ja-k12font-1.0
ja-kcc-1.0
ja-kinput2-canna+wnn4-2.0.4
ja-kinput2-wnn4-2.0.4
ja-kterm-6.2.0
ja-less-332
ja-man-1.1g
ja-man-doc-2.2
ja-mimekit-1.7
ja-mtools-3.6
ja-mule-wnn4-2.3
ja-naga10-1.0
ja-newosaka-1.0
ja-nkf-1.62
ja-nvi-eucjp-1.79.19970820
ja-p5-man-5.000
ja-perl-5.004.04
ja-prn-1.0
ja-qkc-1.0
ja-recjis-1.0
ja-sed-1.18
ja-tcl-8.0.2
ja-tcsh-6.07.06b4
ja-tk-8.0.2
ja-vfghostscript-5.10
ja-vflib-2.23.1
jbigkit-1.0
jpeg-6b
lha-1.14c
m4-1.4
mpeg2codec-1.2
mpeg2play-1.1b
mpeg_encode-1.5b
mpeg_lib-1.2.1
mpeg_play-2.4
mpeg_stat-2.2b
mpegedit-2.2
mule-common-2.3
ncftp-2.4.3
perl-5.00404
pixmap-2.6
png-1.0.2
pnmtopng-2.36
qvwm-1.0b10a
swatch-2.2
tiff-3.4
xanim-2.70.7.0
xengine-1.0.1
xless-1.7
xlockmore-4.11
xpm-3.4k
xv-3.10a

戻る


yukiya@ee.t-kougei.ac.jp
Last modified: Sat Apr 1 18:43:49 JST 2000