2007年11月29日 (木)

rpmのDBが壊れた時の対処

あるひ新しいサーバーにMySQLをインストールしようとしたら

[root@sv2 user_name]# rpm -ivh MySQL-*-community-5.0.45-0.rhel4.i386.rpm
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30978) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recov                                       ery
error: cannot open Packages index using db3 -  (-30978)
error: cannot open Packages database in /var/lib/rpm
warning: MySQL-client-community-5.0.45-0.rhel4.i386.rpm: V3 DSA signature: NOKEY, key ID 5                                       072e1f5
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30978) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recov                                       ery
error: cannot open Packages database in /var/lib/rpm
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30978) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recov                                       ery
error: cannot open Packages database in /var/lib/rpm
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30978) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recov                                       ery
error: cannot open Packages database in /var/lib/rpm
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30978) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recov                                       ery
error: cannot open Packages database in /var/lib/rpm

orz...
えーrpmが壊れたって対処できんよそりゃ(T_T)
今回は検索してもなかなか対処方法が出なくてほんとに困りました。
サーバー会社に電話掛けようとしたところでギリギリ自力解決

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/677errorrpm.html
↑@ITさんに情報がありました。

データベースファイルを削除して
rpm --rebuilddb
で回復しました。
rpmが本格的におかしくなったのではなく使用しているDBのデータが壊れただけで
再構築すれば直ります、同じようなエラーが出た人はあきらめないで頑張ってください。

| | コメント (0) | トラックバック (0)

2007年8月21日 (火)

mod_jkを無視して[.cgi]を処理したがるApache

cgiを処理するservletがtomcatシリーズにはおまけでついてきている
(tomcatを内包しているJBossも)

