2007年08月30日
コロッケ、水菜と豆腐の卵とじ、いかの塩辛
コロッケは出来合いのもの。卵とじは、だし汁・醤油・味醂・酒を煮立てたところに水菜と豆腐を入れ、最後に溶き卵をかけただけ。自家製塩辛は若干コクが足りない。何か入れ忘れたか?
とある編集者の5つの職業病
- ポスター、広告、パンフを何げなく見ていると、誤字脱字を異様に素早く発見してしまう。
- ポスター、広告、パンフを何げなく見ていると、「ツメ」とか「4ブアキ」とか「1行アケ」とかモヤモヤしてしまう。
- アンケートなどで手書きの記入欄に記入しているとき、「、」や「。」の上に「∧」を付けたり、打ち消し線を入れたあと「トルツメ」とか「モトイキ」とか書き込んでしまう。
- 新しい本を買って最初に開くページは奥付。
- クソ本だとかクソ訳だとか世間で言われているのを聞くと、それぞれの裏事情がある程度推測できるだけにいたたまれない気持ちになる。
2007年08月29日
2007年08月28日
イカとレタスとシャンツァイのタイ風サラダ、まぐろの刺身
イカは、足やワタを引き抜いてエンペラと骨を取り、皮を剥がしてから切れ目を入れて軽く茹でてすぐ冷やす。レタスとシャンツァイをちぎり入れたところにイカを加え、ナンプラー、レモンの絞り汁、塩、唐辛子を入れてよく混ぜる。足とワタは、瓶に入れて塩を加えて潰し混ぜて冷蔵庫に入れ、塩辛の下拵えとしておいた。
2007年08月27日
2007年08月26日
ECLIPSE TD508II
富士通テンによる、タイムドメインOEMのスピーカー。Amazonでは取り扱ってないな…。本家のこれの3周りくらいでかいものだと思っていただければ。
先日、アバック秋葉原新本店に行って試聴などを行い、購入。小型単一スピーカーなので、フルオーケストラや重低音バリバリみたいなのには向かないらしいけど、聴くのがR&B、ロック、テクノ、Jazzといったあたりなので特に問題はないと判断した。原音が素直に出るというタイムドメインのふれこみどおり、試聴ではiPod+128kbpsなMP3だったのでかなりショボい音に…。それに比べると借りて聞いたジャズのCDはたいへん良い音を出していた。
金曜の夜にモノが到着したので、ONKYO A-905につないで運用開始。音源はiBookに接続したYAMAHA UP-50。スピーカーケーブルにはアンプとの組み合わせの推奨として、Atmosairのものを付けてもらった…が、末端処理でバナナプラグも付けてもらったものの、A-905みたいなコンシューマアンプでは付かないのね。そもそもバナナプラグが何かをよく知らずに頼んだ素人が悪いとも言う。まぁ外して丸めて普通のスピーカーケーブルとして接続(ただ、ケーブルが重いので、あまり動かすと嫌なねじれ方をする)。スピーカーのほうはバナナプラグを差し込める。なるほど、これは便利だ。アンプもいつかは考えよう。
音のほうは素人耳にもやはりすばらしい。高品質可変で作り直した曲群の中では、特にジャズ系が一番はっきりと効果がわかる(ペットやサックスとか)。大して変わらなそうに思えるYMOも、音の広がり感が全然違った。これに比べるとJamiroQuaiはあんまり変わらないな(もともと狙ってチープな音を使ってるとはいえ)。高品質な原音のものだと音がドームのように部屋全体に綺麗に広がる感じがあり(スピーカーの横でもさほど問題なく聴こえる)、逆に低品質のものはノッペリと停滞してしまう。
ジェットエンジン型のコンパクトなサイズで、定位にあまり血眼にならずともよいのもメリット(ちなみに、より小さい307IIもあるんだけど、こちらは試聴では特に低音でパワー不足だと思った)。難点はややプラスチック殻が安っぽいことかな。
2007年08月25日
そぼろ、だだっちゃ豆
23日夕の補完。普通のネギと合挽肉のそぼろを最初に作ったものの、肉の臭いが気になってしまったのでクミンなどを入れてタコス風味にしてごまかす。豆はいただき物。ちょっと茹ですぎて本来の味を失わせてしまったか。
2007年08月23日
2007年08月22日
牛肉カレー
インドカレーでは牛は入れんだろうというツッコミには、パキスタンカレー風だからいいのだということで。
玉葱とスパイス(カルダモン・シナモン・チリ・ベイリーブス・クローブ)を炒めてニンニク、生姜、ナス、牛肉を加え炒める。カレー粉・唐辛子粉・クミン・オールスパイス・胡椒を入れて混ぜたら、水・コンソメ・コリアンダーシードを加えて茹でる。トマト、ピーマンを入れて混ぜ、塩、ガラムマサラで調味。
先日のBBQに出し損ねたカイワレを冷蔵庫で発見…うわー、根のほうがちょっとヤバイ。上のほうを切ってカレーに加えて火を通してしまうことにする。ちょっと奇妙な味になった。
2007年08月21日
ぶりの刺身、大根つま、厚揚げと白菜とえのきの味噌汁
土曜日はバーベキュー、日曜日はその残りということで、さっぱりしつつもそこそこ重めな和食を食べたい気分に。安売りのぶりを購入。味噌汁にえのきを入れるのに最近はまっている。
2007年08月18日
2007年08月17日
鯛めし、筍と野菜の煮物
鯛が安く売っていたので、炊き込みごはんにすることに。米2合は洗って水を切った後、土鍋に水500cc、昆布と一緒に入れて置く。鯛のウロコを綺麗に取り、裏にする側の腹に切れ目を入れて内臓を取り出し、エラもかき出して外す。両面に切れ目を入れ、全体に塩を振って30分置く。米の上に鯛を載せ、蓋をして、中強火→ぐつぐつしたら中火4分→弱火8分。火をとめて10分蒸らし、刻んだ生姜をかける。食べる前に鯛を解体し、骨をこまめに取り除いたらざっくり混ぜる。ときどき見極め切れなかった骨やウロコに当たることはあったけど、なかなかおいしい。やや喉が渇くので、お茶漬けにしてもいいかな。
煮物は、鍋で玉葱、じゃが芋、筍を炒め、昆布・水・酒・醤油・味醂を入れて煮つめるだけ。こちらはちょっとじゃが芋がまだ固かった。
2007年08月14日
ロースステーキと焼き野菜の盛り合わせ
9日夕の補完。よく洗ったじゃがいも、人参を皮付きでじっくりと茹でておく。水気を取ったあと、熱くした鉄板で玉葱と一緒に焼く。フライパンで焼いたステーキにアボカドを添え、ソースをかける。ちょっとアボカドが固かったかな?
2007年08月13日
Etch/Sidの上にSarge環境を作る方法
debian-usersなどでもたびたび話題になっていますが、某医療系システムのように、現行安定版のEtchではなく、旧安定版のSargeを必要とするためにセットアップに苦しんでいる人がいるようです。「SargeがだめならEtchにすればいいのに」とモヒカン・アントワネットになるところですが、まぁちょっと深追いしてみましょう。
なにぶん、Sargeで採用されているインストーラのカーネルは2.4.27か2.6.8の2択で、今時のマシンのSATAやNICのサポートについてはまったく期待できない状況です。 とはいえ、動くマシンを探してひどい型落ち品を定価購入&高額保守サービスというのも、MIL用途でもあるまいし、馬鹿馬鹿しい話です。 私のほうで2.6.*の新しめのインストーラを作っていましたが、セットアップレベルでのoldstable対応をしていないなど、まぁ結局面倒は多いですね。
せっかく簡単にインストールできるEtchがあるのに、Sargeを使い続けないといけないのでしょうか。VMwareなどの仮想化ソリューションを使えば、わりあい枯れたハードウェアがエミュレートされているので、一応簡単にSargeのセットアップなどの実現はできますが、仮想化固有のオーバーヘッドがあり、今のマシンじゃパワー不足なので買い直し…ということになりかねません。
こういうときに便利なのが「chroot」です。chrootはカーネル、ハードウェア、ネットワーク、ポート、メモリ空間、プロセス空間等々を共有しつつ、システムディレクトリ構造の頂点となるルートディレクトリを切り替えることでシステムを分離する技術です。共有しているものが多いので、セキュリティ上個々のサービスを完全に分離したいといった用途には向きませんが、今回のようにとりあえず異なるディストリビューションバージョンを共存させたいといった用途には十分です。
セットアップ手順としては、まずchrootを動かす前提となる親環境はEtch(あるいはその他の将来の安定版)を普通にインストールします。Etchのインストーラおよびカーネル(2.6.18)なら、今どきのマシンでだいたいセットアップできるでしょう。より新しいカーネルを採用したものも作っているので、うまくいかないときにはこちらを試してみてください。
以降でのシナリオは、次のとおりです。
- i386またはamd64を親環境とする。
- /var/local/sarge-chrootというディレクトリをSarge chrootのルートディレクトリにする。
- ユーザーアカウント情報、ホームディレクトリは親環境と同一のものを使う。
次に、Debianのchrootを作成するためのcdebootstrapパッケージ、chrootを親環境から簡単に扱うようにするためのschrootパッケージをインストールします。準備ができたところで、さっそくSargeのchrootをcdebootstrapコマンドで作ってみることにします。
# cdebootstrap sarge /var/local/sarge-chroot http://cdn.debian.or.jp/debian (ちなみにamd64環境でi386 chrootを作るには、「-a i386」を付けます) … P: Writing apt sources.list
これで、Debian Sargeのディレクトリ構造が/var/local/asrge-chrootに作成されました。このchroot内はrequired/import程度のパッケージが入ってるだけでほとんど何もないので、もうちょっとセットアップすることにします。この時点ではrootだけが利用できるchrootコマンドでchroot環境にアクセスできます。
# cp /etc/resolv.conf /var/local/sarge-chroot/etc # chroot /var/local/sarge-chroot aptitude update # chroot /var/local/sarge-chroot aptitude install ~pstandard ~t^japanese$ (Sargeの標準インストール状態と同じにする。個々にインストールしてもよい) # chroot /var/local/sarge-chroot aptitude remove nfs-common (多分使わないであろうnfs-commonでエラーが出るので削除しておく)
パッケージのインストール中にlocalesの質問を尋ねられるので、ja_JP.EUC-JPとja_JP.UTF-8を有効にしておきましょう(あとからchroot /var/local/sarge-chroot dpkg-reconfigure localesを実行することでも再設定できます)。サービス関連は後から手動で起動するので、聞かれたときには起動しないように設定しておくのがよさそうです。
ここで一旦親環境ごと再起動しましょう。chroot内で何のサービスが動いているか確実に把握できるなら再起動の必要はないのですが、一応安全のために、です。知らないうちに動いているサービスは怖いですからね。特にSargeは無駄にネットワークに開放するサービスがいくつかある(危険というほどではないけど)ので、こうしたほうが安全です。なお、すでに親環境で動いているサービス(sshなど)については、chroot内でポートの重複するサービスが動いてしまうことはないはずです。
再起動が済んだら、ユーザー情報を中心にセットアップを進めていきましょう。この時点ではchroot内のサービスは何も起動していません。
# cp /etc/passwd /etc/shadow /var/local/sarge-chroot/etc # vi /etc/fstab (以下の内容を追加) proc /var/local/sarge-chroot/proc proc defaults 0 0 /tmp /var/local/sarge-chroot/tmp none bind 0 0 /home /var/local/sarge-chroot/home none rbind 0 0 (ここまで追加) # mount /var/local/sarge-chroot/proc ; mount /var/local/sarge-chroot/tmp; \ mount /var/local/sarge-chroot/home
パスワードを尋ねるような状況がなさそうなら、/etc/shadowはコピーしなくてもよいでしょう。 親のproc、/tmp、/homeをchrootにマウントさせています。procディレクトリはプロセス空間をユーザーランドで得る(psコマンドやデーモン起動など)ために使います。/tmpは必須ではないのですが、Xアプリケーションを起動したいときには必要です。bindオプションで親環境と同一のものをマウントするようにしています。/homeも同様に同一のものをマウントしていますが、rbindオプションによって、親環境が/homeの中で別のファイルシステムをマウントしている場合もそれに追従できるようにしています。
ユーザーの環境ができたので、rootしか利用できないchrootコマンドの代わりに、schrootコマンドで一般のユーザー権限で入れるようにします。これには、/etc/schroot/schroot.confファイルを編集します。
[sarge] description=Debian sarge location=/var/local/sarge-chroot priority=0 users=andy root-users=andy
ここでは、andyが「sarge」という名前でSarge chrootにアクセスできるように設定し、このユーザーでrootとしてもログインを許可するようにしています。priorityはあまり意味がないらしいですが、oldstableなので0を指定しています。グループ単位での制御やフックなど、詳細についてはman schroot.confを参照してください。
これで準備はほぼ完了したので、ユーザーの状態でschrootを試します。
andy$ schroot -c sarge I: [sarge chroot] Running login shell: '/bin/bash' $ (chroot内) $ exit andy$ schroot -c sarge -p (-pは環境変数を引き継ぐ) I: [sarge chroot] Running login shell: '/bin/bash' $ (chroot内) $ xterm (chroot内のXアプリケーションも起動できる) $ exit andy$ schroot -c sarge -p xterm (当然、直接Xアプリケーションを起動する こともできる) andy$ schroot -c sarge -u root (rootとしてログイン) I: [sarge chroot] Running login shell: '/bin/bash' # (chroot内) # exit
あとは、適宜chroot内のroot権限で、/etc/apt/sources.listの修正や、追加パッケージのインストールなどを行っていきます(デフォルトではsarge mainしか入っておらず、セキュリティアップデートも入っていません)。
- デーモン起動の発生するパッケージについては、後で起動対象にするのでその名前を控えておいてください。
- chroot内に/etc/debian_chrootのようなファイルを作成し、これに「sarge」のように書いておけば、chroot内のプロンプトが「(sarge)andy@debian:~$」のようになってくれます。
- chroot内のXアプリケーションを親環境から起動したいときには、「schroot -c sarge -p アプリケーション名」を実行するアプリケーションランチャアイコンを作るのがよいでしょう。
- 印刷についても、CUPS系であればデフォルトでローカルホストのポート631に出力するだけなので、Etch以降のわかりやすいCUPS 1.2サーバを利用できます。chroot内にはcupsys-clientパッケージを入れ、lpコマンドで出力します。
では最後に、再起動時にchroot内でも必要なデーモンが起動するよう、initスクリプトを作成します。たとえば次のようなスクリプトchroot-servicesを親環境の/ec/init.dに置き、「update-rc.d chroot-services defaults 99 00」のようにして親環境の起動時にchroot内のサービスを起動するようにします(サービスを起動する順序に注意してください)。revwの関数は鵜飼さんに考えていただきました。ありがとうございます。
#!/bin/sh
revw() {
set -- "$@"
r=""
while [ $# -gt 0 ]; do
w=$1; shift
r="$w $r"
done
echo "$r"
}
echo "start services (chroot Sarge):"
services="cron sysklogd postgresql"
if [ "$1" = "stop" ]; then
services=$(revw $services)
fi
for s in $services; do
schroot -q -c sarge /etc/init.d/$s $1
done
(ちなみに、「スペースで区切られた単語の順序(単語自体のつづりは変えない)を逆にする」というこのテーマは佳境な人々の関心を喚起したようで、「sed -e ':loop;s/^\([^ ][^ ]*\) *\([^:]*\)\(:.*\)*/\2:\1\3/;t loop;s/:/ /g'」(by ukai)とかも。)
procやバインドマウントをしていない状態にしてからchrootごとアーカイブ化すれば、ほかのマシンにコピーして利用することもできます。こういうのをサービスプロバイダが配布するとよさそうです。
注意すべき点としては、セキュリティアップデートの更新があったときに、chroot内は手動で更新する必要があることです。これを怠ると、そのchroot内で起動していたネットワークサービス経由で汚染される危険があります(過去のruby-langクラックが確かこれだっけ)。上記したようにchrootはセキュリティ対策としてはあまり期待できないので、侵入されるとchroot内のみならず、chrootの親環境やほかのchrootも危険にさらされます。chrootをいっぱい抱えているようなときには、次のようなスクリプトを用意しておくのも1つでしょう。
#!/bin/sh # sarge, sarge2, etch-test というchroot環境をそれぞれ更新する for e in sarge sarge2 etch-test; do echo "[update chroot $e]" schroot -q -c $e aptitude update schroot -q -c $e aptitude upgrade schroot -q -c $e aptitude autoclean done
このほか、たとえば親環境のsysklogdをリモート受け付け可能にして(かつネットワーク外部からのアクセスは禁止して)chroot内からのメッセージは全部@127.0.0.1に送るようにする、ユーザー情報をLDAP管理などにして完全に情報を統一する(デーモンユーザーが環境によって異なる可能性があることに注意)、システムを簡単にコピーできることを生かして定期リプリケーションする、などなどいろいろやり方はあると思います。 レガシーシステムにすべてを引きずられる必要はありません。
P.S. いずれにしてもSargeはもう余命いくばくもないので、Sargeを必要とするようなシステムを提供しているベンダが、ちゃんと現安定版への安全なアップグレードパスを作るとか、Sargeを独自にサポートし続けるとか、現安定版あるいは将来の安定版でも動作するような環境セットアップツールを作成するとかしないとダメだとは思います。
2007年08月08日
2007年08月07日
2007年08月06日
ペスカトーレパスタ
ありあわせのもので魚介パスタに。フライパンにオリーブオイルを入れ、チリ、ニンニク、ベイリーブス、玉葱のみじん切り、ナス、鮭の切り身を入れて炒める。イカ、海老、あさり、ホタテを入れてざっと炒め、白ワインをふりかけて強火で飛ばす。イカ・海老・あさり・ホタテは取り出す。トマト缶と昆布少々、塩、胡椒を入れて煮詰め、パスタと混ぜる直前に魚介を戻し、バジルを加える。
2007年08月05日
スープカレー、玄米ごはん
スープカレーのルーはコスモのもの。豚肉、玉葱、人参、ナス、椎茸をよく炒め、水を入れて沸騰させ、アクを取って弱火でコトコト。柔らかくなったところでルーを入れ、混ぜてから、クミン、胡椒、シナモンなどで味を微調整。エスニックとうたっていたけど、素直な欧風カレーに近い風味。もっとスパイス(クローブなど)をいろいろ入れてもよいかも。
玄米は、とろみのあるカレーには合わないけど、こういうスープカレーにはちょうどいい食感。
2007年08月04日
2007年08月03日
ピピンバ
あるもので適当に。大根と人参はせんぎりにして塩でもんでしばし置いたあと、絞って砂糖、酢と混ぜる。牛肉はニンニク、塩、胡椒、白ゴマ、コチュジャンともんでから炒める。丼にごはんを盛って、大根と人参、牛肉、キムチ、半熟卵焼きを乗せる。
2007年08月02日
Subject: Installation of Recommends by default on October 1st
debian-devel-announceより。
APTチームから、apt-getでもRecommendsをデフォルトで依存をひっぱってインストールするようにするというアナウンスが出された。つまり、DependsとRecommendsのいずれでもデフォルトでそのパッケージはインストールされることになる。aptitudeではすでに行っていることで、現在のAPTでもAPT::Install-Recommendsというパラメータで準備はできている。
現行の状態で試してみるには、APT::Install-Recommends=Trueを設定するか、--install-recommendsを付けてみればよい。今後はこれがデフォルトになる予定なので、無効にするにはAPT::Install-Recommends=Falseまたは--no-install-recommendsを付けることになる。現在の状況でどういうことが起きるかを見るには「apt-get install --fix-policy --install-recommends -o Debug::pkgDepCache::AutoInstall=true」のようにしてみる。
Suggests程度のものがRecommendsになっているパッケージが散見されるため、今後修正が必要になっていくだろう。(自分のパッケージも見直してみないと…)
2007年08月01日
cmap-*, gs-cjk-resourceをtake over
長きにわたりcmap-*やgs-cjk-resourceなどのパッケージをメンテナンスしてきたTagohさんが、パッケージをorpahn。今までありがとうございました。
non-freeセクションなので、QAチームの優先度は低く、そのままだと削除される可能性も高いため、とり急ぎtake overしてアップロードしておいた。cmap-adobe-japan1でoptional,extraもデフォルトにしないといくつか問題が出るため、このバージョンから全部有効にしている。
今後の展開としては、なんとかDFSGに沿ったものにしてmainに入れたいところだが……結局経緯としてはどうなったんだっけか。掘り起こさないとだめだな。
国民年金と厚生年金の統合をしてきた
私はアレゲ世代なので、いわゆる年金情報統合漏れの可能性の高い年代に一致する。 ネットで確認したところ、学生時代に親に払ってもらっていた国民年金が予想どおり未納扱いになっていたので、手近な社会保険事務所に行ってきた。
窓口は今の時期増員してる上に、騒ぎも喉元過ぎて国が対策してくれるから安心という雰囲気なのかもう混雑はない。よって、今が狙い目だと思う。国が対策してくれるというのはナイーブすぎるにもほどがあるし(「どうせ我々が年金時代になる頃には破綻してるから手続きしても意味がない」という考え方はアリだが)、年金ダイヤルのアルバイトにかけたところで証明が何もないので、少々時間をとってでも窓口に行ったほうがよいと思う。後述するように、管轄の社会保険事務所に行ったほうがいい。
なお、厚生年金に加入中で基礎年金番号がわからない場合には、会社が保管しているはずなので会社に尋ねる。厚生年金と国民年金の統合作業は本来は会社が申請するものなので、統合されていないことが確実と思われ、また時間も取れない場合には、会社総務にお願いするのが適切。
ネットでできるのは記録の照会のみ。現在は登録作業が非常に滞っており、3週間〜4週間はかかると思われる。登録完了を待つよりも、さっさと人のいる窓口に行って照会と手続きをしたほうが早そう。なお、ネット登録すると3週間〜4週間後にユーザーIDとパスワードが送られてくるが、このほかに、登録時に記入した仮パスワードもログイン時に必要になるので、忘れないように記録しておこう。忘れるとまた1から申請のやり直しになる。
国民年金→転職を経つつも厚生年金でそのまま、というようにあまり複雑な経路を取っていない場合には、統合前の国民年金手帳と、基礎年金番号の貼られた別の手帳を持っていけばいい。いちおう身分証明書も持っていったほうがいいかも。振込みの記録があるならなおよいが、振り込まれていない証明をするのは社保庁の側だろうから、あまり気にする必要はないんじゃないかと思われる。
手続きとしては、窓口で新旧の手帳番号での情報を照合して各納付記録も照会したあと、用紙に旧番号、生年月日、名前、住所、基礎年金番号を記入する。このとき、住所が管轄範囲であれば、その場で統合手続きが行われ、統合してこれまでの履歴を記した照会回答票をもらえる。また、旧手帳は「基礎年金番号に登録済み」の印、新手帳は「(旧番号)は基礎年金番号に登録」の印をそれぞれ受け、正式な証明となる。厚生年金加入中で、住所が管轄外の場合には、管轄に出向くか、会社にお願いすることになる。
ということで、無事に統合は完了。手続きは簡単なので、まだされていない方は今がチャンス。国や役所に任せてると、「与野党逆転したのでもう知りません」とか「今回の勝利は労組の訴えを国民の皆様が評価くださった証左です」とかわけのわからん展開になってまた堕落状態に戻るかもしれませんよ。
![[hatena]](http://d.hatena.ne.jp/images/b_entry_de.gif)


TIMEDOMAIN mini









![[g15.jp]](http://g15.jp/powered-g15.png)
![[RSS]](/d/rss10.png)
Debian GNU/Linux徹底入門 Sarge対応
Debian辞典