FreeBSD の bspatch SA2016年07月29日 12時01分23秒

FreeBSD-SA-16:25.bspatch によると、patch の実装に問題があり、バイナリ形式のパッチファイルを処理するときに、任意の位置に書き込めてしまう可能性がある。root で悪意のあるファイルを処理した時に、特に危険だとのこと。

対象は 9 系から 11 系までの全て。

trap を用いて shell スクリプトが中断されたらファイルを消す2016年07月28日 11時11分04秒

シェルスクリプトで一時ファイルを生成した時に、途中で中断させるとファイルが残ってしまう。trap を用いて、中断された時にファイルを消すように出来る。
#!/bin/sh

TMPFILE=`basename $0`
TMPFILE=`mktemp -t $TMPFILE`
trap "$rm $TMPFILE; exit 1" HUP INT QUIT KILL TERM

echo temporary > $TMPFILE
sleep 600 
rm $TMPFILE

夕立ちに遭遇2016年07月26日 13時35分29秒

今日は激しい夕立ちが二、三回に分かれて降った。ほとんどが雷を伴う局所的な大雨。そのため、天気予報をみると Scattered Sounder Storm となる。四時半には降り始めて、七時過ぎまで断続的に大雨が襲うとの予報。外を見ると西の空が暗かった。

そこで、傘とレインコートを持って帰途につく。予報通り、雨が降ってきて完全に避けることは出来なかった。二回ほど雨宿りをして、大雨を回避。小降り間を狙って帰った。残念ながら靴下と靴はぐっしょりと濡れての帰宅となった。

セントラルパークでは、夕立ちの後、雨が道路から熱気を奪って白い湯気が発っているのを良く見掛ける。今回も雨の中を白い湯気が道路から湧き上がっていた。

キャメルバックビーチへ行く時の予備知識2016年07月25日 12時27分26秒

土曜日に行ったキャメルバックビーチだが、幾つか予備知識があると、もっと楽しめそうだ。特に speed pass。他にも、予備的な施設の利用権が購入出来る。

Speed pass は二種類あるようだ。現地で聞いた時は、いまいち要領が掴めなかった。Speed Pass は基本的に、列に並ばないで待てるシステムの様。二十ドルの regular の方だと、専用機にて予約をすると、混雑状態を元に待ち時間を計算。そして、その待ち時間以上の時間が経過してから、施設に行くとそのまま乗れると言う算段。並ばずに待つシステム。横から見ると並ばずに、入って行ける様に見えたが、すぐには乗れるわけではなかった。確かに、土曜日に専用の列を見ていると、そこで待たされている人もいた。

そして、Premium Speed Pass は、待ち時間が半分でこちらは二十五ドル。待ち時間が半分になるそうだ。まあ、見えないところで割り込みをさせてもらってはいるが、ある程度は待たないといけないもよう。

そして変わっているのが、Picnic Table。水以外の飲食物は一切持ち込み禁止だった。土曜日に持っていったお菓子は、隣のロッカーに置いて入場するように言われた。この Picnic Table を購入すると、園内に飲食物が持ち込めるようになる。いわば、飲食物の持ち込み料金。それが十五ドル。注意点は四十八時間前に、予約が必要なこと。土曜日にテントがあったので、何かと思っていたがそれだった様だ。ほぼ埋まっていた。

他にも一日 $129 でテントなども借りられる模様。

土曜日にキャメルバックビーチに2016年07月24日 18時11分42秒

今週末は暑いとの予報。午前中に予定があったので、午後からポコノのCamelbeach Mountain Water Parkに行ってきた。ここは、キャメルバックリゾートの一部で、屋外プール。

午後三時入場で、閉館の七時までいられる半日チケットがある。値段は半日で、48 インチ以上の大人と子供は $29。48インチ以下の子供は、$24。全日の入場券と比べると十ドル安いといったところ。スピードパスというシステムがあるらしいが、今回は半日なので見送り。

ポコノまで車でほぼ二時間の距離。十二時半を過ぎた頃に出て、丁度二時四十分に到着。時折道は混んではいたが、渋滞はなかった。駐車場は既に一杯だが、比較的近いところに空きを見付けることは出来た。

摂氏三十五度を上回る真夏日だが、高原のため水が冷たい。息子は大丈夫だが娘は冷たいとのこと。私にも若干冷たくて、頭からかぶりたくはない温度。それでも日差しは強いので、水で濡れていなければ暑い。ポコノでの屋外プールは何度か出てみたが、いつも水を冷たいと感じたのでこれがここでの通常の温度のようだ。

プールは大変混んでいて、大きめのスライダー等は長蛇の列。半日しかないので、並んで時間を無駄にするのも惜しいので、スライダーは空いているところを、あとは波のプールや子供向けのところで遊んでいた。

六時を過ぎると肌寒くなってきた。息子も寒いので終りにしても良いと言い始める。行きたがっていた流れるプールを一周回る。見るとスライダーの列が短くなっているので、折角だからと家族で二回滑べった。

既に、七時まで十五分。帰る支度をして、近所で簡単に夕食を取り、家路に付いた。

