どさにっきLTE 〜2013年1月下旬〜

by やまや
<< = >>

2013年1月28日(月)

雪見

_ きのう、日曜日。厳寒期の雪山だけど装備さえあれば初心者でも登れる八ヶ岳の北横岳へ。ロープウェイでどどんと高度を上げて、そこから1時間ちょっと歩くだけで山頂だもんね。ラクチン。よく晴れて山頂以外では風もほとんどないので、気温はひじょーに低いものの体を動かしていればそれほど寒さを感じることはなく。生まれて初めてダイヤモンドダスト見たよ。

_ 縞枯山にも行こうかと思ってたけど、なんか体が重い感じがしたので大事を取って途中で引き返す。が、その後とくに体に異常はなく、たんに気のせいだったみたい。

_ 帰宅時、中央道談合坂 SA で障害対応。そこで実行に長時間かかるスクリプトを仕込んでから自宅に帰らず会社に寄って作業の続き。結局うちに帰れたのは25時過ぎだった…。

_ 北横岳北峰山頂から蓼科山

霧氷

なんか砂糖菓子みたいだよね

sort(1)

_ で、その障害対応で過去の膨大なログをあれこれいじりまわしてたんだけど、こんな感じのスクリプトを書いたわけですよ。

#!/bin/sh
# ファイルを1万行ごとに分割
cat file1 file2 file3 ... | split -l 10000 - hoge.
# 分割されたそれぞれのファイルをソート
for f in hoge.*; do
    sort $f > $f.sorted
done
# ソートされたファイルを結合
sort -m *.sorted
# 後始末
rm hoge.*

_ ソートにかかる時間ってのは O(n log n) なので、n を減らすべく小さな単位でソートして、その結果を結合する、と。sort -m はファイルがすでにソート済みであることを前提にマージだけをおこなうオプションで、これは O(n) で完了できるので、こちらに巨大な入力が与えられるのはそれほど影響はない。

_ で、後から考えてみるに、そういえば巨大なファイルをソートする場合、分割・結合を人間がいちいちやらなくても、同じことを sort(1) が内部的に勝手にやってたよな、と思い至る。$TMPDIR (or /tmp) に分割された一時ファイルが生成されるし。要するにこのスクリプトって手動マージソートなわけなので。つまり、工夫したつもりが無駄だった、と。実際ほんとに意味がなかったのかどうかは比較してないのでわかんないけど。


2013年1月29日(火)

DNSSEC validation @8.8.8.8

_ ふむ。

> dig +dnssec +noall +comments @8.8.8.8 chigumaya.jp
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58219
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 4, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 512
たしかに ad つきの応答が返ってくる。 このへんからのやりとりを見ると、どうも動作は一部怪しいみたいだけど。

_ うーむ。

> dig +dnssec +noall +comments @8.8.8.8 ecdsa.chigumaya.jp
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39398
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 4, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 512
> dig +dnssec +noall +comments @8.8.8.8 gost.chigumaya.jp
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40806
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 4, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 512
ECDSA、GOST には対応していない、と。署名サイズが小さくなるので RSA よりも楕円暗号にがんばってもらいたいんだけど、当分無理っぽいなぁ。RHEL6、CentOS6 の OpenSSL では楕円暗号が使えないようにコンパイルされてるというのがひじょーに痛い。


<< = >>
やまや