これを利用しようとして http://hogehoge/tomcat/cgi/test.cgi
といったURLでWEBアプリケーションのCGIを設置し
Apache-mod_jk-JBoss(Tomcat)連携で
    JkMount /tomcat/cgi/* work   
と設定して http://hogehoge/tomcat/cgi/test.cgi にアクセスすると400エラーになる。
mod_jkの設定が無視されてApacheのパス内にファイルがみあたらないから400(not found)というわけだ。

Apacheがmod_jkの設定を無視するのは
AddHandler cgi-script .cgi
↑この設定がmod_jkを打ち消しているから、cgi拡張子をcgi(コモンゲートウェイ…)として扱おうとする。
このぎょうをコメントアウトするなり、Tomcat WEBアプリケーション側のcgi実行の
拡張子を変更するなりしてこの衝突は回避することができる。

| | コメント (0) | トラックバック (0)

2007年8月 9日 (木)

BINDのスレーブ設定時のパーミッションエラー

Aug  9 13:46:20 sv named[29336]: dumping master file: /var/named/tmp-XXXXS58pu2: open: permission denied
Aug  9 13:46:20 sv named[29336]: transfer of 'hogehoge.com/IN' from 123.456.789.123#53: failed while receiving responses: permission denied

BINDでスレーブサーバーを設定し更新をかけたら上記のようなエラーが出た
ちなみに環境は
OS        : RHEL 3.0 ES
BIND     : 9.2.4 (RHELデフォルトインストール)
管理ツール: Webmin
でWebmin経由で普通に設定した場合にこのエラーが出た。

原因はスレーブのデータを保存するディレクトリの書き込み権限が
ユーザーnamedに無いこと。
上記の環境では /var/named に保存しようとする。

解決方法①
/var/named の所有者を root ⇒namedに変更
手っ取り早いけど正攻法ではない。

解決方法②
スレーブのBIND設定が保存されるディレクトリを正しくwebminに設定する
/var/named ⇒ /var/named/slaves 等(フォルダの所有者をnamedにする)
Name_002Name_001

 

以上

| | コメント (0) | トラックバック (0)

2007年2月27日 (火)

SCOのLinux裁判 (2月26日再開予定)はどうなった?

過ぎた2月26日に再開予定(陪審審理)だったsco の linux訴訟の
報道がまったくされていない…。
一週間も前に予告記事を上げたのになぁ(==;

SCOの裁判はどうなっているのでしょうか?

関連記事
http://japan.cnet.com/news/biz/story/0,2000056020,20157567,00.htm
http://www.itmedia.co.jp/enterprise/articles/0507/07/news021.html

| | コメント (0) | トラックバック (0)

2007年2月19日 (月)

SCOのLinux裁判 陪審審理まであと7日

いよいよSCOのは『オレのものだ!!』と主張している裁判の陪審審理まで7日となりました。

http://www.itmedia.co.jp/enterprise/articles/0507/07/news021.html
>SCOが証拠開示プロセスを長引かせようとしていることに、裁判所はいら立っているようだ。
>裁判所は2007年2月26日の陪審審理をずらすことを認めないだろう。

覚えている人いるのかな?というくらい話題が盛り上がっていませんね。
参照記事の日付も2005年です。
場合によったらLinuxを使用できる人が誰もいなくなるという重要な裁判なのですが…

これまでの経緯を知りたい方はこちらをどうぞ
http://www.itmedia.co.jp/enterprise/special/0306/sco.html

Microsoftが裏で糸を引いていたり(ほぼ確実?)
実は詐欺めいた商法のブラフであるという噂が合ったり
陰謀めいた面白さがあります。

ちなみにこの裁判SCOが勝つとLinuxを構成するものの一部コードが
SCOのものとなります(認められます)。
SCOはこれを有償でライセンスする姿勢です。
今まで無料だったLinuxが有料になってしまうわけです
が同時にIBMが著作権を保有するLinuxを
構成する一部のコードがGPLの根拠を失いSCOはこれを使用できなくなります。
他の著作権保有者もSCOに対して使用を拒否する可能性があります。

どの部分がSCOが著作権を保有するコードか分かればその部分を作り直すことで
再びGPLのもとにLinuxを使えるようになるでしょう。
まずありえませんがSCOが全てを自社が著作権を持つコードで作り直すことでSCOが
Linuxを使える日が来ることもあるかもしれません。

SCOが保有するコードが明らかにならないままSCOの
著作権が認められるのが最悪のパターンで実質だれもLinuxを使用できなくなります。
Microsoftの高笑いが聞こえてきそうですね…。

| | コメント (0) | トラックバック (0)

2007年1月11日 (木)

Postfix で imap before smtp / pop before smtp をやってみる②

Postfix で imap before smtp / pop before smtp をやってみる①
http://bellks-tec.cocolog-nifty.com/blog/2006/08/postfix_imap_be_373d.html

以前書いた↑はただのURLメモだったのだが今回コレをインストールする機会があったのでレポート

◆QuickStartを参考に必要なPerlモジュールをインストール
http://popbsmtp.sourceforge.net/quickstart.shtml

ちなみに

Date::Format (Date::Parse)
Net::NetMask

上記2つでOKだった。
できる限りRPMでインストールしたほうが後の作業が楽だが
今回適当なRPMを発見できなかったためWEBMINのPerlモジュール管理で
CPANからインストールした

◆ページ上部のDownLoadからファイルを取得
http://popbsmtp.sourceforge.net/

◆取得したTARを元にrpmを作成、インストール

QuickStartではかなり力ずくでインストールしているが
RPMを今回は作ってみた

rpmbuild -ta pop-before-smtp-1.41.tar.gz
su -
rpm -ivh ../rpm/RPMS/noarch/pop-before-smtp-1.41-1.noarch.rpm --nod
eps

PerlモジュールをPRMでインストールできた方は依存関係の問題が発生しないので
--nodeps をはずしてください

◆設定をする
/etc/pop-before-smtp-conf.pl を編集

見れば分かると思うが、ログを解析するパターンがある
自分が使っているpop/imapサーバーに当てはまるパターンのコメントアウトをはずす

自分の環境は Courier-IMAP なので以下のコメントアウトを有効にする

# For Courier-POP3 and Courier-IMAP:
#$pat = '^[LOGTIME] (?:\[|\S+ )(?:pop3|imap|couriertcp)(?:d|d-ssl|login)\]?: ' .
#    'LOGIN, user=\S+, ip=\[[:f]*(\d+\.\d+\.\d+\.\d+)\]';
#$out_pat = '^[LOGTIME] (?:\[|\S+ )(?:pop3|imap|couriertcp)(?:d|d-ssl|login)\]?: ' .
#    '(?:LOGOUT|DISCONNECTED), user=\S+, ip=\[[:f]*(\d+\.\d+\.\d+\.\d+)\]';

                           ↓↓↓↓↓

# For Courier-POP3 and Courier-IMAP:
$pat = '^[LOGTIME] (?:\[|\S+ )(?:pop3|imap|couriertcp)(?:d|d-ssl|login)\]?: ' .
    'LOGIN, user=\S+, ip=\[[:f]*(\d+\.\d+\.\d+\.\d+)\]';
$out_pat = '^[LOGTIME] (?:\[|\S+ )(?:pop3|imap|couriertcp)(?:d|d-ssl|login)\]?: ' .
    '(?:LOGOUT|DISCONNECTED), user=\S+, ip=\[[:f]*(\d+\.\d+\.\d+\.\d+)\]';

◆pop before smtp を起動

/etc/init.d/pop-before-smtp start

◆Postfixが認証したIPからのアクセスを受け入れるように設定する

/etc/postfix/main.cf を編集

◇smtpd_recipient_restrictions がある場合 
check_client_access hash:/etc/postfix/pop-before-smtp をこの項目に追加(コンマ区切り)

◇みあたらない場合(自分もコレ)

smtpd_recipient_restrictions = permit_mynetworks,reject_non_fqdn_recipient, check_client_access hash:/etc/postfix/pop-before-smtp, reject_unauth_destination
を追加

◆Postfixを再起動で完了

| | コメント (0) | トラックバック (0)

Postfixのインストールトラブル fatal: open database /etc/aliases.db: No such file or directory

Qmailよりインストールが楽なんで大好きなPostfixですが
いつも動いてくれるようになるまで苦戦します。
このたび原因が判明したのでそのためのメモ

現在環境はRHEL4.0ですが他の環境でもトラブッタ記憶があるので
RPMインストール全般で起こりえるとおもいます。

状況としてはRPMもしくはデフォルト(OSと同時)でインストール
して起動した状態…でもメール配信がうまくいかずシステムログ(メール)に
以下のようなメッセージが出ている

fatal: open database /etc/aliases.db: No such file or directory

原因は /etc/aliases がインストールしただけではソースファイルのままで
/etc/aliases.db にコンパイル(?)されていない…バイナリになっていないということ
これをDBファイルに変換すればとたんに動き出す。

WEBMINだとこんな感じ
Postfix_notstart




| | コメント (0) | トラックバック (0)

2006年12月21日 (木)

RHEL4 に MySQL5.0 をインストール

RHEL4にはMySQL4.XX(正式なバージョンは忘れた)が
デフォルトで入ってはいるのだけども…
どうしてもMySQL5.0が使用したかったので
インストールしましたが起動しないトラブルがあったのでマトメです。

①依存パッケージを削除(MySQL4.XXをアンインストールする障害を排除)
②MySQL4.XXX関連パッケージを削除
③MySQL5.XXXをインストール

↑以上の内容は省略です。
RPMの基本的な作業なので…

インストールしたバージョン MySQL5.0.27

でここまですんなりインストールできたりするのですが

/etc/init.d/mysql start
で素直に起動してくれません(RPMインストール時の起動も失敗します)

Starting MySQLCouldn't find MySQL manager or server[FAILED]
エラーメッセージはこんな感じ

いろいろ調べてみると
/etc/init.d/mysql のスクリプトのパス設定がうまく働いていません。
自動的にmysqlのインストールフォルダを発見し
パスに指定するようにかかれているようなのですが
うまく働いていないのでエラーになります。

どうしたらうまく働くかはサッパリ分からなかったので、
最終的なところでパスを指定して解決。

case "$mode" in
  'start')
    # Start daemon

    #↓この下を追加↓
    bindir=/usr/bin
    sbindir=/usr/sbin
    #↑ここまで↑

うん、その場しのぎ(==;
start以外のコマンドどうすんだろ??
…一応動いたけど

parse_server_arguments `$print_defaults $extra_args mysqld server mysql_server mysql.server`
の直下あたりのほうが若干スマートかもしれません。

| | コメント (0) | トラックバック (1)

2006年8月 3日 (木)

Postfix で imap before smtp / pop before smtpをやってみる

『pop before smtp』というオープンソースのプロジェクト
http://popbsmtp.sourceforge.net/
https://sourceforge.net/projects/popbsmtp

名前=機能で毎度毎度検索に苦労する(--;
このプロジェクトのプログラムは
pop before smtp を実現するのにPOPやIMAPサーバーの吐き出す
ログファイルを監視し認証が通ったもののみSMTPを許可するようにするという
ユニークなプログラムだ。

POP3やIMAPサーバーのプロセスにはノータッチなので
多くのシステムに非常に簡単に適応できる。
imap before smtp の導入で苦労する人は多いのではないだろうか?
Courier-IMAPとこのプロジェクトの組み合わせは私がよくやるパターンで
IMAPのシステム導入としては
比較的手間が少ない
大変お勧めです。

とりいそぎURL等忘れないためのメモ、次のサーバーセットアップで使用したら
その時にセットアップ方法は加筆する予定。

2007/01/11 インストールレポート書きました
    Postfix で imap before smtp / pop before smtpをやってみる②

| | コメント (0) | トラックバック (2)

2006年7月26日 (水)

OP25B(Outbound Port25 Blocking)対策をPostfixとq-mailで

『OP25B(Outbound Port25 Blocking)』なんて厄介なものが急にPLALAに導入されて
オフィスでは急にメールが使えなくなったと大混乱です。
団体でメールサーバーを立てて複数の拠点からアクセスする場合、OP25Bの影響を
必ず受けてしまいます…これっていかがなものかなぁ?と思っていますがどうなんでしょ?
踏み台になるゾンビPC対策としてはよいかもしれません。

メールサーバーの管理者としては大迷惑です。

◆対策◆
・クライアント⇒サーバーのポートを25番以外のポートを使う
・25番は他サーバーとのやり取りに使用するので実際には新たにポートを開く

例:587を開く

■Postfix
master.cfを編集
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       n       -       -       smtpd
#↓の行を追加
587       inet  n       -       n       -       -       smtpd

◆q-mail
tcp-serverを起動するスクリプト(/var/qmail/qmail.rc 等)を編集
パラメーターの smtp or 25 の部分を任意のポートに変更した起動コマンドを追加
/usr/local/bin/tcpserver -HR -l0 -u 7791 -g 2108 -x /etc/tcp.smtp.cdb 0 smtp /var/qmail/bin/qmail-smtpd &
#既にある↑を参考に↓の行を追加
/usr/local/bin/tcpserver -HR -l0 -u 7791 -g 2108 -x /etc/tcp.smtp.cdb 0 587 /var/qmail/bin/qmail-smtpd &

後はユーザーサイドのMTUでSMTP接続のポートを587にします。

| | コメント (2) | トラックバック (3)

2006年7月24日 (月)

mysql 5.0 をRedHat8.0にインストールしてみた

MySQL5.0をRedHat8.0にインストールしてみた。
参考にしたのはこのあたり。
http://dev.mysql.com/doc/refman/5.0/en/linux-rpm.html

glibcがあればほとんどのLINUXで動くとの事。

http://dev.mysql.com/downloads/mysql/5.0.html
↑より
MySQL-server-5.0.22-0.glibc23.i386.rpm
MySQL-client-5.0.22-0.glibc23.i386.rpm
をダウンロードしてインストール

…失敗

coreutilsがなくて依存エラー
coreutilsを検索して探してみたがRedHat8.0にインストールするパッケージがみあたらない。
さらによく検索したところどうやらRedHat9.0から
fileutils ⇒ coreutils と名称変更が起こっているもよう

http://www.linorg.cirp.usp.br/RedHat9.0/RELEASE-NOTES-ja.html
fileutils, textutils, sh-utils , 及びstatパッケージは、より新しいcoreutilsパッケージに入れ替わりました。

代替があるなら大丈夫だろうと --nodeps オプションで無理やりインストール
取り合えす現状では問題なく動作している。

| | コメント (0) | トラックバック (1)

2006年7月21日 (金)

mod_proxy_ajp に期待

Apache 2.2が出たというニュースを聞いてからだいぶ経ちます。
正直なところOS(RHEL)に標準でついてくるまで利用することはないかとも思いますが
関連記事を読んでいる間に面白い新機能を発見しました。

『mod_proxy_ajp』
http://httpd.apache.org/docs/2.2/ja/mod/mod_proxy_ajp.html

なんでも『mod_jk』の代わりになるとかならないとか…
『mod_jk』はインストール作業が面倒なのでこれはありがたいことです。
あと設定も『httpd.conf』で可能になるらしいですがこれは
『mod_jk』でも可能(私はそうしてる)なのであんまり魅力的ではない。
mod_jkの設定をhttpd.confで完結させる方法

AJP1.3をサポートするモジュールの追加

 Apache Tomcatのサーブレットコンテナとの通信で使われるAJP1.3プロトコル(Apache JServ Protocol version 1.3)を直接扱えるmod_proxy_ajpモジュールが追加されました。従来のmod_jkは設定ファイルを別途用意する必要がありましたが、 mod_proxy_ajpではhttpd.conf中で設定を行うことができます。

http://www.atmarkit.co.jp/flinux/special/apache22/apache01.html



使い方の解説ページやら使用感がWEBに上がるようになってきたら
利用を考えます…現在人柱になる体力はないので(^^;

◆使い方解説
http://saikyoline.jp/weblog/archives/2006/01/mod_proxy_ajp_1.html
http://blog.so-net.ne.jp/suzuhiko/2006-01-16-2

| | コメント (0) | トラックバック (1)

2006年6月15日 (木)

SSL関連の情報[Apache SSL導入からクライアント認証まで]

RHEL3.0 RPMのデフォルト環境の openssl というのが自分の環境で今回の前提条件。
Apacheも同じくRPMのデフォルト…SSLは最初から使えるが今回は証明書を
独自のものにしてクライアント認証をすることを目標とする。

なお途中証明書に登録する情報を求められたり
インストールに必要なパスワードを求められたりするがすべて割愛
メモとして見通しがよくなることを重視した、
情報入力は難しい英語ではないのでメッセージを読んでいれば問題なくこなせると思う

知っておくと便利なこと
/usr/share/ssl/misc/CA (opensslのユーティリティスクリプトCA.shの場合もあるらしい)
①/usr/share/ssl/misc/CA -newca 認証局を作成(./demoCA/cacert.pem という認証局の証明書を生成)
②/usr/share/ssl/misc/CA -newreq  新しい秘密鍵と証明書要求を生成 newreq.pem
③/usr/share/ssl/misc/CA -sign ②の証明書要求から証明書を発行 newcert.pem

◆認証局を作る
任意のディレクトリで
①の /usr/share/ssl/misc/CA -newca を実行

◆サーバーの秘密キー、証明要求を作成、署名
②の /usr/share/ssl/misc/CA -newreq を実行

◆サーバーの証明書を作成
③の /usr/share/ssl/misc/CA -sign を実行

◆いちいちパスワードを求められないようにする
openssl rsa -in newreq.pem -out site.key

◆SSLの設定をする
◇現時点で出来上がっているファイルを確認
・site.key 秘密鍵(こちらを使うとApache起動時パスワードを求められない)
・newreq.pem 秘密鍵
・newcert.pem 証明書

◇Apacheの設定ファイルを編集
/etc/httpd/conf.d/ssl.conf (/etc/httpd/conf/httpd.confの場合もあるでしょう)

SSLCertificateFile /etc/httpd/conf/ssl.crt/site.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/site.key

の部分を作成したファイルに設定。
当然、適当な(適切な)フォルダを作成して配置しておいてほうがよい
パーミッションも適切にしておいたほうがよい。
SSLCertificateFileに指定するのが証明書
SSLCertificateKeyFileに指定するのが秘密鍵

ここまででSSLの導入はOK以下はクライアント認証に必要な設定

#コメントアウトをはずす、なければ追加する
SSLVerifyClient require
SSLVerifyDepth  1
SSLCACertificatePath /etc/httpd/conf/ssl.crt
SSLCACertificateFile /etc/httpd/conf/ssl.crt/ca.crt

意味
SSLVerifyClient クライアント認証を行うか
SSLVerifyDepth 登録された認証局から認証できる距離、階層の深さ
SSLCACertificatePath 認証局の証明書ファイルを格納したフォルダ
SSLCACertificateFile 認証局の証明書(./demoCA/cacert.pemに該当)

◆クライアント認証用の秘密キー、証明要求を作成
この作成をはじめると、newcert.pem newreq.pemは上書きされるので
困らないようにこれらのファイルはリネームするか適当なフォルダに回避しておく

②の /usr/share/ssl/misc/CA -newreq を実行

◆クライアント認証用の証明書を作成、署名

③の /usr/share/ssl/misc/CA -sign を実行

◆PKCS12形式への変換
openssl pkcs12 -export -in newcert.pem -inkey newreq.pem -certfile ./demoCA/cacert.pem -out newcert.p12

◆証明書のインストール

◇現時点で出来上がっているファイルを確認
・newreq.pem 秘密鍵
・newcert.pem 証明書
・newcert.p12 ユーザーインストール可能な証明書

newcert.p12をローカル環境に持ってきてブラウザ等にインストールすると
クラアント認証でSSLセッションを開始できる。

何故か -days(有効期限)オプションが効かないCAに編集項目があるのだがまったく機能しない
仕方がないので /usr/share/ssl/openssl.cnf (/etc/ssl/openssl.cnfの場合もあるらしい)
の設定ファイルの [defaultdays] をじかに編集して対応。
デフォルトだと有効期限は1年間…1年に1回の更新はちょっと面倒(^^;
セキュリティーの度合いは必要に応じたものにしよう

【2008/01/31追記】
クライアント認証をする場合認証局の有効期限も関連してくるので
/usr/share/ssl/misc/CA の
DAYS="-days 365" も編集しないとダメですね。

【参考にしたURL】

日本語かつ詳細?? http://www.linux.or.jp/JF/JFdocs/SSL-Certificates-HOWTO/x204.html
英語、簡易ドキュメント http://www.openssl.org/docs/apps/CA.pl.html
クライアント認証の情報 http://park15.wakwak.com/~unixlife/practical/openssl.html

| | コメント (0) | トラックバック (1)

2006年3月 8日 (水)

オープンソースのDLサイト

オープンソース系のソフトやソースをDLするときに
使用するサイトのメモ。。。

執筆時現在RedHatのオフィシャルサイトがメンテナンス中で
すぐにRedHat9が欲しいのに手に入れられなくて苦労した。
結局Googleのキャッシュを使用してミラーサイト一覧をGET
ミラーから手に入れたが、今後、同様なことが怒ったときのため記事を作成

■SourceForge.net http://sourceforge.net/
オープンソース系のソフトのダウンロードでよくお世話になる。
正直、もう少しDLまでのプロセスを少なくして欲しいが、
世界中からのアクセスを分散して処理しているシステムは素晴らしいと思う。

SourceForge.netがカバーしないプロジェクトをミラーリングで
DL提供しているURLの一覧…LINUXのISOイメージなんかはココをあたる。
■理研 ftp://ftp.riken.jp/
■KDDI ftp://ftp.kddilabs.jp/
■北陸 ftp://ftp.jaist.ac.jp/

大学系の研究機関も貢献としては素晴らしいがKDDIや理研等の企業が
しっかりと支えているのは本当にすごいことなんじゃないかな??
…何の脈略もない感想ですが(;^_^A 

| | コメント (0) | トラックバック (0)

Darwin Streaming Serverでストリーミング

Streamingサーバーが必要になり、イロイロ探していたが
DarwinStreamingServerがオープンソースフリーでよい感じだ。

QuickTimeStreamServerのオープンソース版
DownLoadはココ
http://developer.apple.com/opensource/index.html
Version 5.5 では RedHat 8、9対応ということになっているらしい…
実際に動作チェックをしたところ、RedHat9以外では動作しなかった。

動作しなかったOSは RHEL3-4 RedHatLinux 8 7、2
MPEG-4のストリーミングが可能なのでMediaPlayerも期待したが、
うまく受信できなかった。

Helix等フリーのストリーミングサーバーは他にもあったが
機能制限の面でDarwinはかなり優れていると思う。
RHELで動作すればなおよいが…
なんとなくAppleXServerでQuickTimeStreamServerを使ってほしいというのが透けて見える。

| | コメント (2) | トラックバック (0)

2006年2月20日 (月)

Postfix セットアップ

Q-MailライクにPostfixを使用する場合のセットアップメモ
(RedHatLinux EL 4.2の場合)

設定ファイルは /etc/postfix/main.cf

mydistination = mydomain    サーバードメイン
inet_interfaces = all                接続を受け入れるネットワーク接続
recipient_delimiter = -            サブアドレスの区切り文字
home_mailbox = Maildir/       Maildir形式で保存
allow_min_user = yes                頭に【-】があるメアドを配信可能にする

| | コメント (0) | トラックバック (0)

2006年2月 4日 (土)

LINUXインストールでみた最近のLINUX傾向

社内に開発環境として一台LINUXサーバーを設置した...
正確にはあまっているPCにLINUXをインストールして開発環境とした。

まずインストールを試みたのがVINE LINUX3.1
最新版は3.2だが雑誌の付録ですでにインストールCDが
あったのが動機、現在Windows2000を使用していて
CD-Rを焼くのが面倒というのも大きいところ

…インストーラーが立ち上がらない
前にVIAのCPUのマシーンにインストールしたときも感じたが
変わった構成のマシーンに無償のLINUXはインストールしにくい
傾向があると思う。

仕方がなく本棚をチェック。
RedHat8.0を発見、早速試してみる…
8時間インストールにかかった挙句インストーラーフリーズ
インストール失敗(;´Д`)

これはLINUXだけじゃなくてやはり本体のほうにも問題があると確信

翌日観念してVINE3.2をCD-Rに焼く⇒インストール
インストール成功&快適に動作!!
驚くほどデスクトップ用OSとして完成されている!!
じわじわとシェアを伸ばしているのに納得…
ホイールマウスも使用できるし、クリックしてからの反応もよい
危なげに動いている感じがしない。

ここでインストールが目的ではないことを思い出し開発環境のセットアップに入る
…WEBMINが標準サポートからはずれている。
ソースからインストール。
Vinelinuxを認識しないジェネリックリナックス?
⇒後に一般的なLINUXだと気が付くVINEはすでにWEBMINコミュニティに相手にされてない??

Apache実行ファイルがなんだか変わった名前になっている。
Apache2がhttpdというパッケージ名でない…
mod_jkのインストールが出来ない。
Apache2.0をソースから入れなおす…失敗。
Apache1.3のパッケージに直してサイドチャレンジ…失敗。

イロイロ独自の改造を行っているらしく開発環境としては使えないと判断
開発環境にどのディストリビューションを使用すべきか
ヨドバシ横浜店の書籍コーナーに

…書籍記事の傾向として
①サーバー用途でどの商用(有償)LINUXが優秀か比較記事
②カーネル改造?独自LINUX系記事
③デスクトップでLINUXをつかう系記事

…そもそも無償LINUXをサーバー用途でというのがほとんどないのに気が付く
有償LINUX比較系の記事等をぱっと読んでオマケとしてコラムに
CentOS、Fedoraが単語としてよく出てきた。
Fedoraは継続利用として全体的に疑問符な内容
CentOSは比較的好評価、RHELのクローンだもんね。

結局CentOSをインストール。

しかし思ったのが、LINUX開発がどんどんデスクトップに特化していること
実際VINE3.2はデスクトップとして使いやすさを相当感じた。
firefox等windowsデスクトップと同等のネット環境が構築できるのが大きいところだろう。

う~んでもなぁ
Turbo Linuxがライブドアグループと化してから
日本のサーバーLINUXは終わってしまったのだろうか?
というかOperaといいTurboといい
ライブドアに買収されると開発がとまったように見えるのは気のせいでしょうか?
RedhatかTurboかサーバーOSの選択を迷っていたのが懐かしくすら感じます。

| | コメント (0) | トラックバック (1)

daemontoolsインストールから設定まで

RPMからdaemontoolsをインストールしたときの流れのメモ
環境はCentOS4.2、ほぼRHEL4.2と同等と考えてよいらしい。

今回はJBossのプロセス監視を目的にインストールしたときの記録

◆RPMのDLはここから

http://www.qmailtoaster.com/

SRPMしか用意されていない…
検索するとRPMの旧バージョン現バージョンがごっちゃになって
SRPMのインストール方法には苦労した

◆SRPMインストールまとめ
http://bellks-tec.cocolog-nifty.com/blog/2006/02/srpm_b3c5.html

◆起動スクリプト設置

インストールしたが起動スクリプトは組み込まれなかった。
RPMの情報で起動スクリプトらしきものを発見
『/usr/bin/svscanboot』
本当はこれをどうにかするのかもしれないが
SRPMのインストールで既に疲れていたのでこれをもとに
WEBMINで起動スクリプトを生成

◇スタート
PATH=/command:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin
exec env - PATH="$PATH" \
csh -cf 'svscan /service &; echo $! > /var/run/svscan.pid'

◇シャットダウン
PATH=/command:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin
kill `cat /var/run/svscan.pid`
svc -dx /service/*
svc -dx /service/*/log

