インストール/NetBSD 5.1 の変更点

Top > インストール > NetBSD 5.1


[[インストール/NetBSD (5.1)]]

[[インストール]]

NetBSD 5.1 (amd64) でのインストール方法を紹介します。

* 下準備
pkgsrc(2010Q4で検証)をインストールしておきます。以下、pkgsrcを展開した場所を/usr/pkgsrc、LOCALBASEを/usr/pkgとします。お手元の環境に合わせて適宜読み替えてください。
NetBSDユーザ対象ということで、この文書は、ある程度のスキルを仮定しています。従って、スーパーバイザ権限の必要なところなども明示していません。

* eXpat、ICU、MeCab、Apacheのインストール

まず、MeCabの辞書(ipadic)としてutf-8のものが使われるよう、mk.confを修正しておきます。
-/etc/mk.conf: (1行追加)
 MECAB_CHARSET=utf-8

ここまで準備ができたら、いったん、pkgsrcを使って必要なツールをインストールしておきます。なお、apache22も、getassocより先にインストールしてください。

-必要なツールのインストール
 (cd /usr/pkgsrc/textproc/expat && make && make install)
 (cd /usr/pkgsrc/textproc/icu && make && make install)
 (cd /usr/pkgsrc/textproc/mecab-base && make && make install)
 (cd /usr/pkgsrc/textproc/mecab-ipadic && make && make install)
 (cd /usr/pkgsrc/www/apache22 && make && make install)


* pkgsrcに、GETAssocのローカルポートを追加する

http://www.cs.nii.ac.jp/~getassoc/getassoc-pkgsrc-1.1.3.tar.gz
http://www.cs.nii.ac.jp/~getassoc/getassoc-pkgsrc-1.1.5.tar.gz
をダウンロードし、/usr/pkgsrcに展開します。local/cxml、local/stmd、local/getassocが展開されます。

* cxml、stmd、GETAssocのインストール

大規模なデータベースを運用する場合、GETAssocをLP64対応で構成する必要があります。その場合、mk.confに以下の設定を追加しておきます。
-/etc/mk.conf: (3行追加)
 .if ${PKGPATH} == "local/getassoc"
 CONFIGURE_ARGS+=--enable-lp64=yes
 .endif

準備ができたら、インストールを実行します。
-インストールの実行
 (cd /usr/pkgsrc/local/cxml && make && make install)
 (cd /usr/pkgsrc/local/stmd && make && make install)
 (cd /usr/pkgsrc/local/getassoc && make && make install)


* stmdの設定

inetd版より高速なAF_LOCAL版を使います。起動スクリプトのサンプルが
/usr/pkg/share/examples/rc.d/stmd
にインストールされているので、それをコピーして用います。
-起動スクリプトのコピー: 
-起動スクリプトのコピー
 cp -i /usr/pkg/share/examples/rc.d/stmd /etc/rc.d/

-/etc/rc.conf: (1行追加)
 stmd=YES

-/etc/syslog.conf: (1行追加、空白は全てタブ文字です)
 local0.*                                                /var/log/stmd

-/etc/newsyslog.conf: (1行追加、stmdと644の間の空白は全てタブ文字です)
 /var/log/stmd                           644  7    250  *    Z

-syslogの再起動:
-syslogの再起動
 /etc/rc.d/syslogd restart

-stmdの起動:
-stmdの起動
 /etc/rc.d/stmd start


* GETAssoc の設定

pkgsrc対応版は、バイナリとデータが異なるディレクトリ以下に配置されています。データの保管場所は自動では作成できないので、これを手動で作成します。以下の例は、データの置き場所を /home/ore/g としたものです。
-データの置き場所を作成
 mkdir -p /home/ore/g
 (cd /home/ore/g && mkdir bin etc nwam pwam tmp && chmod -R og+rX .)

作成したディレクトリの属性は、stpの利用者が全権利を持つこと、Apacheが読めることと実行できることが必要です。
作成したディレクトリの属性としては、stpを実行するユーザが全権利を持つこと、および、Apacheが読めることと実行できることが必要です。
pkgsrc対応版は、バイナリとデータが異なるディレクトリ以下に配置されているため、getassocにデータの位置を教える必要があります。これを、実行時引数か、環境変数で実現できれば良いのですが、Apacheのcgi-bin呼び出しではいずれの方法も利用できません。そこで、getassocと同名のスクリプトをかませてこの問題を解決します。置き場所は、/home/ore/g/bin にします。このファイルには、chmod +xで実行可属性をつけておきます。
-/home/ore/g/bin/getassoc: 
 #! /bin/sh
 exec /usr/pkg/libexec/getassoc/getassoc -R /home/ore/g


* httpdの設定

/usr/pkg/etc/httpd/httpd.conf の変更を最小限に抑えるため、GETAssocに関係する設定はファイルを別にし、/home/ore/etcに置くことにします。/home/ore 以下には、etcとg/etcの二つの異なるディレクトリができることに注意してください。httpdの設定で用いるのは、etcの方です。作成するファイルは2つです。
-/home/ore/etc/ScriptAlias.conf:
      ScriptAlias /getassoc/ "/home/ore/g/bin/getassoc/"

-/home/ore/etc/Directory.conf:
 <Directory "/home/ore/g/bin/">
     AllowOverride None
     Options ExecCGI
     Order allow,deny
     Allow from all
 </Directory>

次に、これらのファイルを読み込むよう、/usr/pkg/etc/httpd/httpd.conf に2行追加します。
-/usr/pkg/etc/httpd/httpd.conf: (2行追加)
 Include "/home/ore/etc/ScriptAlias.conf"
 Include "/home/ore/etc/Directory.conf"

あとは、いつも通りのApacheの起動手順です。
-/etc/rc.conf: (1行追加)
 apache=YES

-起動:
 /etc/rc.d/apache start


* データベースのインストール

stpを使います。stpの第一引数には/home/ore/g を渡します。
-例:
 stp -b /home/ore/g mai2001 title,link < mai2001.itb

TOP