未だにWindows95で動いてたり

 師匠のところから譲り受けたラマン分光器のコントローラー周りが移転早々逝ったのが一昨年。PC(HDDも電源も)+インターフェースボード+コントローラーのセットがお亡くなりになった。何せ、MS-DOSで動く測定ソフトウェアだったものだから、今更インストールしようにも記録が無くてどうにもならない。インストールディスクを手に入れたんだけど動かそうとするとエラーが出てダメで、元のとバージョンは同じだから多分うまくやる方法はあるはずなんだけど、誰も覚えていない。製造元は三回くらい会社合併やら買収やらされて、日本の代理店も買収されて元代理店の人々は別会社作ったり再就職したりで三分割されてる状態。その誰にきいてもやり方を知らない、と。
 この組み合わせよりは新しいセットが別の大学で動いていて、ちょうど廃棄処分になるということだったので、譲ってもらってつないで動かしているのが今のコントローラー一式で、OSはWIndows95。先日このマシンのWindowsが立ち上がらなくなり、コマンドラインならディスクのディレクトリも見えている程度の障害だったので、修復サービスを利用して復旧させてもらった。
 症状としては、測定が終わった時間に行ってみたらPC本体の電源のLEDが点滅していてマウスを振ってもディスプレイが消えたまま戻って来ないという状況で、リセットしたら立ち上がらなくなっていたというもの。
 戻って来たマシンをつないで院生と実験していたら、今日もまた、同じ症状が出ている、と院生が私を呼びに来た。また同じトラブルか、と思いつつリセット。今度は無事に動いてくれた。

 前回の故障直前も、今日似たような感じで止まった時も測定していたのはベンゼン。こいつは振動モードの強度がかなり強い。回折格子の分光器で赤外領域のラマン散乱を測定するということで、スリット大きめにあけてレーザーのパワーも300mW入れていたのだが、フォトマルに届く光が強すぎたらしい。リミッターに引っかかったという理由で測定が途中で止まってしまう。水やアルコールなら同じ条件で測っても全く問題ないのだけど、試料によって散乱強度は随分違うので、こんなこともある。去年はアルコールの超臨界測ってて、低振動数領域で散乱が強く無かったから止まるということはなかった。
 今回の問題は、Windows95のの設定が省電力するようになってて一定時間後にディスプレイが消えたりしている間に、測定プログラムがエラーで止まると復帰してこないというものらしい。何も問題なく測定が終われば、マウスを振ってやると画面もシステムも復帰してくるので、データを保存するだけなのだが……。
 「電源の管理」で、システムスタンバイ、モニタの電源を切る、ハードディスクの電源を切る、を全部無しに設定してから測定すると、途中で止まっても、ウィンドウに警告メッセージが出ているだけで、適当にOKをクリックして対応して再測定で何も問題はない。院生の測定も本日分は無事終了。

 どうも、Windows95あたりの古いシステムで、本体にボードを突っ込んで装置のコントロールをするような時は、省電力設定はしてはいけないということなのかも。

とりあえずツィッター連携ツールの設定など

 1日分のツィートをまとめて1ページにしてWordPressに投稿するには、Twitter Digestプラグインを使う。
 インストールした後の設定は、
username : apj
Frequency : Dayly 毎日なので。
Time of Day : 0:00  日が変わる時でよい
Post Titleは「%startdate のツィート」とやっておくと、新しいログを取り始めた日が入るらしい。
詳しいログを残す場合は、チェックボックスの項目は全部チェックする。
 注意しなければいけないのが、「Minimum number of tweets required for post: 」は1にしておく。つまり最低1件でもつぶやきがあったらページを作る。「Maximum number of tweets to retrieve (Twitter caps at 200): 」は200を設定しても良いかも。
 保存が1日単位、上限200なので、1日200ツィート以上のヘビーユーザーには物足りない仕様だけど、大抵の人はこれで足りるはず。
 同じようなことが、Twitter Toolsでもできそうなんだけど、ログのポストはだいぶ前からテスト的に実装した状態のままで、投稿ページのタイトルの設定を変えても変わらなかったりする。だから、Twitter Digestプラグインをメインで使い、Twitter Toolsは不具合が出た時の対処用に普段は停止にしておくことにした。

 逆に、ブログに記事をアップしたことをTwitterで自動でつぶやくには、WP to Twitterというプラグインを使うことにした。こちらもダウンロードして設定するのだけど、アプリケーションの登録の項目設定の順番を間違えるとはまるのは、昨日書いた通り。

ちょびっとだけTwitter連携

 WordPressとTwitter連携プラグインをいくつか試し、wp to twitterでどうにか更新をツィートできることがわかった。
