2008/12/08 (月)
2008-12-08:UNIQLOCK ver 1.1
iTouch に入れている UNIQLOCK がバージョンアップしていたので、アップデートを適用。
これまでのバージョンだと、jailbreak 後はまともに起動できなかったんだけど、今回のアップデートで問題が解消されたみたい。問題なく動く。動画も滑らかになって、時報のポーンの音のタイミングもばっちりになった。
これで、毎定時のパントマイムが復活してくれれば言うことないんだけどな。。。
comment2008/11/05 (水)
2008/10/30 (木)
2008-10-30:TABLE command ?
pgsql-hackers mailing list で、
TABLE foo; as a top-level command, equibalent to SELECT * FROM foo;
というコメントと、PostgreSQL でこのクエリーを実装するためのごく簡単なパッチが投稿されていた。
自分、はじめてこんな SQL 見たんだけど、これってどっかで標準として規定されてるの?
ぶっちゃけ、こんな SQL いらねーだろ、と思うし、実際にその後ポジティブなレスはついてないんだけどね。
2008/10/29 (水)
2008-10-29:使えない EPSON LP-9800 (カラーレーザー)
わが社の A3 でカラー両面印刷できる LP-9800 が、相変わらずつくづく使えない。
印刷してて、だいたい打率7割くらい。つまり、3割が写真のように失敗する。
また、印刷している最中に何度も紙詰まりしてくれる。
これまで何度もサービスマンにメンテに来てもらったが、一向に改善されず、嫌になってしまってサポートも切ってしまった。
A3 で両面印刷するのってものすごく難しいことなんでしょうかねぇ。。。
comment2008/10/23 (木)
2008-10-23:UNIQLOCK on iTouch
気がつくともう第4シーズンとかになっているらしい UNIQLOCK ですが、今回なんと iTouch 用アプリとして無料配布されていました。
「なにー、それは入れるしかないだろ」とさっそくインストール。
が、起動して Loading 画面が出た後、クロックが動き出して2秒でアプリが終了。
えー、と思いながら、いったん電源オフしてから起動しなおし、再度アプリ実行をしたら、今度は5秒ほど動いて、おんなのこたちが出てきたところで終了。おいおいおいおい。
それでも、何度かやるうちに、長時間起動できるようにはなりました。
動作はやっぱり重たい。音もときたま途切れたりするし、おんなのこたちの踊りも5秒分全部は再生しきれていないような感じ。
まぁ、雰囲気は出てるからいいんじゃないかな。
無料だし、試してみるぐらいの価値はあると思います。
2008/10/20 (月)
2008-10-20:デザイン変更
サイトのデザイン変更をしてみました。RSS リーダーでお読みの方は、ちらり直に見に来てみてください。
いままではリングノートを折り返した右半面のデザインで、1ペイン構成でしたが、今回はリングノート見開きの左ページ前面と右ページの一部という、2ペイン構成のデザインです。
1列のみのストレートなデザインを気に入っていたのですが、どうしてもタイトルやナビゲーションのやりくりに余地がだしづらい。世間のブログが2列や3列構成で、ナビゲーション系が本文とは別になっているのも納得です。というわけで、いまさらながらの2列構成へ。
なんでデザインを変えたかというと、自分の写真をトップページから表示したかったから。
以前から、仲良くさせていただいている経営者さんでブログをされている方に「ブログに写真をアップすべし」とオススメいただいていて、写真を載せよう載せようと思いつつ、幾星霜。で、いざアップしようとして、デザイン的に無理があると気づき、ならデザインごと変えてしまえ、と今回のデザイン変更に至ったのでした。
写真があったほうが読むほうも著者を意識しやすくなり、好感度もアップするとのことです。今回アップした写真で好感度があがるかは定かではないですけどね(笑)。
profile の写真もそろそろ古いので、新しいネタを仕込まねば。
comment2008/10/17 (金)
2008-10-17:sshへのアタックをiptablesでブロック
リモートの iptables をいじるのは自殺行為だ、とはよく言われますが、実際に死にました。トホホ。。。
京都のデータセンターに置いているグローバル IP address を持った私のマシンに ssh でつないではいろんなユーザー名のパスワードチャレンジをしてくる子がいて、じゃまくさいので遮断しようというお話。
あ、もちろん、PasswordAuth は切ってあります。
iptables に ipt_recent.ko というモジュールがあります。
今回はこれを使って、「一定時間内に指定回数以上の接続があったら撥ねる」ということを実現するのが今回のお話。
やり方としては以下を実行。
# /sbin/iptables -A INPUT -p tcp --syn -dport 22 -m recent --name SSH --set # /sbin/iptables -A INPUT -p tcp --syn -dport 22 -m recent --name SSH --rcheck --second 60 --hitcount 6 -j DROP
ひとつめのルールで22番ポートにきた SYN パケットに SSH という名前をつけて記録して、ふたつめのルールで60秒以内の6回のチャレンジ以降は遮断、ということをしています。
が、これを実行したら自分の ssh 接続も切れた。
しかも、再接続もできなくなった。。。(号泣)
しょうがないので、京都の仲間に電話して、現地行って再起動をしてもらいました。
コマンドラインで叩いただけだから、再起動すればすべて忘れてくれます。
やっちまったのが午前中で、夕方前には復旧しました。うーん、がっかりな自分。
再挑戦は自分が現地に行った時にやります。
なにが悪かったんだろうなぁ。。。
2008/09/22 (月)
2008-09-22:iTouch 2.1 jailbreak
週末に Windows 版の jailbreak アプリがリリースされたので、さっそく実行してみました。
Jailbreak iPhone 2.1 GUI Version | QuickPWN
作業自体はとても簡単で、iTouch を USB ケーブルで接続した状態で、jailbreak アプリを起動し、画面のインストラクションどおりに iTouch のボタンを押したり放したりするだけ。
jailbreak 後に、さっそく Google Calendar とカレンダーを同期するためのアプリ、NemusSync をインストールする。今回は Cydia を使って入れてみた。search のところに NemusSync と入れると、あっさりとパッケージが見つかり、簡単にインストール。楽チン楽チン。
ただ、カレンダーのデータベースが新しくなったとかで、NemusSync を入れて、これまでのアカウント情報でそのままの同期はできなかった。
[NemusSync→高度な設定→予定とアカウントを消去」でいったんすべてをまっさらにして、再度アカウントを登録しなおしてからの[カレンダーを同期する]でうまくいきました。
inteliscreen もインストールして、カレンダー環境は依然の状態に復旧。よかったよかった。
comment2008/09/12 (金)
2008-09-12:MySQL の default character set
とある、バックエンドデータベースに MySQL を使っているアプリを評価してて、はじめは test といったシングルバイト文字列でやっていたのだけど、ふと気づいて「てすと」と入れたら、見事に文字化け。
なんだろう、と思いながら、ソースを読みつつ、mysql でデータベースに接続して show create table <テーブル名>; してみたら、テーブルの DEFAULT CHARSET が latin1 だった。
「あー、これかぁ」と、alter table 文で変更をかける。
ALTER TABLE <テーブル名> default charset utf8;
が、まだだめ。文字化ける。
いくつか試行錯誤したあと、よくよく show create table の出力をよく見ると、
カラム単位に「character set latin1」が設定されてる
ことを発見。
MySQL はテーブル単位どころか、カラム単位でデフォルト文字コードが設定されるのか。すごいというか、なるほど、MySQL っぽい。見事なモジュラリティ?
というわけで、カラムごとにちまちま alter table をかけていく修行に。
ALTER TABLE <テーブル名> modify <カラム名> <データタイプ> charset utf8;
これ、システムカタログテーブルとかをどかっと update かけれたりしそうかなと予想するが、いかんせん MySQL の中身がよく分からず、今回は愛と勇気・努力と根性で乗り切る。
いいかげん、そろそろまじめに MySQL を勉強しよう。
comment2008/09/10 (水)
2008-09-10:iTouch i-Clicker PowerPoint Remote
PowerPoint ファイルを入れた PC と wirelessLAN で連動して、ページ送りを iTouch からリモコンとして操作するアプリ、i-Clickrを App Store で購入してインストールしました。
お値段1700円。ちょっと高い。
PowerPoint を実行する PC 用のアプリと、iTouch 用のアプリ両方をインストールします。PC 用のアプリは上記のサイトからダウンロードしてインストール。Windows 用・MacOS 用それぞれがあります。
途中 Bonjour のインストールも促される。入れておきましょう。
使い方は PC の方で i-Clicker を起動したあと、iTouch でも i-Clicker を起動して PC との接続を確立させる。すると PC の方で PowerPoint ファイルの選択になり、ファイルを選んだあとで、iTouch で「Start Presentation」を押すと、PC でプレゼンがはじまり、iTouch には左右のスライドめくりボタンと、スライドのキャプチャー画面が表示されます。
手元の iTouch のタップでスライドがめくられていく様はなかなか楽しい。
まずまずのアプリと思います。
気になるのは、PC の方でスライドがめくられたあと、iTouch の方にキャプチャー画面が来るまでにタイムラグがあること。前後1枚分くらいプリフェッチして、スムーズにスライドチェンジしてほしいです。今後のバージョンアップでぜひ対応してほしい。
値段の1700円というのも安くはないですよね。1000円くらいがいいなぁ。
というわけで、App Store のカスタマーレビューでは星3つにしました(5段階評価中で)。
2008-09-10:iTouch 2.1 firmware update
いままで 1.4 系列で jailbreak したままで粘っていた iTouch ですが、このあと紹介する i-Clickr が使ってみたくて、出たての 2.1 にあげてみました。
気がつくと日本語入力のキーボードが携帯チックになっているのね。打ち込みやすくでいい。各サイトで評価されていますが、漢字変換も賢いよう。
個人的には podcast の再生が、同一配信元の各ファイルを自動的に順次再生になったのがうれしい。いままでは、一曲終わるごとに一覧に戻ってたので。
2.1 にあげて困ったのが、カレンダーの同期アプリ。
自分は予定を Google Calendar にまとめているんですが、これを iTouch 内のカレンダーに同期してくれる NemusSync が jailbreak しないと入らない。リンク先を引用すると、
About AppStore
I found that NemusSync could not sync on Un-jailbreaken iPhone/iPod touch. iPhone SDK do not allow to write system folder. So, apart from SDK License Agreement, NemusSync cannot go to AppStore.
とのことです。
うーん、はやく 2.1 用の jailbreak 達成されないかな。
2008/09/02 (火)
2008-09-02:debian etch で mod_security2
ちょっと前にここの blog のトラックバック受付を有効にしたんですが、きちんとトラックバックスパムが来るようになりました。。。:-|
というわけで、mod_security で撥ねてしまえ、という設定のオハナシ。
mod_security は debian のオフィシャルには入ってないので、apt-get はできない。
http://etc.inittab.org/~agi/debian/libapache-mod-security2/2.5.x/etch/
ここから
- libapache2-mod-security2_2.5.5-1~etch1_i386.deb
- mod-security2-common_2.5.5-1~etch1_all.deb
をとってきて、dpkg -i でインストール。
Debian の apache は /etc/apache2/ 以下にいろいろファイルが置かれる。モジュールの場合、/etc/apache2/mods-available/ 以下に実体が置かれ、/etc/apache2/mods-enabled/ 以下にシンボリックリンクを張ると有効になる、という仕組み。
dpkg では /etc/apache2/mods-enabled/mod-security2.load しか用意してくれず、設定ファイルの mod-security2.conf は自分で用意する必要がある。
とりあえず、旧サーバで使ってたころのファイルを持ってきた。
。。。うまくいかない。
バージョンが1から2になって Derective が変わりまくっているのね。
http://www.modsecurity.org/documentation/ の「ModSecurity 1.x to 2.x migration Matrix」を見ながら、ぽちぽちと修正。
ルールファイルは http://www.gotroot.com/tiki-index.php?page=mod_security+rules から Free Rules の All in one downloads for modsec 2.5 の gzip ファイルをもらってくる。
/etc/modsecurity/ というディレクトリを作って、そこに展開し、/etc/apache2/mods-available/mod-security2.conf には
Include /etc/modsecurity/00_asl_rbl.conf
といった感じに記述してルールファイルを読み込んでいく。
もらってきたルールファイルはそのままだと「/etc/asl/whitelist」みたいな決め打ちファイル名が見つからなくて怒られるので、適宜編集。
05_asl_scanner.conf の中に書かれてる modsec-clamscan.pl は modsecurity-apache_1.9.5.tar.gz の中の util フォルダにある。自分はこれをまとめて /etc/modsecurity/util/ とコピーしてみました。
とりあえず、もらってきたルールを全適用して様子を見ていますが、そんなに重たくはないみたい。
Core2 Duo 3.16GHz のサーバ、というのもあるかもしれませんけど。
しばらくは audit ログとか、CPU load average とかを監視してみます。
2008/08/27 (水)
2008-08-27:b2evolution の表示順
世のブログはエントリ単位というか、1日にいくつもエントリを並べるようなスタイルは一般的ではないんですよね。
自分は昔から1日ごとに
- ヘッドライン
- いろいろなネタ
- 行動記録
というパターンで書いていて、それぞれの項目でブロックデザインを変えるスタイル。
同じ日の中で項目ごとの順序づけをして表示したい。
ただ、blog engine の方がエントリの時刻順にしか表示してくれず、仕方ないので各エントリの時刻を改竄して順番があうように、というのをこれまでしてた。
が、いちいちエントリ書いてから時刻を変えるのも正直かったるいので、b2evolution に直接手を入れて日付ごとにカテゴリ順で表示するようにハックしてみた。
いじるファイルは inc/MODEL/items/_itemlist.class.php 。
はじめは CSS でなんとかできないかと考えたんだけど、HTML に書かれた順にかかわらず、ブロックエレメントの描画順を変更する方法ってないですよね?
comment2008/08/25 (月)
2008-08-25:mysqldump の charset
当サイトをホスティングしているサーバをリプレイスしました(このために京都のデータセンターに出張だった)。
しばらく文字化けに苦しみましたが、現在は復旧しています。
文字化けの理由は、旧サーバが mysql 4.1 で、新サーバが 5.0 なんですが、この際のデータダンプ移行で文字コードにはまる、という
超ありがち
なもの。
mysqldump –all-databases で旧サーバでデータをとったのだけど、–default-character-set で binary が指定できず、ujis でしかダンプがとれなかったのが最初のつまづき。
その後、ダンプファイルを nkf でいろいろほげほげしてから新サーバでインポートして、mysql クライアントでつないだら、中身の日本語が見えたので、いったん安心してしまった。
文字化けが php の方かなと、php.ini の mbstring まわりのセッティングをみたり、Debian の /etc/apache2/conf.d/charset にはまってるのに気づいてなおしたり、とするが、ここの文字化けはなおらず。
結局、DB 内の文字コードがだめだったのが原因。
4.1 からダンプしたときのデータの CREATE TABLE 文に DEFAULT CHARSET がないのが問題でした。
5.0 に入ったデータを再度 mysqldump -default-character-set=binary で出力し、文字コードを utf8 に変えたあと、CREATE TABLE 文の DEFAULT CHARSET=latin1 を sed で DEFAULT CHARSET=utf8 としてからインポートしなおして解決しました。
やっぱり mysql は慣れてなくてつらい。。。
comment2008/08/15 (金)
2008-08-15:new jasmine 準備
リプレイス予定の京都のデータセンターに置いているサーバのセットアップ作業。
まずは先日焼いておいた Debian etch のインストール DVD でベースのインストール。
ただ、サーバに載っている Atheros L1 というネットワークアダプタが、インストール DVD に入っている 2.6.18 では対応していない。http://atl1.sourceforge.net/ からドライバソースをもらってきてビルドして使えるようになった。
# もちろん今回のサーバからはソースを取りにいけないから、他のマシンで落として USB メモリでコピー。
ネットワークが通るまではサーバにモニタとキーボードをつなげて、サーバの前で作業。
ネットワークが通った後は、自分のデスクで使い慣れた手元の環境からのリモート作業に切替。
とりあえず、必要なパッケージを sudo aptitude install する祭り。
あと、今日はメールまわりだけ設定。
postfix + procmail + courier-imap + fetchmail という環境。
postfix は /etc/postfix/main.cf を適当にいじる。
courier-imap は、一応 CRAM-MD5 で認証できるようにしたりしてみた。ssh でトンネル掘っての利用だから別にいいんだけどね。
~/.procmailrc は現在京都で使っているものをコピーしてきて、サーバで mail コマンドでメールを自分宛に投げて、~/Maildir/ 以下に実ファイルができたことを確認してから、手元のメールクライアントでつないでみる。。。ちゃんとメール見れたわーい。
fetchmail はまだ設定せず。プロバイダからのメールは直前まで京都が拾うようにしないと。。。
DB とか web とかは大変そうなので、あとまわし。
comment