カテゴリー別アーカイブ: PC関係

ローカルの表示が遅い

昨日 1月7日の 23時頃より、自宅サーバーへアクセスしたときの最初の応答が非常に遅くなってしまいました。
レスポンス悪化が確認できたのが、http,ftp,telnet
レスポンス変化無いのは、ping,外部からの http
httpページなど、proxyの設定をして外部経由で見た方が早いという。
ftp,telnetは、最初のログイン画面が出るところまでが非常に遅く、その後は正常に使用できます。

httpd -k gracefulしてもダメ
数ヶ月ぶりに linuxの再起動を行ってもみましたがダメ。状況変わらず。
クライアントの win2000側の DNSアドレスを放置したままだった IIJ 210.130.0.1から Niftyの 202.248.20.133 (linuxで使ってる DNSと同じ)に変えてみましたが状況変わらず。

ftpと telnetだけだったら inetdが怪しいとなるんですが、httpは inetd経由してないからなぁ。
外からの自宅サーバーで公開している httpページの表示は正常のようなので、様子見でしょうか。
なんでだろうか?

1月8日、午前中はまだレスポンス悪かったんですが、午後 17時に返ってきた後確認したら、今まで通りのレスポンスに直っていました。
午前中から午後にかけて家にはいませんでしたが、パソコンは Linuxサーバーも win2000クライアントも電源入れっぱなしで何もいじっていないので、やはり外部の何かがレスポンス悪かった原因のようです。

自宅サーバーで IP電話

Bフレッツを Bフレッツファミリー100から Bフレッツプレミアムに変更するのですが、工事費の関係から NTT西日本の光電話を入れることになりました。
光電話と言うことは、ルーターに UPnPをしゃべらせて VoIPアダプターへ IP電話の信号を分からせてあげないとなりません。
これをするのが linuxでは linux-igdという物らしいです。google検索 iptables upnp
はてさて、bridgeとかも使っていますが、うまく動作するでしょうか?
工事は 2006年の 1月4日です。

と思ったらNTT西日本の光プレミアムは、CTUとか言う専用のルーターを使わないことには IPv4の通常のインターネットができないんですね。

WordPress1.5MEにカウンター

WordPressME1.5へ、カウンターを付けてみました。
カウンター
ワードプレスデフォルトのテーマだと、黒矢印の先にある数字です。

私のようにテーマを切り替えられるようにしてあると、各テーマごとにどこへ取り付けるかを考えなければならず、又、テーマごとにそれぞれのファイルにカウンターの行を追加しなければならず、ファイルの数が多くて大変でした。

ちなみに、PHPから MySQLへ記録するタイプのカウンターを、それぞれのテーマの footer.phpへ埋め込みました。
例えば、上の写真の WordPressデフォルトのテーマだと、
wp-content/theme/default/footer.phpの中へ

<a href="http://wordpress.org">WordPress</a>
( <? include "/hogehoge/counter.inc"; ?><? echo $counter ?> )
<br /><a href="feed:<?php bloginfo(‘rss2_url’); ?>">Entries (RSS)</a>

の様に、アンダーラインの行を追加することにより、phpで書かれた counter.incというカウンター用のプログラムを呼び出し、MySQLにページごとに保存された数値を表示します。

このカウンター、それぞれのページごとにカウント数を保持する筈なんですが、WordPressから呼び出すと、どのページを開いても index.phpが開かれたように判断してしまうようです。チト残念。(もしかしたら footer.phpでなく、本文部分へカウンターの表示を入れれば良かったのかもしれませんが)
とにかく phpは htmlで作られたページと違って、何かを付け足そうとすると、解析が難しいです。

PIO病

ATAの HDDが、DMA転送でなく PIO転送となり激遅になるの、随分前から何度か戦ったことがありますが、PIO病という名前が付いているんですね、知りませんでした。
おまけに、今までのパラレルATAだけに起きる不具合なのかと思っていたら、私の場合は SATAの 2台目を増設したら、2台目だけが、何をやっても PIOから抜け出れませんでした。
SATAとか全然違う規格になっても、いまだに PIO病とか起きるんですね!
まるで、この大容量 HDDの時代に、BigDrive問題が起きているようなモンです。
ちなみに、別々のメーカーの 2台の HDDを 2台目に接続して、2台とも PIO病でダメでした。

SATAへ接続している 1台目の HDDは MasterDeviceTimingMode=0×10010で UDMA100で接続されている。
2台目は、何やっても MasterDeviceTimingMode=0×10の PIOモードのまま。

