2008年5月24日土曜日

Windows コードページの変更で
UTF16->UTF8へ変換

>chcp 65001
>type test-utf16.txt>test-utf8.txt

http://d.hatena.ne.jp/s0u/20070307/1173282301

FreeBSD6でTELNET、SSH でputtyやteratermで日本語変換するには

FreeBSD 6.0
bash
な環境でTELNETで日本語を入力するには。。。

■ログインディレクトリに.inputrcを作成し、
下のように記述しておくと正常に入力できるようになります。

$ cat ~/.inputrc
set convert-meta off
set meta-flag on
set output-meta on

だそうです。
http://matsui.homeunix.com/index.php?FreeBSD%2F%C6%FC%CB%DC%B8%EC%C6%FE%CE%CF#B

2008年5月19日月曜日

FreeBSDで複数のIPアドレスを持たせるには

FreeBSDなホストでIPアドレスを複数持たせることができます。
バーチャルホスティングやデュアルホームネットワークとかするときに使えます。

たとえば、
[etc/rc.conf]
ifconfig_re0="inet 192.168.0.10 netmask 255.255.255.0"

となっていて、IPアドレス10.123.123.123を追加するには

[etc/rc.conf]
ifconfig_re0="inet 192.168.0.10 netmask 255.255.255.0"
ifconfig_re0_alias0="inet 10.123.123.123 netmask 255.255.255.0"

とします。
『ifconfig_re0』の『re0』の部分はLANカードのメーカーと機種によって
かわりますので、もともとの『ifconfig_???』の記述をよく確認してください。

さらにもうひとつIPアドレスを追加するには

[etc/rc.conf]
ifconfig_re0="inet 192.168.0.10 netmask 255.255.255.0"
ifconfig_re0_alias0="inet 10.123.123.123 netmask 255.255.255.0"
ifconfig_re0_alias1="inet 10.123.123.321 netmask 255.255.255.0"

のように『alias?』のインデックス番号を増やしていきます。

2008年5月14日水曜日

FreeBSD6.3 BIND9 9.3.4.1 インストールメモ

このページは書きかけです。。。
ports upgradeはしておいたほうがいいと思います。
方法は以前の記事を参考にしてください。


今日はFreeBSD6.3にBIND9.3(DNSサーバー)をインストールしてみました。

デフォルトではIPV6対応でインストールされるそうです。FreeBSD6ではループバックアダプタでも、IPv6アドレスが自動生成され、そこを見てBINDがIPv6サポートでコンパイルされます。
IPv6を使わない、使えないようなら明示的に
 --disable-ipv6
とコンパイルオプションを指定します。

#cd /usr/ports/dns/bind9
#make install       

│ Options for bind9 9.3.4.1

│[X] REPLACE_BASE Replace base BIND with this version
│[ ] THREADS Compile with thread support (NOT RECOMMENDED!)


これで一応インストールは出来たのですが、IPv6サポートなので今度は
コンパイルオプションを指定してコンパイルしなおします。
そのまえにアンインストール

#make deinstall
#cd work/bind-9.3.4-P1

#./configure --disable-ipv6
#cd ../..
#make install
       
としました。

■起動設定
次のように追加変更します。
とくにnamed_enable="YES"の行よりもnamed_program、named_flagsを先に記述しなければならないようです。(どっかのサイトに書いてあった)

[/etc/rc.conf]
named_program="/usr/local/sbin/named"
named_flags="-u bind -c /etc/namedb/named.conf"

named_enable="YES"

#reboot

■起動確認
#ps -ax
     :
535 ?? Ss 0:00.10 /usr/sbin/named -t /var/named -u bind
     :

のようにnamedが起動していればまずOKです。

■rndcの設定
namedの設定ファイルは起動時によみこまれますが、設定を変えるたびに再起動するのは面倒です。また、以前の namedb reload 、namedb restart はなくなり、新しくrndc reloadとなりました。ソケットで接続するので、どこのネットワークからでも設定の再読み込みが出来ます。

#cd /etc/namedb
#rndc-confgen > rndc.conf

で生成した/etc/rndc.confの内容をnamed.confに加えます。
これを記述しないとrndcを使って設定ファイルのリロードなどができません。