無事起動。。。

◆サービスをdaemontoolsに登録

『/service/』以下にサービス用ディレクトリを作成
『/service/jboss/』
JBOSSは標準出力にログを出力している…
標準出力のデータもdaemontools(正確には付属ソフト?)で
面倒見てくれる様子
ログ取得用にフォルダを作成
『/service/jboss/log』

本来は必要なかったかもしれないがログ保存用ディレクトリも作成した
『/service/jboss/log/main』

◇サービスの起動用スクリプト

サービスそのものの起動スクリプトとログ取得のスクリプトを設置する
それぞれ位置は作成したディレクトリ以下でファイル名は『run』

『/service/jboss/run』

#!/bin/sh
exec /var/local/jboss/bin/run.sh

『/service/jboss/log/run』

#!/bin/sh
exec multilog -t ./main

『run』は属性を755等実行可能な権限を与えておく
これが分からなくて1~2時間苦労した(^^;

◆サービスの起動とシャットダウン

ついでに設置したJBossの起動とシャットダウンを
WEBMINで出来るように起動スクリプトを作成
上と同じでWEBMINで作成

◇起動
svc -u /service/jboss
◇シャットダウン
svc -d /service/jboss
#JBOSSは親プロセスが死んだだけではダウンしないため1行追加
/var/local/jboss/bin/shutdown.sh -S

OS起動時に起動するようにしておかなくてもdaemontoolsの起動で
勝手に起動するような気もするが
逆にシャットダウン時にダウン状態が記録されてしまう気もするので
OS起動時に起動するように設定

| | コメント (0) | トラックバック (0)

SRPMからのインストール

CentOS4.2でdaemon-toolsをインストールしたときに調べた
SRPMのインストール方法の内容をメモ

#ソースを展開??
rpm -ivh xxxxxxx.src.rpm
#/usr/src/redhat/SPECフォルダに移動RPMをビルド
rpmbuild -bb xxxxxxx.spec
#/usr/src/redhat/RPMSフォルダに移動ビルドされたrpmをインストール
rpm -ivh xxxxxxx.rpm

検索ではうまくいかない方法がイロイロと引っかかった
RedHat7からRPMのバージョンが変わったもよう…
RedHat6から使用しているのでいつか使うかもしれないので忘れずメモ
RedHat6(推定)以前では

◆TYPE1
rpm --rebuild xxxxxxx.src.rpm
rpm -ivh xxxxxxx.rpm

◆TYPE2

#ソースを展開??
rpm -ivh xxxxxxx.src.rpm
#SPECフォルダに移動RPMをビルド
rpm -bb xxxxxxx.spec
#ビルドされたrpmをインストール
rpm -ivh xxxxxxx.rpm

2種対の流れがある様子

| | コメント (0) | トラックバック (0)