Hatena::ブログ(Diary)

(ひ)メモ このページをアンテナに追加 RSSフィード

2006-09-29 (Fri)

MySQLでマトモに日本語対応の正規表現が使えるmregexp

手前ミッソーですが、mregexp-1.0をリリースしました。

ネイティブのREGEXPに不満をお持ちの方は是非、試していただきたく!

bashでターミナルのタイトルを動的に変える方法

ターミナルのタイトル部に「ホスト名:カレントディレクトリ」と表示する方法。こんな感じに。

f:id:hirose31:20060929020127p:image

もちろん、カレントディレクトリの部分は動的に変わる。

やり方は、~/.bashrcでこんなふうにすればOK。

case $TERM in
  kterm|xterm|mlterm|cygwin|vt102)
    _termtitle="\h:\w"
    PS1="\[\e]0;${_termtitle}\007\]${PS1}"
    ;;
esac

なぜか検索するとそういう例が多いのですが、環境変数PROMPT_COMMANDで、hostnameコマンドとかpwdコマンドとか使うよか、このようにPS1で\hとか\wを使った方が効率いいと思います。(プロンプト表示するたんびにコマンドを実行するわけではないので)



エスケープシーケンスの意味は

あたりを参照すればわかると思います。



で、ウィンドウのタイトル変えて何がうれしいの?というところなんですが、そのターミナルのウィンドウがどのホストにログインしているものか視認しやすくするためです。

といっても、そういう情報は、ウィンドウのタイトルよかコマンド打つときに目線が行くプロンプトに表示するようにしておいた方が合理的です。

じゃ、どういうときに便利かというと、開いているウィンドウじゃなくて、閉じている(Iconify)しているウィンドウを視認するときのために、タイトルを変えてるんです。

もうちょっと具体的にいうとこうです。

LinuxでXでfvwm2なのがメインの作業環境なんですが、通常の作業用のターミナルだとかEmacsだとかはウィンドウマネージャを起動したときに固定位置に表示するようにしています。これで通常の作業は済むのですが、たまーにしかログインしないマシンにSSHするときは、新たにターミナルを立ち上げてログインしています。

で、用事が終わったらいつまでも画面上にいるのはウザイので、Iconifyしちゃうんですが、ちょっとしてからまた必要になったときにIconifyされているアイコンを探してマウスでちくりくクリックするのはウザイことこのうえないので、WindowListを表示してそこで選択しています。

ほんで、WindowListにはウィンドウのタイトルが表示されるので、ここでホスト名やディレクトリを表示しておけば、目的のものが特定しやすくなるという寸法です。



ちなみに、X上の操作でマウスを使うのは、Xなクライアント間でのコピペとFirefoxのリンクのクリックぐらいで、ほかのWindowListのポップアップだとかポインタの移動(もちろん、SloppyFocus)だとかバーチャルデスクトップの切り替えだとかは全部キーボードで操作できるようにしています。

あと、ターミナル(mlterm)も含めてほとんどのXなウィンドウのタイトル部は表示してません。無駄に場所くうだけで存在意義がないので。

2006-09-27 (Wed)

ムック『超・極める!MySQL』に寄稿しました

超・極める!MySQL

超・極める!MySQL

もうすぐ(10/4)発売されるこのムックに何本か記事を書きました。

目次は、超・極める!MySQL:SEshop.com/商品詳細で見られます。