自己解凍・実行形式のシェルスクリプト2016年07月22日 11時45分08秒

シェルスクリプトを実行すると、自分で組み込まれたファイルを展開し実行する実装をしたことがある。一つのプログラムとしてまとめるのが困難で、いくつもの細かいプログラムを使って処理する必要があった。しかし、複数のファイルを各々インストールするのも手間が掛かりすぎるために、一つにまとめたのだ。

tar でファイルをまとめて、uuencode を使って文字に変換し、エディタで開いたりしても、問題ない形にする。実行するときは、自身に uudecode をかけて、まとめた分を展開し、処理を移行すれば良い。

-C を複数回使うと、付属の tar では動作が異なり GNU tar を使うのが一番移植性があった。二度目の -C が一度目からの相対位置になるか、プログラムが実行された位置を元にするのか等の違いがある。gtar は前回の位置を基準にする。

$ gtar cvf - program.pm -C ../../dir1 *.pm -C ../../dir2 *.pm | compress -c uuencode encoded.tar.Z >> driver.sh
driver.sh と言う名前のシェルスクリプトを使った。そして、driver.sh の方で行うのが展開作業。
mkdir $tmp
cat $0 | uudecode -o /dev/stdout | uncompress -c | ( cd $tmpdir ; tar xf - )

...
$tmp/program.pm
引数の処理などをしてから、$0 で自分自身を読み出す。uudecode は -o /dev/stdout の形がどの UNIX でも使えるようだ。そして、tar に入れておいた program.pm を呼び出して、プログラムの実行を移す。

停電2016年07月20日 11時03分56秒

昨日停電があった。どうも夕食の準備の時間帯。帰ってきたら近くのデリで買ってきたと言うサンドイッチ。子供達と歩いて行ってきたそうだ。夕方、五時すぎから大雨が降ったので、会社で雨が止むのを待って帰って来たための遅くなった。

帰宅時には既に復旧していた。停電したときに電話を掻けたら、復旧の見込み時刻は十時だったとのこと。雷雨が降って蒸し暑かったのと、十時では子供達を寝かせる準備に支障がでるので、早く復旧して胸をなでおろした。

残念ながら、こちらでは停電はちょこちょこ起きる。

Sandy Hook の North Beach2016年07月19日 12時24分14秒

土曜日が暑かったので、日曜日に Sandy Hook に行ってきた。ニュージャージィー北部のこの位置だとここの海が一番良いようだ。一時間半は車を走らせないとどこの海にも行けない。その中で、渋滞があまりなく、綺麗な海は結局ここのようだ。

最近娘が良く寝つけないので、寝起き遅い。十時に出られるように準備したが、結局十時二十分の出発だった。今までで、海に出た時間としては遅い方だと思う。

料金所に着くと既に半分が埋まっている。開いているのは I J K L の四つ。前回は E の駐車場に留めた。E を過ぎると、結構島の先端には入り、道が狭くなった。結局、ほぼ北端の North Beach の駐車場に停車。初めての場所。

North Beach は駐車場から海岸線までの距離がとても長い。砂浜が広がっている。歩くだけで結構時間がかかり、車へは戻りたくない距離。御手洗いなどの施設なども、それに伴って遠い。次回からはなるべく避けたい距離だ。

ボディーボードを息子に買ってあげたのだが、この浜では禁止との立て看板。残念ながら諦めた。ただ、Sandy Hook 全体で駄目なのか、North Beach だけが駄目なのかは分からないので、次に来るときも準備をしようとは思う。

靴下に凍らせたペットボトルを入れて2016年07月15日 15時36分32秒

娘のアトピー肌が熱を持って痒くなる様なので、氷で冷やしてみることにした。あれこれと試したが、一番小さいペットボトルを凍らせて、靴下に入れて使うのが一番便利だ。

氷を直接だと冷たいし、水になって周りが濡れてしまう。ジップロック等に入れても、ふとしたはずみで開いてしまう。また、断熱効果も強いみたいであまり冷たくはないという。

アイスパックも使いづらかった。キャラクターの御弁当と共に入れるようなものは小さくてすぐに融ける。そこで、少し大きめの袋入りの保冷材を使ってみたら、はじの部分が肌につき刺さって良くないし、大きいので小回りが効かない。

偶然誰かが入れた、二百ミリリットル位の小さいペットボトルの水が凍っていた。大きさ的にも良さそうなので試してみたところ、握りやすいし、氷も長持ちして使い勝手が良い。タオルや、ちり紙、ペーパータオルなどで覆って試してみたが、靴下が一番ぴったりと合って使いやすかった。普段は嫌われ物の、片足靴下が大活躍。

勉強時計 デモ版 を 1.3.0 に更新2016年07月14日 14時29分26秒

勉強時計 デモ版」を 1.3.0 に更新。「勉強時計 広告版」を更新したので、その追従。広告付きで、新しい方を公開し、少し遅らせてデモ版として公開中。

英語での変更点。

Added "self study" mode that resets the analog clock and waits a kid to answer.
日本語での変更点。
「自習」モードを追加。時計の針が自動で動き、その時刻を入力する。