[/etc/namedb/named.conf]
optins {
......
なんとかかんとか
......
};

key "rndc-key" {
algorithm hmac-md5;
secret "PFxxxxxxxxxx1nPFg==";
};

controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};

#reboot


ログファイルからBINDのメッセージを確認します。
[/var/log/messages]
 :
 :
Feb 9 22:55:44 myserver named[652]: starting BIND 9.3.5 -u bind -c /etc/namedb/named\
.conf -t /var/named -u bind
Feb 9 22:55:44 myserver named[652]: command channel listening on 127.0.0.1#953
 :
 :

dnsとrndc用のポートでリッスンしているか確認します。

#netstat -a
:
tcp4 0 0 localhost.rndc *.* LISTEN
tcp4 0 0 localhost.domain *.* LISTEN
tcp4 0 0 myserver.domain *.* LISTEN
tcp4 0 0 192.168.100.10.domain *.* LISTEN
:

.rndcと.domainを確認します。

■設定
次にいよいよリゾルバの設定をしていきます。
[/etc/namedb/named.conf]
forwarders{
           //上位のDNSを記述します
192.168.100.1; //自分のルーターのIPアドレスもしくはプロバイダで指定されたDNS
}


zone "localhost" {
type master;
file "localhost.zone";
};

// 次の行を探しコメントアウトします

//zone "localhost" { type master; file "master/localhost-forward.db"; };


[/etc/resolv.conf]
nameserver 127.0.0.1
#nameserver 192.168.xx ...もともと記載されていたDNS 動作確認のためコメントアウトしておきます


#rndc reload
server reload successful

と表示が出ればrndcまで正常に動作しています。


ここまで
これを見ながら設定しました

DNS&BIND BIN9対応 オライリージャパン
DNSの基礎から設定の仕方、運用の方法まで運用するなら持っときましょう。




http://www.running-dog.net/bsd/45/bind9.html
http://linux.kororo.jp/cont/server/bind_src.php
http://www.bsddiary.net/doc/bind9.html

2008年5月8日木曜日

FreeBSD6.3 Apache2.2.8+PHP5.2.6+MySQL5.0.5 インストールメモメモ3

昨日に引き続いてMYSQLが動いていない
どうもextensionなるものを入れればいいらしい。。。

#cd /usr/ports/lang/php5-extensions
#make config

[X] MYSQLI MySQLi database support
MySQL 4.1以降の拡張機能が使えるようになります。

#make install clean
# apachectl restart

ブラウザで開いてみます
http://192.168.0.200/test.php

mysqli
MysqlI Support enabled
Client API library version 5.0.51a
Client API header version 5.0.51a
MYSQLI_SOCKET /tmp/mysql.sock

とか表示があればOKです。

これでApache + PHP + MYSQLなサーバーができましたとさ!!!

2008年5月7日水曜日

FreeBSD6.3 Apache2.2.8+PHP5.2.6+MySQL5.0.5 インストールメモメモ2

■MySQL5.0.51のインストール

#cd /usr/ports/mysql50-server
#make install clean WITH_CHARSET=sjis WITH_XCHARSET=all

ビルドオプションはこれだけあるのだそうな。

You may use the following build options:

