2007年2月28日水曜日

XOOPSのUTF-8化

XOOPSのUTF-8化に挑戦したが挫折。
bwikiがどうにもこうにも。ファイル名が戻せないのが敗因。
取り組む余裕もないのでcubeに行く。

#! /bin/sh
test -z "$1" && echo "Usage: x2utf " && exit
nkf=/root/nkf205/nkf
user=www.psacln
cd $1
find . * -type f -name '*.php' | while read file; do mv $file $file.euc echo $file $nkf -w $file.euc > $file rm $file.euc sed -i "s/EUC-JP/UTF-8/g" $file
done
find . * -type f -name '*.txt' | while read file; do mv $file $file.euc echo $file $nkf -w $file.euc > $file rm $file.euc done
find . * -type f -name '*.tpl' | while read file; do mv $file $file.euc echo $file $nkf -w $file.euc > $file rm $file.euc done
find . * -type f -name '*.css' | while read file; do mv $file $file.euc echo $file $nkf -w $file.euc > $file rm $file.euc done
find . * -type f -name '*.html' | while read file; do mv $file $file.euc echo $file $nkf -w $file.euc > $file rm $file.euc done
find . * -type f -name '*.dat' | while read file; do
mv $file $file.euc
echo $file
$nkf -w $file.euc > $file
rm $file.euc
done
chown -R $user $1
cd $1
chmod 777 cache templates_c uploads
chmod -R 666 ./cache/* ./templates_c/* ./uploads/*
find . * -type d -name 'bwiki' | while read bwiki; do
cd $bwiki
chmod -R 777 wiki wiki.en attach backup cache counter trackback diff
cd $1
done
exit

以上、スクリプトまでUTF化するやつでした・・・。
pathはフルパスで指定しないとダメ。要nkf。

とおもったあらpukiwiki UTF8化の手法でいけるかもしれない。
http://fullmetal.dip.jp/pukiwiki/index.php?memo%2F%E6%94%B9%E9%80%A0%2FUTF-8%E5%8C%96
内容が違うので注意が必要。
あーんど
上のsh実行した後iconvで決め打ちで変換すると多分ファイルが壊れます・・・。




2007年2月27日火曜日

bayes awlをmysqlに格納する

http://www200.pair.com/mecham/spam/debian-maia-spamassassin-sql.html

何をみて設定したのかさっぱり覚えてないのだが、mysqlに格納されていた。
bayes_store_module Mail::SpamAssassin::BayesStore::SQL
bayes_sql_dsn DBI:mysql:maia:localhost
bayes_sql_username amavis
bayes_sql_password passwd

auto_whitelist_factory Mail::SpamAssassin::SQLBasedAddrList
user_awl_dsn DBI:mysql:maia:localhost
user_awl_sql_username amavis
user_awl_sql_password passwd


local.cfに書き込む。
んー。wikiにでもまとめようかな。もう訳がわからなくなってきた。
しかしサーバー廃止前日に気づいて・・・よかった。


exim修正

localのメールが行方不明になっていた。
サーバー名はmail.localdomainなのだがplesk8ではlocaldomain扱いなのでメールは届かない。
ドメインエイリアスを使ってメールの設定をするとおかしなことになる。
mail.mail.localdomainなどが追加され気持ちがわるい。
ただ単にhoge@mail.localdomain宛のメールをhoge@localdomainにしてくれる機能ではないらしい。
httpでは単なるaliasなのにここら辺が頭の悪さを感じる。(悪いのは私??)

ということでローカルからのメールを一つのアドレスに転送するようにする。
参考。
http://blog.fuktommy.com/1140792128
http://www.ijs.si/software/amavisd/README.exim_v4_app2.txt

これをみて追加してみたのだが、実は上手くいってるかわからない。
というのもmail.localdomainのmxを引くとpleskの設定の影響でmail.mail.localdomainとでてきてしまうのだ。
明日には消えるだろうから、上手く行くことを祈ろう。

exim.confは安定したと確信できたら公開する予定だ!


スキャンでエラー

dns設定を間違っていたせいかもしれないがエラーが出る。
451 4.5.0 Error in processing, id=28294-09, virus_scan FAILED: DBD::mysql::st execute failed: Duplicate entry 'mail' for key 2 at /usr/sbin/amavisd line 3370.

virus_scanに失敗とあるが、何だろうか・・・。
見当違いかもしれないけれど先日dr.webにamavisの権限を動かしたので
drwebのホームにすべて移してみる。
/var/amavisから移動したのは次のディレクトリ
db maia tmp var
ついでに/var/virusmailも移動。
amavisd.confを修正してスタート。

うーん、違う気がする・・・。
IP登録ミスだけなら明日直るだろう・・・。その時に戻そう・・・。めもめも。

追記
何故か・・・何故かは知らないのだがSuperUserに登録していたユーザーのデータが消えていた。
手動で全部追加したところ直った。
うーん、想像としてはエクスポートしてインポートしたときに初期登録のものがコードの関係で消えた・・・って感じかなぁ??

どちらにしても解決してよかった。


2007年2月26日月曜日

Plesk メールアドレスの一括登録

Pleskwikiの情報からメールアドレスの一括登録を試みた。
1.データの並べ順が違うっぽい。DrWeb無効にしたつもりがみんなONになった。
2.入ってないもののは見ないっぽい。SpamAssassinの件は何もでなかった。
3.何故かqmailのrcptdomainやvirtualdomainが更新せずメールが受け取れない

3が致命的です。
画面上からは有効になっているのに、実際は無効になっている。
一回無効にして有効にすると直るんだけど・・・。
メーリングリストも一括登録できないし、Plesk8になってだいぶ機能強化されてるけど
どうにも弱いところがありますなぁ・・・。

とりあえず残り二日にして本格起動しました。
先の思いやられる旅立ちです・・・。


XOOPS UTF-8化

環境をUTF-8にしたため、xoopsがそのままでは動かない。
とりあえずメモ。
トラブルシューティング
移行するのにtar.bz2で固めてwgetで転送してパーミッションの設定を間違えて画面真っ白・・・。
cahce template_c uploadsは777にする必要がある・・・。

動いたけど文字化け。
これは拾ったファイルがダメだったようで、iconvで変換したら動いた。
ただメニューが英語。pukiwikiはローカルにファイルを保存するので変換が必要。
・・・スクリプトはUTF-8で書き出してくれるのだろうか??
メニューが英語。
どこにあるんだろう、言語ファイル・・・。

言語ファイルは次にもあり。
ただ、やっぱり文字化けする。






2007年2月25日日曜日

MysqlとPHPとUTF-8と・・・

いざ、移行を開始してみたらどうにも文字化けが直らない。
私は文字コード問題が苦手。しかし、そうもいってられないので調べて見た。
・mysqlとphpの文字コードが違えば文字化けする。
・mysqlでもクライアントとサーバーの文字コードが違えば文字化けすることがある。(自動変換機能によるもの。サーバーとクライアントの文字コードをそろえることによって自動変換いよる文字化けを抑制する)
・mysqlでクライアントをbinaryにすれば自動変換が無効になり格納文字コードで処理されるようになる。
・サーバーの文字コードを変更する場合は、変更前にDUMPし、変更後に戻してやる必要がある。
・文字コードの確認は
mysql > SHOW VARIABLES LIKE 'char%';
で確認できる。
# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor. Commands end with ; or ¥g.
Your MySQL connection id is 2238 to server version: 4.1.20

Type 'help;' or '¥h' for help. Type '¥c' to clear the buffer.

mysql> SHOW VARIABLES LIKE 'char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | ujis |
| character_set_connection | ujis |
| character_set_database | ujis |
| character_set_results | ujis |
| character_set_server | ujis |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
7 rows in set (0.00 sec)


うーん、ujis(EUC)だ。
こことここを見ながら設定を変更することにする。
ただ、問題になりそうなこともある。
Pleskは内部にphpを抱えているという記述を見たことがある。
そうなるとここでMysqlの設定を変更するとPleskのPHPと不整合を起こす可能性がある。
とおもったらPlesk用のphp.iniは初期設定そのまま。大丈夫かもしれない。

補足:
また途中でデータ喪失してたみたい・・・。寝ぼけながら作業しちゃダメね。
Pleskのデータはすべて書き出してみたけど決め打ちしてるみたいで変更するとエラーになった。
日本語データは扱わないだろうからそのままで影響ないだろうし、そのままにする。
障害が発生したらその時考えよう・・・。




2007年2月21日水曜日

PublicDNS

WebarenaのDNSが腐ってる・・・。
まぁ、Pleskの設定TTLが長いんだとおもうんだけどね。
他の所はみんな書き換わってるのになーぜーかーWebarenaSuiteProの
DNSだけが更新されないのですよ。
いままでプライマリメールサーバーだったので、はやく新しいプライマリサーバーのIPを
lookupしてもらってセカンダリ設定にして来たメールを転送してやりたいのに
12時間以上経過しても更新されないのです。
タイミングの問題です! 設定の問題です!
でも時間に追われているので頭にきます。ClaraもさっぱりIPの追加してくれません。
あと1週間なんだよぉ、それまでに安定させないといけなんだよおおおお。

ということでアホなWebarenaのDNSは切り捨てることにする。
/etc/resolv.confがあるのでこれを開く。
DNSサーバーが登録されているので削除。
http://www.tech-faq.com/public-dns-servers.shtml
適当にpublicDNSからIPをひっぱってくる。
ただし!
# nslookup
> server IP
> www.yahoo.co.jp
などサーバー上で行い、サーバーからきちんとDNSが引けるか確認する。
通常プロバイダなどのものはPublic(ちゃんとfowardしてくれて、自分のIP以外も答えてくれる)に動作するが自分の所のIPでないと応えてくれなかったりする
また自分が引きたいものが少なくとも引けるか確認しよう。

ということでSpeakEasy Nameserversに記載されているIPで無事動作を確認した。
実際にはサービスの規約とかそういうのを確認しないとまずいんだけど
1週間ということで(ごにょごにょ

いつもサーバー移転ではDNS更新で悩まされる。
もう移転することがなくなるといいなぁ・・・。



PostfixAdmin 追加

Postfixの設定をミスっていた。
おやじ殿のところの情報ではバックアップが動かない。
relay_domains = mysql:/etc/postfix/mysql_relay_domains_maps.cf
中身
user = postfix
password = password
hosts = localhost
dbname = postfix
table = domain
select_field = domain
where_field = domain
additional_conditions = and backupmx = '1'

これに伴い
mysql_virtual_domains_maps.cf
中身
user = postfix
password = password
hosts = localhost
dbname = postfix
table = domain
select_field = domain
where_field = domain
additional_conditions = and backupmx = '0' and active = '1'

またpostfixadminのオプションで/usr/local/virtualで
domain名で保存するオプションを指定していたので
dovoecotでも%dでドメイン名の下に読みに行くように指定が必要。
またpostfixadminで上のもう1つのオプション、
ドメインの下にローカルパートで保管するようにすると
postfixではローカルパートで保存し、dovecotではドメイン名付きで読みにいって
うまくいかなかった。
2つめのローカルパートで保存するオプションは無効にしないとだめなようだ。

昔はちゃんと設定出来ていたのでよかったが、こりゃ、旧鯖が
なければ二度とセカンダリの設定を出来なかったような気がする・・・。



2007年2月19日月曜日

Plesk with Maia MaiaMailguard(7)

大体終わりである。
Spamフィルタの更新手続きをやってないので
おやじ殿のところ参考に1日1回更新されるようにする。

一緒にメンテナンススクリプトも走るようにしておく。

ここで問題発生。
clamavを利用している分には問題ないのだが
claraではdrwebが無料で使えるのでこれを使わない手はない。
ところがamavisと連携しようとするとamavisがtmpファイルを自分の権限で
造ってしまうので、drwebでは読めない、という問題が発生した。
(もしかしたらclamavもユーザー権限を合わせる必要があるかもしれない)

clamavなら実行権限をamavisにしてもいいだろうが、今回のdrwebはpsaパッケージ。
いつ、更新されて権限がずれるかわからない。
ということでamavisユーザーで設定されていたものをすべてdrwebに変更した(つもり)
結果無事スキャンできるようになった。

### http://www.sald.com/, http://www.dials.ru/english/, http://www.drweb.ru/
['DrWebD', ¥&ask_daemon, # DrWebD 4.31 or later
[pack('N',1). # DRWEBD_SCAN_CMD
pack('N',0x00280001). # DONT_CHANGEMAIL, IS_MAIL, RETURN_VIRUSES
pack('N', # path length
length("$TEMPBASE/amavis-yyyymmddTHHMMSS-xxxxx/parts/pxxx")).
'{}/*'. # path
pack('N',0). # content size
pack('N',0),
'/var/drweb/run/drwebd.sock',
# '/var/amavis/var/run/drwebd.sock', # suitable for chroot
# '/usr/local/drweb/run/drwebd.sock', # FreeBSD drweb ports default
# '127.0.0.1:3000', # or over an inet socket
],
qr/¥A¥x00[¥x10¥x11][¥x00¥x10]¥x00/s, # IS_CLEAN,EVAL_KEY; SKIPPED
qr/¥A¥x00[¥x00¥x01][¥x00¥x10][¥x20¥x40¥x80]/s, # KNOWN_V,UNKNOWN_V,V._MODIF
qr/¥A.{12}(?:infected with )?([^¥x00]+)¥x00/s,
],

http://www.maiamailguard.com/maia/wiki/AVDrWeb

ここからテスト用のファイルをもってきて送ったところ見事にウイルスと判断した。
よかった!

Clamavに関しては必要がないのだが(Dr.Webが入っているため)
一応、入れることにした。
インストールしたのはclamav デーモンでは利用しないのでclamdはいれない。
これをセカンダリスキャナにした。

問題もある。
現在の設定だと送信メッセージはスキャンされない。
以前は出来たので出来れば送信スキャンもしたい。
ちょっと考えなくてはならないだろう。



2007年2月18日日曜日

Plesk with Maia MaiaMailguard(6)

Maiaの記事書いたけど間違って消しちゃった・・・。
だからblogは・・・ぶつぶつ。

スーパーユーザーを登録する
システム設定から日本語をインストールする
デフォルトドメインの設定を決める
ドメインを登録する

これでとりあえず使えます。
実はeximの設定がまずくてオープンリレーになっていた(激汗

ポカミスでrcptのチェックで最後がacceptになっていたのだ。
denyにしないといけないのに・・・。
あと余計なaclをacceptで有効にしたこと。
relayの設定を間違っていたこと(涙

ああ、BLにのらなきゃいいな。こまったこまった・・・。
http://www.rbl.jp/svcheck.php
http://www.abuse.net/relay.html
http://www.exim.org/exim-html-4.66/doc/html/spec_html/ch11.html
http://hatuka.nezumi.nu/techdoc/Spam-Filtering-for-MX.ja/html/exim-firstpass.html
現在、ほぼ転送仕様で使える!といえそうな形になってきたので
後日掲載予定・・・。



Plesk with Maia MaiaMailguard(5)

翌日である!(え?)

さっそくだがログを見るとエラーがSmartyとシステムアクセスで出ているようだ。
とりあえずSmartyをなんとかしなくてはいけない。
とおもったらよいのがあった。
http://phpspot.org/blog/archives/2005/12/pearsmartyphpmy.html
Pleskはセキュリティ関係がうるさい。
せっかくpearを解放しているのだからpear環境にSmartyをつっこめれば上手くいくかもしれない。
さっそく

# pear channel-discover pearified.com
Adding Channel "pearified.com" succeeded
Discovery of channel "pearified.com" succeeded
# pear list-channels
Registered Channels:
====================
Channel Summary
pear.php.net PHP Extension and Application Repository
pearified.com PEAR-Compatible Extension and Application
Repository
pecl.php.net PHP Extension Community Library
__uri Pseudo-channel for static packages
# pear install pearified/Smarty
downloading Smarty-2.6.8.tgz ...
Starting to download Smarty-2.6.8.tgz (146,444 bytes)
................................done: 146,444 bytes
install ok: channel://pearified.com/Smarty-2.6.8


風呂にはいってワインを飲んだだけあって調子が良い。
Smartyがみつけられないようなので修正。
/var/www/vhosts/hogehoge.jp/htpdocs/maia/config.php
$smarty_path = "/usr/share/pear/Pearified/Smarty";
コメントアウトされている上記のpathを変更してやった。
エラーは減ったがのこったのは意味不明なエラー・・・。

[client xxx.xxx.xxx.xxx] maia: 2007-02-18 00:11:01 (JST) - Warning - rename(/tmp/wrtucoVaK,themes/ocean_surf/compiled//%%6A^6A5^6A537DD8%%login.tpl.php): Permission denied at /usr/share/pear/Pearified/Smarty/internals/core.write_file.php line [46]¥n
[client xxx.xxx.xxx.xxx] maia: 2007-02-18 00:11:01 (JST) - Warning - chmod(): Permission denied at /usr/share/pear/Pearified/Smarty/internals/core.write_file.php line [47]¥n
[client xxx.xxx.xxx.xxx] maia: 2007-02-18 00:11:01 (JST) - Warning - fetch(themes/ocean_surf/compiled//%%6A^6A5^6A537DD8%%login.tpl.php): failed to open stream: No such file or directory at /usr/share/pear/Pearified/Smarty/Smarty.class.php line [1251]¥n
[client xxx.xxx.xxx.xxx] maia: 2007-02-18 00:11:01 (JST) - Warning - fetch(): Failed opening 'themes/ocean_surf/compiled//%%6A^6A5^6A537DD8%%login.tpl.php' for inclusion (include_path='/usr/share/pear/Pearified/Smarty:.:/usr/share/pear:./libs:') at /usr/share/pear/Pearified/Smarty/Smarty.class.php line [1251]¥n 


themeフォルダの中のフォルダまでアクセス権を755にしてやる。
細かいパーミッションに関しては後日詰めるとしておおざっぱに行く・・・。

残りのエラー
maia: 2007-02-18 00:30:54 (JST) - Warning - getimagesize(themes/ocean_surf/images/maia-logotoolbar.gif): failed to open stream: Permission denied at /var/www/vhosts/hogehoge.jp/httpdocs/maia/smarty.php line [191]¥n

うーん、とりあえずimagesを755 compiledを777にしたら動作した。
問題がありそうな設定だけどとりあえず動いたからよしとする。

さて、ここからが本番である。
maiaの認証方式は多岐に渡る。
postfixの際はsqlで読みにいった。今回も出来ればsqlでいきたい。
が、無理であればpopやimapでもいいのだろう。





Plesk with Maia MaiaMailguard(5)

翌日である!(え?)

さっそくだがログを見るとエラーがSmartyとシステムアクセスで出ているようだ。
とりあえずSmartyをなんとかしなくてはいけない。
とおもったらよいのがあった。
http://phpspot.org/blog/archives/2005/12/pearsmartyphpmy.html
Pleskはセキュリティ関係がうるさい。
せっかくpearを解放しているのだからpear環境にSmartyをつっこめれば上手くいくかもしれない。
さっそく

# pear channel-discover pearified.com
Adding Channel "pearified.com" succeeded
Discovery of channel "pearified.com" succeeded
# pear list-channels
Registered Channels:
====================
Channel Summary
pear.php.net PHP Extension and Application Repository
pearified.com PEAR-Compatible Extension and Application
Repository
pecl.php.net PHP Extension Community Library
__uri Pseudo-channel for static packages
# pear install pearified/Smarty
downloading Smarty-2.6.8.tgz ...
Starting to download Smarty-2.6.8.tgz (146,444 bytes)
................................done: 146,444 bytes
install ok: channel://pearified.com/Smarty-2.6.8


風呂にはいってワインを飲んだだけあって調子が良い(?)
Smartyがみつけられないようなので修正。
/var/www/vhosts/hogehoge.jp/htpdocs/maia/config.php
$smarty_path = "/usr/share/pear/Pearified/Smarty";
コメントアウトされている上記のpathを変更してやった。
エラーは減ったがのこったのは意味不明なエラー・・・。

[client xxx.xxx.xxx.xxx] maia: 2007-02-18 00:11:01 (JST) - Warning - rename(/tmp/wrtucoVaK,themes/ocean_surf/compiled//%%6A^6A5^6A537DD8%%login.tpl.php): Permission denied at /usr/share/pear/Pearified/Smarty/internals/core.write_file.php line [46]¥n
[client xxx.xxx.xxx.xxx] maia: 2007-02-18 00:11:01 (JST) - Warning - chmod(): Permission denied at /usr/share/pear/Pearified/Smarty/internals/core.write_file.php line [47]¥n
[client xxx.xxx.xxx.xxx] maia: 2007-02-18 00:11:01 (JST) - Warning - fetch(themes/ocean_surf/compiled//%%6A^6A5^6A537DD8%%login.tpl.php): failed to open stream: No such file or directory at /usr/share/pear/Pearified/Smarty/Smarty.class.php line [1251]¥n
[client xxx.xxx.xxx.xxx] maia: 2007-02-18 00:11:01 (JST) - Warning - fetch(): Failed opening 'themes/ocean_surf/compiled//%%6A^6A5^6A537DD8%%login.tpl.php' for inclusion (include_path='/usr/share/pear/Pearified/Smarty:.:/usr/share/pear:./libs:') at /usr/share/pear/Pearified/Smarty/Smarty.class.php line [1251]¥n 


themeフォルダのアクセス権を755にしてやる。
細かいパーミッションに関しては後日詰めるとしておおざっぱに行く・・・。

残りのエラー
maia: 2007-02-18 00:30:54 (JST) - Warning - getimagesize(themes/ocean_surf/images/maia-logotoolbar.gif): failed to open stream: Permission denied at /var/www/vhosts/hogehoge.jp/httpdocs/maia/smarty.php line [191]¥n

うーん、とりあえずimagesを755 compiledを777にしたら動作した。
問題がありそうな設定だけどとりあえず動いたからよしとする。

さて、ここからが本番である。
maiaの認証方式は多岐に渡る。
postfixの際はsqlで読みにいった。今回も出来ればsqlでいきたい。
が、無理であればpopやimapでもいいのだろう。

で!
phpmyadminでみてみたがアカウントとパスワードがうまい具合に格納されてなかった。
hordeだとそれに合致するのだがhordeにログインするまで駄目な模様。
であればimapでもいいだろう
maia.confの$auth_method = "sql";をimapに変更する。
これでとりあえずログイン可能になる。

今宵はここまで!



Plesk with Maia MaiaMailguard(4)

ということでmaia。
説明はおやじ殿参照。以上。

とりあえずamavisdをyumで入れる。これでユーザー作成したりフォルダ作成の手間がはぶける。
#yum install amavisd-new
dagを入れてないとインストールはされない。
大量のパッケージが一緒にインストールされた。
後は勝手にamavisd-newがバージョンアップしないようにyumに追記する。
exclude=amavisd-new*
かなり手間が省けるはず。

インストール開始
適当なところに(homeの下とか)にフォルダを掘る。
# mkdir maia [Enter]
# wget http://www.maiamailguard.com/files/maia-1.0.2.tar.gz
# tar zxf maia-1.0.2.tar.gz
# wget http://www.aconus.com/~oyaji/suse9.3/20070210-maia-1.0.2-japanese.patch
# patch -p0 < 20070210-maia-1.0.2-japanese.patch
ここでおやじ殿に心より感謝して柏手を2回打ち一礼。
つぎにmaiaというdbとamavisというユーザーを作成する。
Plesk8からはphpmyadminがふつうに使えるようになったのでこれで作成すると楽ちん。
作成したらmaia-1.0.2フォルダに移動し
#mysql -u root -p maia < maia-mysql.sql
続いてファイルのコピー。
上記フォルダのまま
# mv /var/amavis /var/amavisd
# mkdir /var/amavisd/maia
# mv scripts /var/amavisd/maia/.
# mv templates /var/amavisd/maia.
基本的に最後にフォルダが空になるように作業する。
# mv maia.conf.dist /etc/maia.conf
# chown amavis:amavis /etc/maia.conf
# chmod 640 /etc/maia.conf
ここでいきなり文字化けに見舞われたので修正。
vi ~/.vimrc
set encoding=utf-8
set fileencoding=japan

ファイルが新規作成でも問題ないです。
# vi /etc/maia.conf
$password $baseurlを自分のものに書き換え。
# cd /var
# mkdir virusmail
# chwon amavis.amavis virusmail
# chmod 750 /var/virusmails [Enter]
# chmod 640 /var/amavisd/maia/templates/*.tpl [Enter]
# chmod 750 /var/amavisd/maia/scripts/*.pl [Enter]
# chown -R amavis.amavis /var/amavisd/maia

# /var/amavisd/maia/scripts/configtest.pl
表示されたのをcpanで入れる。
yumで入れてなかったり心配なら親父どののをコピペしておく。
# yum install arc cabextract freeze lzo lzop ncompress nomarch ripole unarj unrar zoo perl-Archive-Tar perl-Archive-Zip perl-BerkeleyDB perl-Compress-Zlib perl-Convert-BinHex perl-Convert-TNEF perl-Convert-UUlib perl-IO-stringy perl-MIME-tools perl-MailTools perl-Net-Server perl-TimeDate perl-Unix-Syslog

さて、足りないのは
# yum install perl-Crypt-CBC perl-Crypt-OpenSSL-RSA perl-Data-UUID perl-DBD-Pg perl-Crypt-Blowfish perl-IO-Zlib perl-IP-Country perl-Net-CIDR-Lite perl-Template-Toolkit


つづいてCPANだ。CPANの設定に関してはここを参照。
とりあえずなら
#perl -MCPAN -e shell
でEnter連打でOK.ただ、Mirrorだけはちゃんと選択しておきましょう(Asiaで始まる質問)
最初に更新しろといわれるとおもうので更新してやりましょう。
おわったら入ってないファイルを追加。うちは2つだけ。
install Mail::DomainKeys
install Mail::SPF::Query
ちなみに
# perl -MCPAN -e 'CPAN::Shell->install(CPAN::Shell->r)'
で、CPANのモジュールを一気にアップデートできるということでやっちゃいました。
考えてみたらyumで入れたメリットが全部なくなるじゃん・・・orz
よい子はまねしない方が良いです。
maia1.02のフォルダにもどり
mkdirでphpのインストール先のフォルダを掘ります。
mv * /var/www/vhosts/hogehoge.jp/httpdocs/maia/.
つづいてSmarty
ダウンロードして回答したディレクトリに移動して
# mv libs /var/www/vhosts/hogehoge.jp/httpdocs/maia/libs/Smarty
maiaのフォルダに移動し
# cp config.php.dist config.php
# vi config.php

とりあえず書き換えるのは次だけ
$default_display_language = "ja";
$default_charset = "UTF-8";
$maia_sql_dsn = "mysql://amavis:passwd@tcp(localhost:3306)/maia";
$address_rewriting_type = 4;
以上
$auth_method = "internal";
はまだそのまま。
# chown -R hogehoge.psacln maia
maiaの所有権を変更しておく

チェックスクリプトを叩くとpearが無いと怒られるので
ここを見て設定する。
注意点は書いてあるフォルダがでたらめということ。

fileではパーミッションエラー。
とりあえずmodで666にしてやる。

yum list | grep pear
で足りないものを探していれてやる。
yum install php-pear-log php-pear-mail_mime php-gd php-imap
あとはpearだがしょっぱなからつまずいた。
おやじ殿の書いているとおり
# pear upgrade Archive_Tar
# pear upgrade PEAR-1.3.3 
まではいいがpearが1.5xになっていてさらに
# pear install Structures_Graph
が必要これでやっと
#pear upgrade pear
でバージョンがあがった。
あとは足りないのをひたすらインストール
とおもったらうまくはいらないのが・・・。
# pear channel-update pear.php.net
# pear install channel://pear.php.net/Image_Canvas-0.3.0
# pear install channel://pear.php.net/Image_Graph-0.7.2

エラーをみながら地道にインストール。
これはβ版だったりα版だったりと安定版じゃないためらしいです。
最後にmcryptはおやじ殿の造られたものをインストール。
develをyumでいれてれば問題なくrpmが使えました。感謝!
apacheを再起動させるとやっとエラーがなくなりました・・・。長かった!
# cd /usr/sbin
# mv amavisd amavisd.org
# mv ~/maia/maia-1.0.2/amavisd-maia amavisd
# chown root amavisd
# chmod 755 amavisd
ちなみに起動スクリプトが自前のがあるならrpmを入れておく必要がないので
ここで削除した。色々巻き添えで消えたけど、消えた分は入れ直し・・・。

最後にamavisd.conf.distをamavisd.confにして/etcフォルダに放り込む。
修正箇所はおやじ殿のをみて欲しい。
ここで
# service amavisd start
で問題なく動作したらとりあえずstep1完了である。
起動してもすぐ落ちたりするので
# ps ax
で確認したり/var/amavisd/amavis.log
をチェックしたりしよう。
またログイン画面もちゃんとでるか確認しよう。
(うちは・・・なぜだ、でないぞ・・・)

とりあえず本日はここまで!












2007年2月17日土曜日

Plesk with Maia MaiaMailguard(3)

xinetd勉強完了。
そしてeximをxinetd配下で動かすのを断念。
ここに記事があって
xinetdも大丈夫だという風に見える。
xinetd.d配下にeximファイルをつくって書き換えたものを放り込む。
で、/etc/sysconfig/eximも書き換えてqueueモードにしてやる。
するとメールは転送されない・・・。-bsオプションが悪いのかもしれないが
面倒なのでeximはそのままデーモンとして起動するようにする。
xinetdでコントロールは出来るようだが、相手ホストで判断することは出来ても
受け取るメールドメインで判断は出来そうもない。
ということで、eximはxinetd配下にはおかずに単独に動作させることにする。

ということで宿題のeximの設定だがなんとかなりそうだ。

local_interfaces = 0.0.0.0.25
domainlist local_domains = /var/qmail/control/rcpthosts
domainlist relay_to_domains =
hostlist relay_from_hosts = 127.0.0.1
acl_smtp_connect = acl_connect
acl_smtp_helo = acl_helo
acl_smtp_mail = acl_mail_from
acl_smtp_rcpt = acl_rcpt_to
acl_smtp_data = acl_data
never_users = root
host_lookup = *
rfc1413_hosts = *
rfc1413_query_timeout = 30s
ignore_bounce_errors_after = 2d
timeout_frozen_after = 7d
begin acl
acl_connect:
accept
acl_helo:
accept
acl_mail_from:
accept
acl_rcpt_to:
accept hosts = : +relay_from_hosts
deny local_parts = ^.*[@%!/|] : ^¥¥.
accept authenticated = *
accept domains = +local_domains
accept
deny message = Relay not permitted
acl_data:
accept
begin routers
amavis:
driver = manualroute
domains = +local_domains
transport = amavis
route_list = "* localhost byname"
self = send
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
begin transports
remote_smtp:
driver = smtp
amavis:
driver = smtp
port = 10024
allow_localhost


上記設定でスパムを大量配信してしまいました(汗
以上。
あとは/var/qmail/controlにsmtproutesを作成し
としてやればメールの送信をexim経由でやってくれる。
上記内容は(余計なものをはいってるけど(汗))ローカルと判断したメールは全部amavisに、それ以外はすべてdnsで検索してmxに投げてやる、という仕様である。
送信にeximを絡ませなければいいのかもしれないが、なんとなく気持ち悪いので通すことにした。
このせいで設定でだいぶはまったのだが・・・。
当然だけど25番ポートを使って送信はできない。
submissionportを使えば送信できるのでこれは問題ないだろう。
(というか、submission使わないと送信できなだろうし・・・)
エラー対策とか必要な気もするけどとりあえずは後日とする。

さて、いよいよamavisdだ!


2007年2月16日金曜日

Plesk with Maia MaiaMailguard(2)

まず修正から(汗)
MysqlとPHPのバージョンは元に戻した。
戻し方はお願いしてバックアップからの復旧。
すっかりはまってしまってどこから手をつけたらいいのかわからなくなった。
ので、当分PHP4とMysql4.1でいく。

で!
Postfixもダメだった。原因不明だがどうもDagで何かをアップデートすると
動かなくなっているような気がする。
バックアップ復旧直後は問題なく動いていたのだが再起動したら
まったく返事をしなくなってしまった。

ということでeximを使うことにした。sendmailという選択肢もあったが
わざわざ遅いといわれるものを使う必要はないだろうし、なんとなく格好が悪い。
VPS7の鯖管がNO1と呼んでいたし確か軽かったはずだからrelayにはちょうど良いだろう。

installはyum一発。
設定はここを参考に。

ぢつはここではまったのだ。ローカル配送だと問題ないのに外部からのを全部はじく。
eximの設定のせいだとおもっていぢりまくったのだが、実は違った。

tcpラッパーが原因なのだが、正直こいつの使い方がよくわからんのだ。
hosts.allowっていうのはわかるが、いままで設定が必要になったことがなかった。
eximをxinetd対応させる方法もあったが、やると動作しない。
ということで
exim:all
を足したところやっとやりとりが出来るようになった。
これでamavisにかかれる。

ただその前にeximの設定をもう少し煮詰めないといけないだろう。
ローカルはないので不要なものは消したりしないといけないだろう。
うーん、面倒だ。
設定の公開は・・・恥ずかしくないものができた後日に。

tcpラッパーについても勉強しないと・・・。




2007年2月13日火曜日

Plesk with Maia MaiaMailguard(1)

昨日の仮定を実行する。
手順を考えてみよう。
1.Qmailの動作確認(送受信)
2.待ち受けポートを変更してsubmissonでのテスト
3.Postfixのインストール(Plusのmysql対応版)
4.Postfixの転送設定と受信テスト
5.MaiaMailguardのインストール(送受信テスト)

足りない部分は補足しながらということで・・・。
1.については昨日実験済み。まぁ、エラーがでたらPlesk使ってる意味がない。
2.について、変更を試みる。587での送信が面倒だ。
hordeは多分25を使っているし、変更するのも面倒だ。何かクライアントが必要になる。
ちなみにHDEはコンパネ上から一発変更できるようだ。
あっちはそういうことも想定してるってことね。

まず/etcにあるサービスに次の行を追加する
smtp-qmail 10025/tcp smtp_psa # Plesk qmail
smtp-qmail 10025/udp smtp_psa # Plesk qmail 
次に/etc/xinetd.dにあるsmtp_psaを変更
最初の行を書き換える
service smtpsmtp-qmail
リスタートして確認する。
#service xinetd restart
#service qmail restart
うーん、qmailがリスタートしない。startすると出るからinitdかなぁ・・・。
とりあえず
#netstat -anp | grep xinetd
tcp 0 0 0.0.0.0:465 0.0.0.0:* LISTEN 26502/xinetd 
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 26502/xinetd 
tcp 0 0 0.0.0.0:10025 0.0.0.0:* LISTEN 26502/xinetd 
tcp 0 0 0.0.0.0:106 0.0.0.0:* LISTEN 26502/xinetd 
tcp 0 0 0.0.0.0:587 0.0.0.0:* LISTEN 26502/xinetd 
25番ポートが消え10025をlistenするようになった。

実はこの後、いろんなことをやったんだけど、間違って保存しないでリブート・・・(涙)
どうやってもPostfixが動かず、という落ちでした。
さて、どうしたものか・・・。





Pleskとmaia mailguard

PleskはMTAにqmailを利用している。
eximとpostfixは利用したことがあるがqmailはない。
当然maia mailguardと併用する方法もかかれてない。

で、調べた。
まずオフィシャルではまだMTAに関するドキュメントがない。(07.2.12現在)
http://www.maiamailguard.com/maia/wiki/InstallGuide

仕様としてはamavisd-newと同じなのだからamavisd-newの資料をあさる。
http://www.ijs.si/software/amavisd/

Dual-MTAとか1.5-MTAとかいやーな感じの言葉が並んでいる。
調べるとdeamon-toolを利用して・・・あー、この時点でもうNGっす。
もうひとつはqueueを置き換えてamavisd-newに渡すようだけど
QMAILQUEUEというパッチが必要。Pleskで利用されているqmailは専用のもの。
ぱっとみた感じパッチは適用されてないような感じがする。

Dr.WEBも入っているようだが
http://drweb.jp/support/?config_mf_qmail
rpmからみてもqmail-queueを置き換えてる模様。

うーん、手詰まり。Pleskがどんな処理してるかわからないから
qmail自体に手をつけるのは無謀だろう。

やはりdeamon-toolsでやるか、何か考えないといけないんだろう。
メモ
QmailWiki
http://www.daionet.gr.jp/~knok/mail/

Dr.webのページで興味深い記述をみつけた。
スキャン後にキューに入れる前に別なソフトに渡せそうだ。

と、調べつつなやんでいてふとおもった。
PostfixをProxyにすればいいんじゃないだろうか。

postfix(25)>amavisd(10024)>qmail(10025)
でいけるんじゃないだろうか?

Pleskで他にrelayする方法

FMLの例

これを元に明日頑張ります。


2007年2月12日月曜日

Plesk8をMysql5とphp5で

Pleskはphpを内蔵しているので、本体のバージョンには影響されない、と
使えるネットのフォーラムでかかれていた。
本当かなぁ・・・。

Plesk8.1では最新のMYSQL5をフルサポート、と書いてある。
本当かなぁ・・・。

状況を見るに大丈夫な気はする。問題はどちらかというとMYSQLだろうなぁ。
ということで、試してみることにした。
早速repoを書き換えてplusを有効にする。
[plus]の
enabled=0

enabled=1
する。戻すつもりがなければ消してしまったも良い。

珍しく慎重にいこうとおもうのでphpからいく。
# yum install php
Setting up Install Process
Setting up repositories
dag 100% |=========================| 1.1 kB 00:00 
update 100% |=========================| 951 B 00:00 
base 100% |=========================| 1.1 kB 00:00 
addons 100% |=========================| 951 B 00:00 
extras 100% |=========================| 1.1 kB 00:00 
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package php.i386 0:5.1.6-1.2.1.centos set to be updated
--> Running transaction check
--> Processing Dependency: php = 4.3.9-3.22 for package: php-ldap
--> Processing Dependency: php = 4.3.9-3.22 for package: php-imap
--> Processing Dependency: php = 4.3.9-3.22 for package: php-devel
--> Processing Dependency: php-pear >= 1:1.4.9 for package: php
--> Processing Dependency: php = 4.3.9-3.22 for package: php-pgsql
--> Processing Dependency: php = 4.3.9-3.22 for package: php-gd
--> Processing Dependency: php = 4.3.9-3.22 for package: php-mbstring
--> Processing Dependency: php = 4.3.9-3.22 for package: php-pear
--> Processing Dependency: php = 4.3.9-3.22 for package: php-domxml
--> Processing Dependency: php = 4.3.9-3.22 for package: php-mysql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package php-pear.noarch 1:1.4.9-1.2.centos set to be updated
---> Package php-devel.i386 0:5.1.6-1.2.1.centos set to be updated
---> Package php-mbstring.i386 0:5.1.6-1.2.1.centos set to be updated
---> Downloading header for php-xml to pack into transaction set.
php-xml-5.0.4-5.centos4.i 100% |=========================| 13 kB 00:00 
---> Package php-xml.i386 0:5.0.4-5.centos4 set to be updated
---> Package php-pgsql.i386 0:5.1.6-1.2.1.centos set to be updated
---> Package php-imap.i386 0:5.1.6-1.2.1.centos set to be updated
---> Package php-ldap.i386 0:5.1.6-1.2.1.centos set to be updated
---> Package php-mysql.i386 0:5.1.6-1.2.1.centos set to be updated
---> Package php-gd.i386 0:5.1.6-1.2.1.centos set to be updated
--> Running transaction check
--> Processing Dependency: php-pdo-abi = %{pdoabi} for package: php-pgsql
--> Processing Dependency: php-domxml for package: psa-php4-configurator
--> Processing Dependency: automake for package: php-devel
--> Processing Dependency: php-pdo for package: php-mysql
--> Processing Dependency: php-pdo-abi = %{pdoabi} for package: php-mysql
--> Processing Dependency: php = 5.0.4-5.centos4 for package: php-xml
--> Processing Dependency: php-pdo for package: php-pgsql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package php-pdo.i386 0:5.1.6-1.2.1.centos set to be updated
---> Package automake.noarch 0:1.9.2-3 set to be updated
warning: package php-xml = 5.0.4-5.centos4 was already added, replacing with php-xml <= 5.1.6-1.2.1.centos
---> Package php-xml.i386 0:5.1.6-1.2.1.centos set to be updated
--> Running transaction check

Dependencies Resolved

=============================================================================
Package Arch Version Repository Size 
=============================================================================
Installing:
php-xml i386 5.0.4-5.centos4 centosplus 64 k
replacing php-domxml.i386 4.3.9-3.22

Updating:
php i386 5.1.6-1.2.1.centos centosplus 3.3 M
Installing for dependencies:
automake noarch 1.9.2-3 base 442 k
php-pdo i386 5.1.6-1.2.1.centos centosplus 60 k
php-pear noarch 1:1.4.9-1.2.centos centosplus 342 k
php-xml i386 5.1.6-1.2.1.centos centosplus 83 k
Updating for dependencies:
php-devel i386 5.1.6-1.2.1.centos centosplus 489 k
php-gd i386 5.1.6-1.2.1.centos centosplus 101 k
php-imap i386 5.1.6-1.2.1.centos centosplus 47 k
php-ldap i386 5.1.6-1.2.1.centos centosplus 30 k
php-mbstring i386 5.1.6-1.2.1.centos centosplus 968 k
php-mysql i386 5.1.6-1.2.1.centos centosplus 75 k
php-pgsql i386 5.1.6-1.2.1.centos centosplus 58 k

Transaction Summary
=============================================================================
Install 5 Package(s) 
Update 8 Package(s) 
Remove 0 Package(s) 
Total download size: 6.0 M
Is this ok [y/N]: y
Downloading Packages:
(1/13): php-5.1.6-1.2.1.c 100% |=========================| 3.3 MB 00:00 
(2/13): php-pear-1.4.9-1. 100% |=========================| 342 kB 00:00 
(3/13): php-devel-5.1.6-1 100% |=========================| 489 kB 00:00 
(4/13): php-mbstring-5.1. 100% |=========================| 968 kB 00:00 
(5/13): php-xml-5.0.4-5.c 100% |=========================| 64 kB 00:00 
(6/13): php-pgsql-5.1.6-1 100% |=========================| 58 kB 00:00 
(7/13): php-imap-5.1.6-1. 100% |=========================| 47 kB 00:00 
(8/13): php-pdo-5.1.6-1.2 100% |=========================| 60 kB 00:00 
(9/13): php-ldap-5.1.6-1. 100% |=========================| 30 kB 00:00 
(10/13): automake-1.9.2-3 100% |=========================| 442 kB 00:00 
(11/13): php-mysql-5.1.6- 100% |=========================| 75 kB 00:00 
(12/13): php-xml-5.1.6-1. 100% |=========================| 83 kB 00:00 
(13/13): php-gd-5.1.6-1.2 100% |=========================| 101 kB 00:00 
Running Transaction Test
warning: package php-xml = 5.0.4-5.centos4 was already added, replacing with php-xml <= 5.1.6-1.2.1.centos
Finished Transaction Test
Transaction Test Succeeded
warning: package php-xml = 5.0.4-5.centos4 was already added, replacing with php-xml <= 5.1.6-1.2.1.centos
Running Transaction
Installing: automake ####################### [ 1/22] 
Updating : php-gd ####################### [ 2/22] 
Updating : php-mysql ####################### [ 3/22] 
Updating : php-ldap ####################### [ 4/22] 
Updating : php-imap ####################### [ 5/22] 
Updating : php-pgsql ####################### [ 6/22] 
Installing: php-xml ####################### [ 7/22] 
Updating : php-mbstring ####################### [ 8/22] 
Updating : php-devel ####################### [ 9/22] 
Installing: php-pear ####################### [10/22] 
Updating : php [11/22]warning: /etc/php.ini created as /etc/php.ini.rpmnew
Updating : php ####################### [11/22] 
Installing: php-pdo ####################### [12/22] 
Cleanup : php ####################### [13/22]
Cleanup : php-pear ####################### [14/22]
Cleanup : php-devel ####################### [15/22]
Cleanup : php-mbstring ####################### [16/22]
Removing : php-domxml ####################### [17/22]
Cleanup : php-pgsql ####################### [18/22]
Cleanup : php-imap ####################### [19/22]
Cleanup : php-ldap ####################### [20/22]
Cleanup : php-mysql ####################### [21/22]
Cleanup : php-gd ####################### [22/22]

Installed: php-xml.i386 0:5.0.4-5.centos4
Dependency Installed: automake.noarch 0:1.9.2-3 php-pdo.i386 0:5.1.6-1.2.1.centos php-pear.noarch 1:1.4.9-1.2.centos php-xml.i386 0:5.1.6-1.2.1.centos
Updated: php.i386 0:5.1.6-1.2.1.centos
Dependency Updated: php-devel.i386 0:5.1.6-1.2.1.centos php-gd.i386 0:5.1.6-1.2.1.centos php-imap.i386 0:5.1.6-1.2.1.centos php-ldap.i386 0:5.1.6-1.2.1.centos php-mbstring.i386 0:5.1.6-1.2.1.centos php-mysql.i386 0:5.1.6-1.2.1.centos php-pgsql.i386 0:5.1.6-1.2.1.centos
Replaced: php-domxml.i386 0:4.3.9-3.22
Complete!

あっさり更新された。
httpdの再起動では心配なので年の為に再起動する。

うーん、動いているようにみえる。エラーもない・・・と思う。
webmailは本体に依存とフォーラムで書いてあったので試そうとするも
dnsの設定が終わってないので出来ない。
使ってないドメインがあったのでマイグレーションマネージャで移行する。
うーん、これすごい便利だ。
ダメだったらphpを戻すことにして運命のmysqlだ。
こっちは失敗したら大事になるのは間違いない・・・(汗

# yum update mysql
Setting up Update Process
Setting up repositories
dag 100% |=========================| 1.1 kB 00:00 
update 100% |=========================| 951 B 00:00 
base 100% |=========================| 1.1 kB 00:00 
centosplus 100% |=========================| 951 B 00:00 
addons 100% |=========================| 951 B 00:00 
extras 100% |=========================| 1.1 kB 00:00 
Reading repository metadata in from local files
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package mysql.i386 0:5.0.27-1.el4.centos set to be updated
--> Running transaction check
--> Processing Dependency: libmysqlclient.so.14 for package: perl-DBD-MySQL
--> Processing Dependency: libmysqlclient.so.14(libmysqlclient_14) for package: mysql-server
--> Processing Dependency: mysql = 4.1.20-1.RHEL4.1 for package: mysql-server
--> Processing Dependency: mysql = 4.1.20-1.RHEL4.1 for package: mysql-devel
--> Processing Dependency: libmysqlclient.so.14(libmysqlclient_14) for package: php-mysql
--> Processing Dependency: libmysqlclient.so.14 for package: mysql-server
--> Processing Dependency: libmysqlclient_r.so.14(libmysqlclient_14) for package: mysql-server
--> Processing Dependency: libmysqlclient.so.14 for package: php-mysql
--> Processing Dependency: libmysqlclient_r.so.14 for package: mysql-server
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package mysql-devel.i386 0:5.0.27-1.el4.centos set to be updated
---> Package mysql-server.i386 0:5.0.27-1.el4.centos set to be updated
---> Package mysqlclient14.i386 0:4.1.14-4.2.c4.1 set to be updated
--> Running transaction check

Dependencies Resolved

=============================================================================
Package Arch Version Repository Size 
=============================================================================
Updating:
mysql i386 5.0.27-1.el4.centos centosplus 3.3 M
Installing for dependencies:
mysqlclient14 i386 4.1.14-4.2.c4.1 centosplus 1.1 M
Updating for dependencies:
mysql-devel i386 5.0.27-1.el4.centos centosplus 2.3 M
mysql-server i386 5.0.27-1.el4.centos centosplus 9.9 M

Transaction Summary
=============================================================================
Install 1 Package(s) 
Update 3 Package(s) 
Remove 0 Package(s) 
Total download size: 17 M
Is this ok [y/N]: y
Downloading Packages:
(1/4): mysql-5.0.27-1.el4 100% |=========================| 3.3 MB 00:00 
(2/4): mysql-devel-5.0.27 100% |=========================| 2.3 MB 00:00 
(3/4): mysql-server-5.0.2 100% |=========================| 9.9 MB 00:01 
(4/4): mysqlclient14-4.1. 100% |=========================| 1.1 MB 00:00 
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: mysqlclient14 ######################### [1/7] 
Updating : mysql [2/7]warning: /etc/my.cnf created as /etc/my.cnf.rpmnew
Updating : mysql ######################### [2/7] 
Updating : mysql-devel ######################### [3/7] 
Updating : mysql-server ######################### [4/7] 
Cleanup : mysql ######################### [5/7]
Cleanup : mysql-devel ######################### [6/7]
Cleanup : mysql-server ######################### [7/7]

Dependency Installed: mysqlclient14.i386 0:4.1.14-4.2.c4.1
Updated: mysql.i386 0:5.0.27-1.el4.centos
Dependency Updated: mysql-devel.i386 0:5.0.27-1.el4.centos mysql-server.i386 0:5.0.27-1.el4.centos
Complete!


# service mysqld restart

・・・動いてる?
動いてる。Plesk上からDBにアクセスしてみるとデータもきちんとコンバートされたみたいだ。
心配だからrebootしてみる。・・・大丈夫っぽい!
これでやっとmaiaにチャレンジできるぞ〜。

phpでエラーが出ていた。
こちらを参考に。

#php -v
ってやって確認すればよかったのか、勉強になった(汗
ちなみにmoduleはphp配下のmodulesにあった。
なおしたら無事hordeも動きました。


サーバーセットアップ開始

土曜日に新FPSが納品されたのでセットアップを開始する。
本当は土日やろうとしたんだけど、yumが何故かはいってない。
手動で入れようとするとphytonとか入れるのが面倒で仕方ない。
いままでCentOS入れてyumはいってないというのは初めてなんだけど
せかしたから嫌がらせなのかなぁ(笑
PleskのSpamassassinモジュールとかもはいってないし、rootディレクトリには
Pleskのゴミが残ってるし、相当焦ってやっていたのかな・・・。
ということでほったらかしになっていた。

で、時間ができたので今日は下準備をする。
yumを入れようとするとパッケージのダウンロードが大変なので
aptをいれてyumに移行することにする。

#http://ftp.riken.jp/Linux/caos/centos/4.4/extras/i386/RPMS/apt-0.5.15cnc6-4.centos4.i386.rpm
#rpm -Uvh apt-0.5.15cnc6-4.centos4.i386.rpm 
/etc/apt/sources.list.d/centos.list

rpm http://ftp.riken.jp /Linux/centos/4/apt/i386 os updates extras contrib addons
としてやる。もちろん他のミラーでもいい。
上記はここを参考にさせてもらった。

#apt-get update
で更新してyumを入れようとしたところ
You might want to run `apt-get -f install' to correct these:
The following packages have unmet dependencies:
apr-devel: Depends: gcc (= 3.4.3) but 3.4.6-3 is to be installed
yum: Depends: libxml2-python but it is not going to be installed
Depends: python-elementtree but it is not going to be installed
Depends: python-sqlite but it is not going to be installed
Depends: urlgrabber
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

と怒られたので(apr-develがないのが原因か?)
#apt-get -f install
#apt-get install yum

これでやっとyumが使えるようになった。
/etc/yum.repo.d/にあるCentOS-Base.repoを編集することによって
Plusなどが使えるようになるし、ミラーも設定できる。
またrepoを追加すれば他のrepoも利用できる。例えばDAGなどだ。
今回は国内のミラーサーバーに変更しdagを追加する。

書き換えはおやじ殿を参考に。

#yum update
でdagが反映されて更新が行われる。
更新されたくないファイルがあるときには
yum.confのexclude=に記入しておく。

毎日更新させるには
#chkconfig --list yum
で確認しすべてoffになっていたら
#chkconfig yum on
とすることで自動起動が設定される。

これでメンテが楽になる。
このサーバーはPleskが入っているのでyumで自動更新は危険な気がするが
なんとかなると信じてみることにする。

今後の仕事としては
・Maia Mailguradのインストール(難しそう)
・旧サーバー移転
・PHPとMYSQLのバージョンの検討
これはPlusパッケージが入っているので自動で5の更新は出来る。
XOOPSなども含め5でダメということは環境的には少なくなってきてるはずだ。
問題はPleskとの相性だけど、一応Mysql5には対応しているらしい。

今なら破壊しても(汗)取り返しはつくが、運用してからでは取り返しがつかない。
ちょっと考えてしまう。




2007年2月8日木曜日

PostfixAdminとPostfix

冷静に考えると、セカンダリメールサーバーなのだから
Postfix-mysqlでなくても良いのである。
ましてやpostfixadminを入れる必要もないのである。
webminで何とかなるではないか。

まぁ、でもwebminはあまり好きではないし、mysqlベースでやっていれば良いことがあるかもしれない。あると信じよう。

気を取り直してスタートである。

先にhttpdを設定する。
面倒なのでwebminから設定ファイルの編集を利用する。
ServerName www.hostname:80
ServerAdmin webmaster@hostname
Options Indexes FollowSymLinks
DirectoryIndex index.htm index.html index.php index.html.var
Options Indexes FollowSymLinks
LanguagePriority ja en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
#AddDefaultCharset UTF-8

とりあえずこれくらいいぢればいいだろう。
この後はパソコンおやじ様のページが詳しいので省略。

補足
Postfixadminは以下のページ
http://high5.net/index.html
http://high5.net/page7_files/postfixadmin-2.1.0.tgz

mod_rewriteを使おうとして躓いた。
原因はmod_sslが入っていなかったため。
何故かhttpd-lでsoの一覧がでない。前にもひっかかったような気がする。

phpmyadminもいれよう。
phpmyadminもいれちゃう。
ファイルをダウンロードしてきたら解凍する。
#chown -R apache.apache phpMyAdmin
で所有権を変え
#cp config.sample.inc.php config.inc.php
#vi config.inc.php
でユーザー名とパスワードを設定してやる。
また認証をcookieにしているとblowfish_secretに適当な文字をいれとかないと動かない。
ちなみに私はmysqlが4-5にあげてしまっていたのでエラーが起きた。
#cat /usr/share/mysql/mysql_fix_privilege_tables.sql | /usr/bin/mysql --no-defaults --force --user=root --host=localhost --database=mysql -p
で更新が必要だった。

実はpostfixadminいれてる間に上記の作業をやった。
だってコマンドラインでやるの面倒なんだもん。

Postfix-mysqlを入れる。
#yum install postfix
mysqlがパッケージ名に含まれている。
エラーがでるが・・・ま、無視しよう。

sendmailが動いているようだから止める。
#chkconfig sendmail off
#service sendmail stop
#service postfix start
ps axで確認すると、うーん、うごいてる。rpmで入れるのはじめてだけど楽だなぁ。
でもwebminからは動作してないように見える。
・・・気にしないでおこう。

mysql対応といっても特にそれようの設定はなさそう。
あとはまたおやじ殿の通りにやるだけ。

補足してはvirtualDomainな環境では下記のオプションを入れた方がよい。
$CONF['domain_path'] = 'YES';
postfixadminのオプションだけどドメイン名の下にユーザーフォルダを掘ってくれるようになる。
メンテナンスが格段に楽になる。

dovecotの設定がまだだが、とりあえず無視。
postfixadminよりドメインを登録してMX設定をする。
またこのままだとローカルのメールが行方不明になるので
ローカルドメインを登録してやってすべて特定のアドレスに転送してやるようにする。
とりあえずこれでセカンダリで動くはずだ。







基本設定

面倒なのでwebminを使うことにする。
まずそのまえに軽くyum の設定。
plusを使えるようにしておく。理由は簡単。postfix-mysqlを使いたいから。

/etc/yum.repos.dにあるCentOS-main.repoでplusのところでenable=0になっている行があるので
これをさくっと消してやればいい。今後戻す可能性があるなら、数字を1にしよう。
近くのミラーを探したり他のrepoを足したりはしない。余計なことはいない方向で。

#yum update
で新しいパッケージがずらっとはいるはずだ。
plusと出ているのはplusパッケージからインストールされているということ。

あ! mysqlとphpが5になっちゃった!!
・・・まぁ、良いことにしよう。どうせ使うのはpostfixadminだけだし。
こうならない為にはyum.confのexclude=にアップデートしないパッケージ名を入れておく。例えば、mysql*という風にだ。(yumの恩恵を受けられなくなるけど・・・)
70個以上のパッケージが更新されてしばし休憩。

その間にチェックしていると・・・。あ、webminはいってる。古いけど。
ということで
#chkconfig webmin on
#service webmin start
で起動してやる。
https://hostname:10000
でアクセスできるはずだ。(httpじゃないとダメだった・・)
Change Language and Themeで日本語に変えてやろう。
ここでふと、webminって最初からSSLで動くようになっていたような、危ないよな、と
おもったらモジュールが足りないとエラーが。
さっきのupdateで抜けたのか、よくわからないがwebmimのSSL暗号化からファイルを追加する。
他の入れ方をした方がいいかもしれないけど、面倒なので(汗)
終わったらSSL暗号化からSSL暗号化出来れば使うように設定。
さらにアップグレードで最新版にwebminを更新する。

いたずらされると困るのでアクセス制限をかける。
通常IPが変わる環境の人が多いだろうからIPで指定してまうとトラブルの原因になる。
確認くんなどで確認してなるべく大きな枠組みで登録してやる。
*.so-net.ne.jpというような感じだ。これでもやるとやらないとでは雲泥の差となる。

次に時刻合わせ。
#vi /etc/sysconfig/clock
ZONE="Asia/Tokyo"
UTC=false
ARC=false

#cp /usr/share/zoneinfo/Japan /etc/localtime

で、再起動。サーバー自体の時刻いぢっても多分無駄です。

とりあえずここまで!
あとはPostfixの設定にかかります。



RapidVPS契約

いよいよサーバー移転である。
Webarenaを見捨てClaraへの全面乗り換えである。
しかも同じタイミングでClaraのFPS(RHEL3)からFPS(CentOS4)への乗り換え付きだ!
無事終わるのか、それ以前に寝られるのか心配だ。

ともかく現在はWebarenaのセカンダリは初期化してしまって再セットアップしていない。
面倒だったしプライマリが障害なく動いていたので気にしていなかったのだが、さすがに鯖移転となれば何が起こるかわからない。セカンダリは必要である。

ということでRapidVPSを借りてみた。理由は$10以下で即時開通出来るから。それだけ。
これはその覚え書きである。

契約自体は簡単。
契約するプランのオーダーをクリック。
アカウントの作成を先に行う。
またプランのところから同じくクリック。今度は別な画面がでるので入力。
クレジットで契約すれば即開通。
ただ厳密に審査してるよ!という脅しが表示され、
クレジットカードの請求書に書いてある2つの番号をフォームから登録しないとアカウントが無効になるよ!(多分)らしい。
とりあえずクレジットのチェックをしたけどさすがにまだ載ってない。
後日にしてメールできたパスワードを入れてサーバーに接続した。
OSはclaraと同じcentOS4だ。
OSの選択肢は一杯あるのでなかなか良い。
かなりsshがもっさりしているがセカンダリだから気にしないことにしよう。

[root]# uptime
04:06:12 up 42 min, 1 user, load average: 0.00, 0.02, 0.05




2007年2月6日火曜日

(不)完全日本語化完了!

Asukalさんの手をわずらわせつつついに日本語化が完了した。
現在微調整中。
もう少ししたらまとめようとおもう。
といっても、asukalさんが書いてるとおりやるだけなんだけど!
バッチももうちょい使いやすく直して公開します。
自分で言うのもなんだけど、かなりあると楽です。重宝です。
バッチってところが格好悪いのと汚いソースを公開するのが躊躇する所ですが(汗



最後の生鮮

DumpROM
http://wiki.xda-developers.com/index.php?pagename=DumpRom
http://d.hatena.ne.jp/KOTETU/00000100
http://forum.xda-developers.com/showthread.php?t=249836



2007年2月5日月曜日

ご機嫌が悪い・・・

扱い方もわからないのにぐりぐりしすぎたせいか
うまくBootloaderモードに入らなくなってしまった。
自分の為のメモ

Bootloaderの画面がでなくても入っていることはあるみたい。
ActiveSyncのUsb接続を無効にしてlight+power+resetを押す。
sirialが出てればちゃんと起動してる。出てなくても気にしない。
一呼吸おいて(←これ大事)USBケーブルと接続。
表示が出ている場合はUSBになれば大丈夫。
表示がでてない場合はWindowsでUSBデバイスの認証失敗が出ていたら×。
そのまままたlight+power+reset。認証失敗が出たらまた繰り返し。
やくまえのチェックの画面で認証失敗できることもある。
まだフラッシュしてるわけでないので、抜いてやり直してもたぶん問題なし。

上記方法でハードリセットしても起動しなくなった場合は仮死状態なので蘇生してあげる。

mttyをダウンロードしてきて起動。USBを選択肢(上記同様エラーがでると駄目です)
set 14 0
でリセットで起動。

bootloader起動する限り焼けます!



こんどこそ??!

行き詰まったのでAsukal様にダメ元でメールしてみた・・・。
丁寧に説明して頂きドキュメントのある場所もおしえて頂いた。
結論から言おう。

完全日本語ROM作成の道はすでにAsukal様によって確立されていたのだ!(え、知ってた?)

ただドキュメントが英語なので、私には探す術がなかったのだ・・・。
あー、仕事そっちのけで4日もかけたのに・・・。そうかー、サイン出来なかったのも当然だったのだー。
あれだけで1日かけたよなぁ〜w シックハックだなぁw

ということで、まぁ、うまくいきましたら・・・ここに書きます。
手法は全部確立したし、たぶん、うまくいく・・・と信じてます。

・・・、あ、前にあげたbatchは理解しないで作ってた部分があるから使うと危険です!!
消しておかなくちゃ・・・。
記事も編集しておこう・・・。



2007年2月4日日曜日

サインはV!

だんだんわからなくなっていくタイトルである。

結論:前述の方法で取得したMUIはサインできなかった。
1.エミュレータ用MUIはサインできない!
2.DUMPが失敗している!
3.コマンドの引数が足りない!
どれかかであろうとおもう。

ということで悩んでも仕方ないので他の方法をとる。
ちなみに今回はすばらしいサインツールをみつけてしまったので
前述までの方法はすべて無駄となった。

まずはどこからか日本語のWM5のDUMPされたROMをもってくる。
今回はSoftbankのものを利用した。取得方法については考えよう。
適当なフォルダを作成し、ダウンロードしてきものの中のPart02.rawをコピーしておく。
ツールは一応かいておくとmake_hv_111とimgfs_tools_182が必要だ。
どちらもいつものところにある。

prepare_imgfs.exe Part02.raw -nosplit
viewimgfs.exe imgfs_raw_data.bin

Dumpフォルダが出来てその中にファイルが展開される。
そのなかから.muiというファイルが42個あるのでそのうちの38個をもってくる。
このその他4個はその機種用のものだ。見分け方はdumpされた同名のフォルダがあるか、ないかで見分けられた。
以上みつけたものをunsigndというフォルダをつくって保存しておく。
ついでにsignedというフォルダも作成しておこう。

次にこちらからsigncode_294.zipをダウンロードしてきて中身を最初につくったフォルダにコピーする。
次にasukalさんのページからコピペしてきてasukal.batなどとして保存する。
batをダブルクリックすればあら不思議。
全部サインされてるのだー!
しかもどうも証明書をインストールしなくても良いっぽい? 本当に??

ということでこれからこれをぶっこみます。
文鎮になったらもう書きません!

追記 2007/2/5
たぶん、上の使ってもだめです(汗
駄目というか証明書はHVに書き込む必要があります。
たぶん・たぶん・たぶん・・・。




2007年2月3日土曜日

署名で出来ねぇ・・・

どうしも署名がうまくいかない。
調べると同じエラーが出ている人がいるが解決していない。
仕方ないので他の方法を模索する。

http://www.feel-good-web.com/Download/download.html
Microsoft Cryptography Toolsをダウンロードして
Microsoft Windows Core SDKのTools(Intel 64-bit)とRedistributable Componentsだけインストールする。
C:¥Program Files¥Microsoft Platform SDK¥Binにファイルがあるのでそれを抜き出す。
面倒だからバッチをつくった。
@echo off
set SCRIPT=%~0
for /f "delims=¥ tokens=*" %%z in ("%SCRIPT%") do (
set CDIR=%%~dpz
)
set TDIR1="C:¥Program Files¥Microsoft Platform SDK¥Bin¥"
set TDIR2="C:¥Program Files¥Microsoft Platform SDK¥redist¥CAPICOM¥x86¥"
copy %TDIR1%MakeCert.exe %CDIR%.
copy %TDIR1%Cert2Spc.exe %CDIR%.
copy %TDIR1%Signtool.exe %CDIR%.
copy %TDIR1%Pvk2pfx.exe %CDIR%.
copy %TDIR2%Capicom.dll %CDIR%.
pause

ご利用は自己責任で。適当にフォルダをつくって実行すればいい。
これですぐにSDKをアンインストールできる。

次にOpenSSL.exeをもってくる。これは実はなくても他の手段があるのだろうが
面倒だからやっぱり入れておく。
バイナリをこちらからいただいてくる。
もちろんインストールなんてしない。UniversalExtractorで解凍してやる。
openssl.exe
libeay32.dll
ssleay32.dll

の3つ。自力でコピーして下さい。{sys}と{app}binにあります。
ここからは例のサイトのファイルを使うのでダウンしておく。
まずは解凍して以下のファイルをコピー。
CreateMyCert.bat
CreateMyCertCab.bat
_setup.xml

迷わずCreateMyCert.batを実行。パスワードは任意。(忘れずに)
次に_setup.xmlを開いてcharacteristic typeにMyCert_sha1.txt
EncodedCertificateのvalueにMyCert_base64.txtの内容をコピーする。
続いてCreateMyCertCab.batを実行。これでcabも出来たはずだ。
いよいよ最後の関門です。

で、結論からいうと!

署名でけん・・・。

もうやめようかな、いやになってきた。
環境は完璧だとおもうんだけど・・・(汗

パスワードが違うといわれ証明書を入れようとしてパスワードを
入れてもはじかれる。
パスワードをいれなくてもはじかれる。なんじゃこりゃ?

追記 2007/2/5
dumpしたものはpeヘッダというのが破損しているので修正しないといけないそうです。
修正すればsignすることが可能。
ただしバージョンの近いAKUから日本語MUIを抜いてくるほうが良いかもしれません。





2007年2月2日金曜日

Universal 完全日本語ROMへの道

やっと道が見えてきた。
これも先達のおかげである。
ということでMUIが作成できたのでこれで次に進める。
とおもっていたら、なんと見つけてしまった。日本語化の記録・・・。

さ、気を取り直していってみよう!
まずは参考にしながらMUIへ署名をつける。
早速ツールを集めるわけだが・・・・。面倒くせぇ。
途中まで頑張ったがとても耐えられないのであります。
wakaranさんは次々インストールしてるけど、そんなことしたら環境ゴミだらけじゃん!
ということで探しましたよ。
http://www.codeproject.com/useritems/signcode.asp
サインしてダウンロード。ついでに英語だけどさくっと説明を読みましょう。まさにやろうとしていることです。(ちょっと無理)

ちなみに自力で集めるひとはUniversal Extractorを忘れずに。
PlatformSDK以外は解凍できました。(これでいやになったんだけどね・・・)

手順は書いてあるのにまかせるとして説明をすれば
署名ファイルの作成>署名する>署名をWM5にインストールする為のcabを作成>署名
ってな感じかな! こういう作業大嫌いです!!

ただ、これさえやれば、あとはMUIをaddfileしてレジストリでMUIを有効にしてやれば
日本語ROMになるはずなのである。

続きは明日がんばりまっす!




JUGEM IT! from ヒビコレ:WindowsMobile用エミュレータ - livedoor Blog(ブログ)

ヒビコレ:WindowsMobile用エミュレータ - livedoor Blog(ブログ)


よかった、へんなもの入れる前に気づいてよかった・・。。
エミュレーターのページでは3つのファイルが必要だった。
ダウンロードのところにある2つと下にあるvirtualNetworkDriverとかってやつ。
先にZIPをいれドライバーをいれてからイメージを入れる。(msiのやつ)

つぎに日本語のイメージをダウンロード。エミュレータのフォルダにいれる。
次にスタートメニューから該当するショートカットをコピー。
ファイル名のあとに使うイメージファイル名を入れてやる。
起動すると日本語に!

あとはsharedForderを設定してやって
そこにdumperをつっこんで実行するのみである。
これで39個のMUIファイルをゲットできた。

なるのか!? 完全日本語化!



2007年2月1日木曜日

完全日本語化は遠い

日本語も表示できるようになったし、なんか入力も出来るっぽい。
まぁ、それなりには出来た、というところだろうか。
でも某ROMだったときの方が遙かに優秀だったという現実が・・・(汗

一般的に言われる日本語化は表示できて入力できる、というだけ。
これにMUIの改造が入り始めて日本語ですべて表示されるらしい。
AsukalさんのUIの変更ソフトが公開されていて、対象はAKU3.2らしいのだが
いろんな言語に変更できるようになっている。
が、日本語が入ってないのです・・・。なじぇぇぇ。

MUIの作り方は公開されているのですが、そこまでやる気力もない。
かといって中途半端に日本語されたままでもつらい・・・。
なかなか思うようにいかないものです・・・。



pocket pc(WM)のcabファイルをいぢる

ROMはやけたが日本語化はまだまだ険しそう・・・。
ということでcabファイルをいぢろうとしたのだが
Windowsだとうまく解凍できない。

どうしようかとおもっていたらmagiccabというソフトがあるらしい。
・・・どこでダウンロードするのさ? 英語なんてわからーん。

有料だから試さず買えと??

ぜーったい買いたくないわ、そんなもん!
ということで探しました。
http://www.freewareppc.com/utilities/msceinf.shtml

インターネット万歳!


カスタムROM作成用bat

何度も何度も何度もやくはめになりそうなのでbatを組んでみた。
といっても超のつく手抜き。

カスタマイズに必要なツールを全部1つのフォルダにつっこんで
ロムはnk.nbf(だっけ??)だけをぶっこむ。

あとは下のを実行。

@echo off
echo ATOK入り日本語ROMの作成を始めます。※危険※
echo //////////////////////////////////////////////////////////////////////
echo 別フォルダにROMの内容を展開し、HTC64 Extended ROM Toolで
echo NK.NBFをデコードし、NK.PRJとNK.FATを作成して下さい。
echo 作成したらNK.PRJとNK.FATをこのフォルダにコピーして下さい。
echo 途中で中止する場合はCTRL+Cで中止できます。
echo //////////////////////////////////////////////////////////////////////
pause
set SCRIPT=%~0
for /f "delims=¥ tokens=*" %%z in ("%SCRIPT%") do (
set _FLATRELEASEDIR=%%~dpz
)

cls
echo 必要なファイルがそろっているかチェックしています
if not exist wince.nls goto error
if not exist msgothic.ac3 goto error
if not exist ATOKIMM.DLL goto error
if not exist ATOKP.CPL goto error
if not exist ATOKP.DIC goto error
if not exist ATOKPCE.DLL goto error
if not exist ATOKPFI.DIC goto error
if not exist ATOKPRE.DAT goto error
if not exist ATOKPSIP.DLL goto error
if not exist ATOKPTE.EXE goto error
if not exist ATOKPTKJ.DIC goto error
if not exist ATOKPTMP.DAT goto error
if not exist ATOKPUT.EXE goto error
if not exist ATOKPW.DLL goto error
if not exist viewimgfs.exe goto error
if not exist make_imgfs.exe goto error
if not exist DEFAULT.RGU goto error
if not exist USER.RGU goto error
if not exist NK.PRJ goto error
if not exist NK.FAT goto error
if not exist BuildImgfs.exe goto error
if not exist rgucomp.exe goto error
if not exist cecompr_nt.dll goto error
echo 必要ファイルがそろっていることを確認しました
echo binファイルを生成しています...
prepare_imgfs.exe NK.FAT -nosplit
if not exist imgfs_raw_data.bin goto error
if not exist imgfs_removed_data.bin goto error
echo binファイル更新中...
delfile wince.nls
addfile wince.nls
addfile msgothic.ac3
addfile ATOKIMM.DLL
addfile ATOKP.CPL
addfile ATOKP.DIC
addfile ATOKPCE.DLL
addfile ATOKPFI.DIC
addfile ATOKPRE.DAT
addfile ATOKPSIP.DLL
addfile ATOKPTE.EXE
addfile ATOKPTKJ.DIC
addfile ATOKPTMP.DAT
addfile ATOKPUT.EXE
addfile ATOKPW.DLL
if exist %_FLATRELEASEDIR%dump goto pros3
echo ファイルのdump中...(時間がかかります)
viewimgfs.exe imgfs_raw_data.bin > dump.log
cd %_FLATRELEASEDIR%dump
attrib -S -H *.hv
if not exist DEFAULT.HV goto error
copy .¥DEFAULT.HV ..¥.
echo DEFAULT.HV 作成成功...
if not exist USER.HV goto error
copy .¥USER.HV ..¥.
echo USER.HV 作成成功...
cd ..
rd /Q /S .¥dump
echo dumpファイルを削除しました
copy DEFAULT.RGU TEMP1.RGU
rgucomp -o DEFAULT.HV -nologo >> TEMP1.RGU
copy USER.RGU TEMP2.RGU
rgucomp -o USER.HV -nologo >> TEMP2.RGU
del DEFAULT.HV
del USER.HV
echo TEMP1.RGUとTEMP2.RGUの内容を確認し保存コードをUnicodeに変更して下さい
pause
cls
rename TEMP1.RGU BOOT.RGU
RGUCOMP -b
del BOOT.RGU
rename BOOT.HV DEFAULT.HV
echo DEFAULT.HV更新完了...
rename TEMP2.RGU BOOT.RGU
RGUCOMP -b
del BOOT.RGU
rename BOOT.HV USER.HV
echo USER.HV更新完了...
delfile DEFAULT.HV
addfile DEFAULT.HV
delfile USER.HV
addfile USER.HV
echo BINファイル更新完了...
make_imgfs.exe nk.fat -nosplit
cls
echo //////////////////////////////////////////////////////////////////////
echo ここまでの作業が問題なければHTC64 Extended ROM Toolでencodeを実行してください。
echo //////////////////////////////////////////////////////////////////////
goto end


echo エラーが発生しました。必要なファイルが足りない可能性があります。
goto end

echo 終了しました
del dump.log
del imgfs_raw_data.bin
del imgfs_removed_data.bin
del dump_MemoryMap.txt
del default.hv
del user.hv
pause
exit


うまくいかなくても、おかしくなってもしりません。
ディレクトリのファイル
2006/01/15 14:19 61,440 AddFile.exe
2002/11/12 12:00 9,728 ATOKIMM.DLL
2002/11/12 12:00 25,088 ATOKP.CPL
2002/11/12 12:00 2,104,576 ATOKP.DIC
2002/11/12 12:00 399,360 ATOKPCE.DLL
2002/11/12 12:00 62,720 ATOKPFI.DIC
2002/11/12 12:00 17,863 ATOKPRE.DAT
2002/11/12 12:00 895,488 ATOKPSIP.DLL
2002/11/12 12:00 54,272 ATOKPTE.EXE
2002/11/12 12:00 140,800 ATOKPTKJ.DIC
2002/11/12 12:00 155,648 ATOKPTMP.DAT
2002/11/12 12:00 31,232 ATOKPUT.EXE
2002/11/12 12:00 179,200 ATOKPW.DLL
2006/01/15 14:19 65,536 BuildImgfs.exe
2005/11/23 10:54 19,968 cecompr_nt.dll
2005/11/23 11:11 53,248 cereg400.dll
2007/01/31 16:07 738 DEFAULT.RGU
2005/11/23 09:47 57,344 DelFile.exe
2007/01/31 20:20 3,532 dump.bat
2005/12/07 15:47 192,512 HTC64 Extended ROM Tool.exe
2007/01/31 20:40 0 list.txt
2005/11/30 10:57 56,320 make_imgfs.exe
2005/08/23 22:50 3,948,012 msgothic.ac3
2006/03/27 21:51 240,763 nkf.exe
2006/03/25 17:58 57,344 prepare_imgfs.exe
2006/02/03 09:28 56,320 prepare_imgfs_mpx200.exe
2006/03/28 13:31 73,728 RecMod.exe
2005/11/23 11:11 69,632 rgucomp.exe
2006/03/30 10:31 2,593 tools.txt
2007/01/31 16:07 138 USER.RGU
2006/03/26 18:23 77,824 viewimgfs.exe

*.RGUには追加したいレジストリを書き込んでシフトjisで書き込んでおく。
またシフトJISからunicodeに変換するものが何か必要。(私はterapad)


追記 2007/2/5
危ないので消しました(汗
レジストリ周りの処理を勘違いしてました。
後日最新版をアップ(最後まで日本語化出来たら!)



フォロワー

ブログ アーカイブ