PIOモードだと、書き込みや読み込みが 4Mbyte/secぐらいしか出ないんですよね。
250Gbyteを書き込むとしたら、250*10^9 / 4*10^6 = 62500
62500秒は 17時間。
普通の DMAモードで繋がると 30Mbyte/secぐらいは出ますから、
250*10^9 / 30*10^6 = 8300秒 = 2時間 20分
この速度差は放置しておけません。

ちなみに色々やってみたことを羅列すると
MasterDeviceTimingMode=0×10010に書き換えて再立ち上げ
管理ツール / ディスクの管理 で、ドライブレターを削除して再立ち上げ
デバイスマネージャー / IDE ATA ATAPIコントローラー の該当するデバイスを削除して再立ち上げ
MasterDeviceTimingModeAllowed=0xffffffff にして再立ち上げ
UserMasterDeviceTimingModeAllowed=0xffffffff にして再立ち上げ
ResetErrorCountersOnSuccess=0×1 にして再立ち上げ
ちなみに atapi.sysは windows2000sp4
ファイルバージョン 5.00.2195.6699
86,672バイト
と言う物でした。マイクロソフトの http://support.microsoft.com/default.aspx?scid=kb;ja;817472を見ると
5.0.2195.6741 86,896 Atapi.sys
ってのがあって、これは ResetErrorCountersOnSuccess=0×1のレジストリー追加が機能しそうに書かれているのですが、windows2000の場合、『この問題を解決するには、Microsoft Product Support Services にお問い合わせのうえ、修正プログラムを入手してください。』
おいおい、バグフィックスが有料サービスかよ!
ってことで却下、バカにするんじゃありません。他の方法を色々さがしてみました。

SATAの 1台目の HDDは問題無く DMA転送しているので、HDDを 1台目と 2台目で SWAPすると、今まで PIO病が出ていた SATA 2台目のケーブルで、問題無く 1台目の HDDは DMA転送になります。
PIO病が出ていた HDDは、1台目に繋げようと 2台目に繋げようと PIO病です。
色々検索すると、電源ケーブルが悪かったとか、PIOの 80pinケーブルが不良だったのか?とか、ハードの絡みもある様なんで一応確認してみました。マザーとケーブル、電源までが原因ではないようです。

んー、こりゃもう諦めるほか無い?となりかけていましたが、最後に atapi.sysでなく、SATAのチップは VIAなので VIAからドライバーを持ってきて試してみることにしました。
AMDの Socket939マザーにしたとき、1台目の SATAを繋いだら DMA転送で問題無く使用できたので、そのまま atapi.sysを使っていましたが、この atapi.sysを SATAで使っていたのが良くなかったようです。
私のマザー Abit AV8の SATAは、Southの VT8237 Integrated Serial ATA RAID controllerってのに繋がっているのですが、これを VIAから Driver持ってきて入れたところ、一発で 1台目も 2台目も DMAで転送できるようになりました。
VIA Arena の中にある Ver4.30Hってドライバーです。
デバイスマネージャー SCSIとRAIDコントローラー VIA SATA RAID Controller
バージョン5.1.2600.430 viamraid.sysってファイルです。

ただ、この RAID用ドライバーを入れると、別段 RAIDを組まずにシングル 2台としても問題無く使えますが、一般的なツールで SMARTの情報を見れなくなってしまうところがいまいちです。

PINGテスト

更新通知サービスに以下の所を追加してみました。
が、遅れているかどうかはどうやって確認するんだろうか?

http://www.blogoon.net/ping/

http://api.my.yahoo.com/RPC2

http://ping.rootblog.com/rpc.php

http://rpc.technorati.com/rpc/ping

http://ping.exblog.jp/xmlrpc

http://blog.goo.ne.jp/XMLRPC

http://ping.cocolog-nifty.com/xmlrpc

http://ping.myblog.jp

http://bulkfeeds.net/rpc

http://www.blogpeople.net/servlet/weblogUpdates

http://ping.bloggers.jp/rpc/

http://rpc.weblogs.com/RPC2

http://ping.blo.gs/

http://coreblog.org/ping/

http://rpc.blogrolling.com/pinger/

http://www.blogoole.com/ping/

http://rpc.pingomatic.com/

http://xmlrpc.blogg.de/

http://ping.gpost.info/xmlrpc

http://rpc.pingomatic.com/

http://bitacoras.net/ping/

http://www.weblogues.com/RPC/

http://ping.blogmura.jp/rpc/

MySQL dataの書き換え

PHP+MySQLでページカウンターをの続きです。
初期値が 1なので、今までの dataをどうやって引き継ごうか?
MySQLのコマンドを使って手直し?
と言うことで、自分でコマンドを打ち込んでの MySQLの data書き換え方法です。

[root]# mysql -u root -p
passwd hogehoge