Plugin Interfaceにとって代わられるのが宣言されているUDFはともかく(w、手前ミッソーながら監視系の記事はおいしいと思いますので、是非、ご賞味くださいませ。

MySQLがらみでついでに。↓の書籍はかなりいい情報がつまってるので、MySQLいじってる向きは必読す。

現場で使える MySQL (DB Magazine SELECTION)

現場で使える MySQL (DB Magazine SELECTION)

MySQL 徹底入門 第2版

MySQL 徹底入門 第2版

2006-09-26 (Tue)

歴代Macintoshの起動音とsad mac音

で聴けるす。試したことないけどWindows版Mactrackerもあるげ。

初めて生のsad mac音を聞いたときは、びくりして心臓飛び出るかと思った。

2006-09-22 (Fri)

トリトンのroot CAがGTE CyberTrustからほかのとこに変わるらしい

ネタ元: http://www.trustlogo.co.jp/press_center/2006_09.htm

携帯サイト用にトリトンから証明書買ってる人は次回更新時に注意すかね。

もしかしたらトリトン以外のCOMODO系認証局にも影響あるのかも。

2006-09-21 (Thu)

KDDI au: EZwebへメール送信する際の注意事項 > 送信ドメイン認証SPFレコードを公開されているドメインに対するエラーメールの取り扱いについて

2006年9月下旬から送信ドメイン認証技術「SPF」を利用し、DNSで公開されたSPFレコードにより送信ドメインが認証できないメールに対して、あて先不明のエラーメールを返送しない機能をEZwebに導入致します。

backscatterの防止をねらってるのかしらん。極力、バウンスメールを送りたくないだけなのかしらん。

Googleでmanを引く

ネタ元:clmemo@aka: Unix の man マニュアルを Google Co-op で検索する

ステキ。

Google Co-op - Profile for unix manpagesでsubscribeすれば、

なURLで

のmanが引ける。

Firefoxなら、スマートキーワード(d:id:hirose31:20041123:1101218165 あたりを参照)に登録しておくと便利そう。

例えば、

をブックマークして、キーワードにmanを設定。

これで、ロケーションバーに「man ls」でmanが引ける。

MySQL Performance Blog » Slow Query Log analyzes tools

  • スロークエリログをマイクロ秒で記録するパッチ
  • slow query log filter
  • slow query log parser

など。

スロークエリログ重要。

2006-09-12 (Tue)

Linux Memory Overcommit

ディスクレスとかでスワップなしな構成で、OOM-killerを抑制するためにecho 2 > /proc/sys/vm/overcommit_memoryすると、/proc/sys/vm/overcommit_ratioのデフォルトが50なんで、システム全体で物理メモリの50%しか使えなくなる罠。

2006-09-11 (Mon)

X11.appなmltermから/へのコピー&ペースト

  • mltermでコピー、スティッキーズにペースト
英数字
command-C→command-V
日本語
echo 'ほげほげ' | lv -Osj | pbcopy →command-V
  • スティッキーズでコピー、mltermにペースト
英数字
command-C→option-click (中ボタン)
日本語
command-C→option-click (中ボタン)

なんかmltermじゃなくてktermだとちと挙動が違うっぽい。kterm -km sjisすればいいのかなぁ?

zshってどのへんがそんなにおいしいんだろう?

zsh知らずなのでDEConのブログみててふと思う。

あ、bashは小学生までなのか。(とid:naoya:20060909がおっしゃっているw)

cwdの保存って、cdhist.shみたいなもん?

2006-09-10 (Sun)

シリアル経由でファイル転送

インスパイア

以前、NICのドライバのソースコードをシリアル経由で転送したときに教えてもらったメモをコピペ。

その1

シリアル経由で、SRC_HOSTからDST_HOSTにログイン。んで、rzコマンドを実行してから~+でszコマンドを実行してファイルを転送。

その2よりこっちの方がいいらしい。エラー訂正をしてくれたりするので。

SRC_HOST$ cu ttyS0
Connected.

login: XXXXX
Password: XXXXX
DST_HOST$ cd tmp
DST_HOST$ rz
ここで、「~+sz FILENAME」と打鍵。SRC_HOSTにSSHでログインしているときは、チルダがSSHに食われるので、「~~+sz FILENAME」とする。
Sending: FILENAME
Bytes Sent:   1832   BPS:841
Transfer complete

その2

sz,rzがなくてcuだけしかないとき。

SRC_HOST$ cu ttyS0
Connected.

login: XXXXX
Password: XXXXX
DST_HOST$ cat > /tmp/FILENAME
ここで、「~> FILENAME」と打鍵。SRC_HOSTにSSHでログインしているときは、チルダがSSHに食われるので、「~~> FILENAME」とする。

2006-09-07 (Thu)

ユルユルプリンタ

給紙のところがユルユルになってるみたいで、一気に5,6枚の紙を吸い込んですこぶるジャムる。なので、紙を1枚ずつ手動で給紙してあげないといけない。せっかく、トレイがあるのに。なんか餌付けをしている親鳥の気分。

あーもー ブラザーのカラーレーザー複合機「MFC-9420CN」欲しい! カラーじゃなくて「MFC-7820N」でも全然OKです!! ウエルカムです!!!

2006-09-06 (Wed)

URI::Fetch::Responseにstatus_lineがねっすと怒られた

こんなので、

plugins:
  - module: Subscription::Config
    config:
      feed:
        - url: http://www.kernel.org/pub/linux/kernel/v2.6/
          meta:
            follow_link: ChangeLog-2.6.

feedのURLにアクセスしてもむっつり(応答返さずタイムアウト待ち)んときに、

Can't locate object method "status_line" via package "URI::Fetch::Response" at /usr/local/lib/perl5/site_perl/5.8.7/Plagger/Plugin/CustomFeed/Simple.pm line 40.

なのが出る。

深追いしておらず。とりあえず書いとこ。[後でヤル][かもしれない]

2006-09-05 (Tue)

DBサーバのストレージをDRBDで冗長化するのは是か非か

LinuxにはDRBDというものがあります。

DRBDとは何か? 簡単にいうと、ミラーリングです。ミラーといっても、RAID-1のようにディスクtoディスクではなく、2つの異なるサーバ間のネットワーク越しのミラーリングです。

RAIDの場合は、ディスク故障の耐性は高まりますが、サーバのほかの部分(電源など)が壊れると元も子もありません。DRBDだと、そういった場合の障害にも対応できますね。

DRBDには普通のブロックデバイスとしてアクセスできます。つまり、mkfsしてmountしてフツーのディスクのように使えます。

で、

は、そのDRBDを使って、MySQLのストレージを冗長化するという話。(だと思う。ナナメ読みなので)

しかーし、いくつか危険な点があるので、この構成はやらんほうがいいというのが個人的な意見。以下、その理由。

  • InnoDBやMyISAMのデータファイルが論理的に壊れたときに、そのままDRBDのセカンダリ側にも壊れたデータが同期コピーされちゃう。
  • mysqldの稼働中にDRBDがfail overすると、(MySQLの世界でクローズ処理されていないので)データファイルが論理的に壊れる可能性が高まる。

なので、MySQLのストレージとしてはちとキビシイと思うす。


一方、NFSなんかしているストレージサーバにはDRBD使えると思うす。

例えば、

  • 一応、RAID組んでるけど念のためコールドバックアップもとっときたい。
  • でも、ストレージがでかすぎ or ファイルが多すぎて rsync とか rdist が全然終わらん。

というときに、DRBDはよさげす。

ちなみに、/var/lib/nfsもDRBDでミラーすれば、NFSのfail overもすんなりいきます。

2006-09-04 (Mon)

IntelMacでEPSONのレーザプリンタに印刷できないす

The process "pdftoescpage" terminated unexpectedly on signal 10

だそうな。プリンタはかなり古いLP-1900N。

f:id:hirose31:20060904154542p:image

ParallelsのWindowsで印刷してるので深追いしてはおらず。

2003 | 11 | 12 |
2004 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 05 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 12 |
2012 | 01 | 02 | 03 | 06 | 08 | 10 | 11 | 12 |
2013 | 01 | 02 | 03 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2014 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 |
2015 | 01 | 02 | 07 | 10 |
2016 | 01 | 05 | 10 | 12 |
2017 | 07 |