インストールのコツとしては、プラグインのzipを展開したものをwp-content/pluginsに置いて、WordPressにログインしている状態でプラグイン一覧を表示させるとリストに出るので、「設定」をクリックして有効にする。
 ツィッター連携でhttps://dev.twitter.com/apps/を開けることになり、まだツィッター経由でログインしてなければすることになるのだけど。
 まずはアプリケーションの名前などを登録。Callbackには、WordPressの設定画面に出ている通り、自ブログのトップのURLを登録。
 OAUTHの設定にいく前に、https://dev.twitter.com/apps/の「Settings」に行き、Application Typeを「Read and Write」に設定。この後、OAUTH Toolsに行って、Access token: とAccess token secret:を生成する。「Read and Write」にするのを忘れて生成すると、後から変えてもうまくいかない。一度twitterとの連携を切って再設定してもやはりだめで、アプリケーションをhttps://dev.twitter.com/apps/から削除して、再度登録するしかなかった。
 後は、wp to twitter側の短縮URLの設定で、短縮機能によってはアカウント登録を要求され、それを怠っているとやっぱりツィートに失敗する。Goo.glだと何もしなくても選ぶだけで使えるらしい。
 wp to twitterの設定画面の一番下の「機能チェック」が、つぶやきのテストなので、こいつを何回かやってエラーが出ないことを確認してから記事投稿のテストをするとよい。

 SimpleTwitterConnectはツィッター認証があれば、コメントもでレーションをすり抜けることができる。コメントモデレーションをONにしておくと、コメントができて表示されているのに、「あなたのコメントはモデレーション待ち」というメッセージが出て何だか間抜けな結果に。WordPress側はモデレーション待ちのつもりだから、コメント件数にも反映されない。ツイッターログインしての投稿でも、ブラックリストに登録されている単語があれば、コメントはできない。つまり、ブラックリスト>STC>モデ、の優先順位で動くらしい。コメントを消す時は、WordPressの管理画面からゴミ箱に突っ込むとスパムリストに入り、(自分のテストなので)spam解除してゴミ箱を空にしたのに承認待ちリストは空にならず、そっちからも再度ゴミ箱に突っ込むという二度手間に。正常動作してるがお互い邪魔しあってる感がw。

 Tweet ImportとTweets as Postsは動作はするが1ツイート1ポストにしてくれるのでやたらポストの数が増える。うっかりこれをONにすると後でやたら記事をゴミ箱に捨てるはめになる。
 Tweet Tweetはデータベースに3000件ほど引っ張ってくるらしいがその結果をどうやって使うのかがわからん。

MySQLとWordPressインストールのメモ

 Twitter連携機能を試したくて、学内Blogを復活させることにした。それなりの機能のものを、ということで、MySQLをインストールしてWordPressを入れた。すでに掲示板ではPostgreSQLが動いているしこっちの方が馴染みなんだけど、MySQL無しでは動かないアプリケーションもあるのでやむを得ず。

 で、案の定はまる。

 まず、この間新しくしたばっかりのFreeBSD portsコレクションから入れようとしたら、あちこちのディレクトリに関連ファイルがバラ撒かれる結果に。しかもデーモンが上がらない。バラ撒かれて何が困るかというと、PHPのコンパイルの前の設定で、
./configure –with-apxs2=/usr/local/apache2/bin/apxs –with-mysql=/usr/local/mysql –with-pgsql=/usr/local/pgsql –enable-mbstring –enable-mbstr-enc-trans –enable-mbregex –with-libmbfl –enable-pcntl –with-zlib -with-openssl
とかやるんだけど、–with-mysql=の後のMySQLのベースディレクトリがどこなのかさっぱりわからないのが困るわけで。PHPまでportで入れていればいいんだろうけど、PHPはソースから入れてるわけで……。
 仕方がないのでMySQLのソースをダウンロードして、/usr/local/mysqlに入れる。関連ファイル全部この下にまとまってくれるという何だかお行儀のよいインストール結果に。で、PHPの再コンパイルをし、動くことを確認、と普段の掲示板にアクセスしたらhttpdがやたら重くなった。httpdを一旦止めて上げ直したら問題なかったのでやれやれ。
 MySQLは5.5から軽くなったということなので5.5を入れた。ところが、やっぱり最初からdaemonが上がらない。
 ログファイルを確認すると、
/usr/local/mysql/bin/mysqld: Table ‘mysql.plugin’ doesn’t exist
[ERROR] Can’t open the mysql.plugin table. Please run mysql_upgrade to create it.
とあるので、言われた通りにmysql_upgradeを動かす、つまり
/usr/local/mysql/bin/mysql_upgrade
を実行すると次のようなエラー。
/usr/local/mysql/bin/mysqlcheck: Got error: 2002: Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2) when trying to connect
FATAL ERROR: Upgrade failed

 もしかしてデータベースが無いからか?
 ということで、cd /usr/local/mysql してから/usr/local/mysql/scripts/mysql_install_db –user=mysql とやると特にエラーも無く成功し、daemonも上がるようになった。
 mysql_install_dbは、ベースディレクトリにcdして実行するか、コマンドラインでベースディレクトリを指定するかしないとエラーが出るので注意。
 ここまでいけば、ネットで探しながらMySQLのコマンドをぽつぽつ叩いて、rootのパスワードを設定、WordPress用のユーザーとデータベースを作って全アクセスを許可、とやって無事終了。

 便利ツールをいくつか入れて、さてツィッター連携を、と試してみたんだが……。どうもバージョンの不一致かあまりうまく動かない。
 まず、TweetBlenderは設定画面が出ない。ウィジェットには出るが、肝心の Archiveの設定ができないのであまり役に立たない。
 Tweet2Postsは、一番最初に出る設定の画面しか出ない上に、こいつを有効にすると、WordPressのプラグイン一覧で、Tweet2Postsの下に表示されているプラグインのどれを設定しようとしても、Tweet2Postsの1ページ目(?)の設定画面になって、他のモノまで道連れで設定できなくなるという……。
 SimpleTweetは、インストールも設定もできるが、投稿しても連携してくれない上に、投稿後のページが真っ白になる、という(でも投稿はできている)。