WITH_CHARSET=charset Define the primary built-in charset (latin1).
WITH_XCHARSET=list Define other built-in charsets (may be 'all').
WITH_COLLATION=collate Define default collation (latin1_swedish_ci).
WITH_OPENSSL=yes Enable secure connections.
WITH_LINUXTHREADS=yes Use the linuxthreads pthread library.
WITH_PROC_SCOPE_PTH=yes Use process scope threads
(try it if you use libpthread).
BUILD_OPTIMIZED=yes Enable compiler optimizations
(use it if you need speed).
BUILD_STATIC=yes Build a static version of mysqld.
(use it if you need even more speed).
WITHOUT_THR_ALARM=yes Disable signals (this reduces kernel lock
contention on SMP, but has the side effect
that you can't kill clients that are sleeping).
WITHOUT_INNODB=yes Disable support for InnoDB table handler.
WITH_ARCHIVE=yes Enable support for Archive Storage Engine.
WITH_CSV=yes Enable support for CSV Storage Engine.
WITH_FEDERATED=yes Enable support for Federated Storage Engine.
WITH_NDB=yes Enable support for NDB Cluster.

mysqlを起動できるように次のように追記します。
[/etc/rc.conf]
mysql_enable="YES"

#reboot

#ps -ax
でmysqlが走っているか確認します。

651 con- I 0:00.01 /bin/sh /usr/local/bin/mysqld_safe --defaults-extra-f
677 con- S 0:00.62 /usr/local/libexec/mysqld --defaults-extra-file=/var/

こんなのになっていればOKです。

■Apache 2.2.8のインストール

#cd /usr/ports/www/apache22
#make install clean

[/etc/rc.conf]
apache22_enable="YES"

#reboot


■PHP 5.2.6のインストール

#cd /usr/ports/lang/php5

#make install clean
│ │[ ] CLI Build CLI version
│ │[X] CGI Build CGI version
│ │[X] APACHE Build Apache module
│ │[ ] DEBUG Enable debug
│ │[X] SUHOSIN Enable Suhosin protection system (not for jails)
│ │[X] MULTIBYTE Enable zend multibyte support
│ │[X] IPV6 Enable ipv6 support
│ │[ ] MAILHEAD Enable mail header patch
│ │[ ] REDIRECT Enable force-cgi-redirect support (CGI only)
│ │[ ] DISCARD Enable discard-path support (CGI only)
│ │[X] FASTCGI Enable fastcgi support (CGI only)
│ │[X] PATHINFO Enable path-info-check support (CGI only)


***************************************************************

Make sure index.php is part of your DirectoryIndex.

You should add the following to your Apache configuration file:

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

***************************************************************
===> Compressing manual pages for php5-5.2.6
===> Registering installation for php5-5.2.6
===> SECURITY REPORT:
This port has installed the following files which may act as network
servers and may therefore pose a remote security risk to the system.
/usr/local/libexec/apache22/libphp5.so
/usr/local/bin/php-cgi

If there are vulnerabilities in these programs there may be a security
risk to the system. FreeBSD makes no guarantee about the security of
ports included in the Ports Collection. Please type 'make deinstall'
to deinstall the port if this is a concern.

For more information, and contact details about the security
status of this software, see the following webpage:
http://www.php.net/

apache22の設定ファイルを変更します
#cd /usr/local/etc/apache/
<IfModule mime_module>ディレクティブに
 AddType application/x-httpd-php .php
 AddType application/x-httpd-php-source .phps
を追加します。

[httpd.conf]
<IfModule mime_module>
:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
  :
</IfModule>


サーバーのドメイン名かなければIPアドレスを指定します。
[httpd.conf]
#ServerName www.example.com:80



ServerName 192.168.0.200:80

のように修正します。

次にphp.iniファイルを作成します。
#cd /usr/local/etc
#cp php.ini-dist php.ini

次に動作確認用のtest.phpを作成します。
#cd /usr/local/www/apache22/data

[test.php]
<?      ←全角の括弧になっていますが半角に直してください
phpinfo();
?>

#reboot

apacheが起動しているかプロセスを見てみます。
#ps -ax
あり?ない。
ログを確認してみます。
#cd /var/log/
#tail httpd-error.log

[Thu May 08 00:00:00 2008] [alert] (EAI 8)hostname nor servname provided, or not known: mod_unique_id: unable to find IPv4 address of "daimajin"
Configuration Failed

あり?
daimajin(サーバーの名前)のIPアドレスがわからないようですね。

[/etc/hosts]
192.168.0.200 daimajin

を追加します。
#apachectl restart
でapacheを起動します。

#ps -ax
845 ?? Ss 0:00.46 /usr/local/sbin/httpd -k restart
863 ?? I 0:00.00 /usr/local/sbin/httpd -k restart
864 ?? I 0:00.00 /usr/local/sbin/httpd -k restart
865 ?? I 0:00.00 /usr/local/sbin/httpd -k restart
866 ?? I 0:00.00 /usr/local/sbin/httpd -k restart
867 ?? I 0:00.00 /usr/local/sbin/httpd -k restart

起動しました。
ブラウザでapacheが動いているか確認します。
ブラウザでサーバーを起動しているパソコンのIPアドレスを指定して
開いてみます。

インターネットエクスプローラーなどで
http://192.168.0.200/

It works!

と表示が出ればOKです。
次に
http://192.168.0.200/test.php

を開いてみます

PHP Version 5.2.6

System FreeBSD daimajin 6.3-RELEASE FreeBSD 6.3-RELEASE #0: Wed Jan 16 04:45:45 UTC 2008 root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/SMP i386
Build Date May 7 2008 22:43:31
Configure Command './configure' '--with-layout=GNU' '--with-config-file-scan-dir=/usr/local/etc/php' '--disable-all' '--enable-libxml' '--with-libxml-dir=/usr/local' '--enable-reflection' '--program-prefix=' '--disable-cli' '--enable-fastcgi' '--with-apxs2=/usr/local/sbin/apxs' '--with-regex=php' '--with-zend-vm=CALL' '--prefix=/usr/local' '--mandir=/usr/local/man' '--infodir=/usr/local/info/'
Server API Apache 2.0 Handler

云々と表示が出ればPHPは動作しています。
次に、その中にMYSQLの項目が出ていればMYSQLも動作しています。

あれ?出ていない。。。(^-^;;;

続く。。。。

FreeBSD6.3 Apache2.2.8+PHP5.2.6+MySQL5.0.5 インストールメモメモ1/3

ネットでいろいろ調べてみると、どうもportsを使ってインストール
しているようなので、Portsツリーのアップデートをを先に行いました。

■準備
サーバーなのでX環境(ウィンドウ環境)は不要です。
今後Xな環境をビルドしないために次の行を追加します。
[/etc/make.conf]
WITHOUT_X11=yes

# cd /usr/ports/net/cvsup-without-gui   Xを使っていないとき
# make install clean

cvsupがこれでインストールされます。
次にports-supfileを編集します。

#cd /usr/share/examples/cvsup
#cp ports-supfile /etc
#cd /etc
#chmod 644 ports-supfile

[ports-supfile]
*default host=CHANGE_THIS.FreeBSD.org

*default host=cvsup.jp.FreeBSD.org
に変更します

次にportsツリーを更新します。

# cvsup -g -L 2 /etc/ports-supfile

次にportupgradeをインストールします。

portsツリーをアップデートしたら、続いて portsupgrade をインストールします。以下のようにして、ports からインストールします。

# cd /usr/ports/ports-mgmt/portupgrade
# make config-recursive
# make install clean

#reboot

portupgrade というコマンドのほか、portsのメンテナンスに必要なコマンドがいくつかインストールされます。さっそくそのうちの一つである portsdb コマンドを使って、先ほど更新した ports ツリーのインデックスを更新しておきましょう。

# portsdb -uU

更新にはしばらく時間がかかります。

packageデータベース依存関係の修復

# pkgdb -aF

インストール済みパッケージの一括アップグレード
各アプリケーションの設定ファイルなどで整合性が取れなくなることが
考えられるので、復元できるように設定ファイルなどをバックアップしておいた
方が良いです。

# portupgrade -a -R

portsのインストール時に残った作業ファイルなどを消すにはportcleanを使います

# portclean -CD


.

2008年5月5日月曜日

FreeBSD 6.3 サーバー構築

http://freebsd.sing.ne.jp/FreeBSD/
を見てインストールしてみた。
以前はADSLだったのでCDからインストールしたけど、
CDを入れ替え入れ替えしてのインストールだったんで大変だった記憶があるけど、
光になって、FTPでメディアを参照するとあっとあっと言う間にインストールが
終わった。
その昔ISDNでFreeBSDのインストールメディアをダウンロードするのだけでも
ディスク1枚一晩かかっていたことを考えると、技術の進歩はすごいものだと
あたらめて考えさせられました。

で。。。

メモ。

FreeBSD起動時のメニュー選択画面で10秒待ちを短縮するには、

/boot/loader.conf



autoboot_delay="1"

のように追記すると選択待ち時間が1秒になります


FreeBSDをインストールすると、Sendmailがデフォルトでインストールされます
これを無効にするには

/etc/rc.conf

sendmail_enable="NONE"

のように追加します

2008年5月1日木曜日

ディスプレイ切り替え機を買ったら

壊れたと思ってた切り替え機をふとつないで見たら、
動いた(!_!

せっかく買ったのに。。。(T_T