mysql> show databases;
+------------------+
| Database         |
+------------------+
| COUNTER_DB       |

mysql>use COUNTER_DB;
Database changed

mysql> select * from SANGROSE_T;
+------+----------------+---------------+--------------------+-----------+
| ID_C | SCRIPT_NAME_C  | REMOTE_ADDR_C | LAST_ACCESS_DATE_C | COUNTER_C |
+------+----------------+---------------+--------------------+-----------+
|    1 | /index_pc.html | 192.168.0.5   |         1126885465 |        15 |
+------+----------------+---------------+--------------------+-----------+
1 rows in set (0.00 sec)

mysql>update SANGROSE_T set COUNTER_C=44 where SCRIPT_NAME_C="/index_pc.html" ;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

と書き換えたい dataのカラムのみを記述してあげると dataの変更が行えるようです。
(¥マークは blogが勝手に入れてしまい、実際は、ダブルクオーテーションの前の円マークは付けていません)
しかし、こりゃ手入力でやっていったんじゃ大変です。
また何か考えます。

2005/09/18追記
結局、手入力で、ページカウンター数を入力しました。

HDD 2個

HDDを 2個新たに購入しました。
ひとつは、大のお気に入り? Seagate Cheetah15k3です。
今回は 36Gbyteの物を購入しました。26143円でした。

kakaku.comにて一番最安値だった EC-Currentというお店から購入しました。

ST336753LW

これは裏面です。


ST336753LW

これは表面。と思ったのですが、スキャナーでとったら HPって書いてあるでは無いですか。
オイオイ、俺は Seagate社製の物を買ったんであって、OEMの HPの物など買ってないぞー

ということで、EC-CURRENTへ苦情のメールを出しました。
Seagate ST-336753LWを注文したのですが、 HPの ST-336753LWが来ました。
HP社の型番が付けられている OEM物は、Seagateの保証が受けられず、サポート、保証期間がまるで異なるため、
私が注文した Seagate社製の ST-336753LWとは違う商品といえます。
返品、又は Seagate社製に交換して欲しいのですが、手順はどのようにすれば良いでしょうか?

OEM物が存在する、Seagate,Maxtorの SCSI HDDを購入するときには、今までは OEM物だったら購入しません。
と購入するときに問いただしていたのですが、そのようなことが今まで無かったため、今回は問い合わせをしなかったんです。
と思ったら、案の定こんな保証がべらぼうに短い商品が送られてきてしまいました・・・

2005/08/02追記
その後、SEAGATEと書かれて売っているのに HPが来るとはどういう事よ!
っていうのを前面に出したメールをしたら、返品 OKの返事が来たのです。
どこへどうやって送り返せば良いんですか?とメールしたら、
送料負担していただけるなら返品 OKです。
ただ、メーカー(SEAGATE社)の保証ではないですが、代理店の 5年保証が受けられるようです。
どうしますか?とメールが来ました。
それがあるなら最初からこんなメールはしません。
返品せず、そのまま HP社の OEM物を使うと返事をしました。

代理店の保証があるならあるで、最初からそう言って欲しいです。


Cheetah15k3

ちなみに、EC-CURRENTは、こんな箱で送ってきました。


Cheetah15k3

箱を開けると、普通の緩衝材。


Cheetah15k3

チータと一緒に、映像保存用に
WESTERN DIGITALの WD3200JD Serial-ATA 320Gbyte 16385円
を購入しました。

Adaptec ASC-29160N

現在 Linux server機では Adaptec ASC-29160 64bit PCIバージョンを使っていますが、もう 1枚スペアーも兼ねて買っておこうと思い、今度は ASC-29160N 32bit PCIバージョンを購入しました。
購入したのは アウトレットプラザというお店で、パッケージ版にも関わらず、送料、代引き代込みで 16270円でした。



随分と大きい梱包材で送られてきたなーと思ったら、



購入するときのページには、パッケージ版ともバルクとも書かれていなかったので、どっちなんだろうか?
なんて安易な気持ちで購入したのですが、中に入っていたのはパッケージ版でした。
バルク版でも、新品だとこのぐらいの値段はするので非常にお買い得でした。
まあ、アウトレットプラザという店名ですから、質流れ品、新古のたぐいなんでしょうけれど。(って実際にどういう流通経路を流れてきた商品なんですか?とは聞いた訳じゃありませんが)



中は、ビニールも破られてない新品でした。
箱が汚れているわけでもなく、潰れてもなく、保証書にハンコが既に押されているわけでもありませんでした。

ちなみに、現在使っている ASC29160 64bit PCIバージョンは、秋葉原の中古パーツショップで 5000円程度で購入しました。