88171.net

台北旅行

先週ちょっくら台北に行ってきたので、その写真を何枚か。

Canon EOS M, EF-M18-55mm F3.5-5.6 IS STM, ISO 100, f/5.6, 1/320 sec, 1/3 EV

Canon EOS M, EF-M18-55mm F3.5-5.6 IS STM, ISO 250, f/5.6, 1/100 sec, 1/3 EV

Canon EOS M, EF-M18-55mm F3.5-5.6 IS STM, ISO 160, f/5.6, 1/30 sec, 0.7 EV

Canon EOS M, EF-M18-55mm F3.5-5.6 IS STM, ISO 6400, f/5.6, 1/30 sec, -1 EV

また行きたい。


git-svn で loose object が corrupt した時のヒント

git svn rebase の最中とかにたとえばマシンがお亡くなりになって、もっかい叩いたら

fatal: loose object b2460997f61ed75f4025ea7177f96afe54e5d3bc (stored in /some/where/.git/objects/b2/460997f61ed75f4025ea7177f96afe54e5d3bc) is corrupt
could not detach HEAD
rebase refs/remotes/git-svn: command returned error: 1

とか言われて身動き取れなくて泣きそうな時のヒント、というか自分用のメモ。 前提として、 git-svn しか想定してない。 そもそも全 revision を Subversion リポジトリから最悪引っ張り直さないといけないから泣きそうなのであって、 リモートも Git だったり、 Subversion だけど小規模だってんなら黙って clone し直した方がきっと早い。

まず、 git fsck をかけて corrupt だと言われるオブジェクトファイルを除けていく。 最終的に missing な blob が絞り込めれば、そいつらを作り直せばいいだけ。 ここでもし blob 以外が missing だと言われたら、他をあたってください。

... more

FOSTEX GX100

Canon EOS M, EF-M22mm F2 STM, ISO 1600, f/2.0, 1/40 sec, 0 EV

親父から「スピーカー処分しようと思うけど要るか?」とメールが来たので、ホイホイもらってきた。

そこそこお高いだけあって、すごくいい。2000円ちょいの中華アンプで鳴らすのが申し訳なくなるくらい。


既存のテキストを Git 管理下に置くスクリプト

ちょっと前に書いた、既存の blosxom 用テキスト群から Git リポジトリを作るスクリプト。 git init したワーキングコピーにドバッとテキストを置いて叩くと、各ファイルの mtime を元にコミット日時を設定して個別にコミットしてくれる。

#!/bin/bash
find . -name \*.txt | sort | while read file; do
    time="`stat --format=%Y $file` +0900"
    git add $file
    env GIT_AUTHOR_DATE="$time" GIT_COMMITTER_DATE="$time" \
        git commit -m 'initial revision' $file
done

まぁ、これを書いたきっかけは「テキストを Git 管理できたらナウいんじゃね?」という単なる思いつきで、生の .git を直接データとして見にいく blosxom プラグインもちょっと書いてはみたんだけど、

... more

Lepy (Lepai) LP-V3S

というわけでFOSTEXのAP05を通販で買おうと思ったんだけど、調べてたらLepaiという中華メーカーがアレゲな小型アンプを出してるのを知り、気がついたらLP-V3SをAmazonでポチってた。巷での評判はピンキリだけど、まぁハズレでもいいやくらいのノリで。だって、ついでに一緒にポチったCDよりも安いし。

... more

BitTorrent Sync のシークレットキーに関する考察

BitTorrent Sync は、チョー大まかに言うと

  1. デバイス A で、共有したいフォルダ fシークレットキー を生成する
  2. デバイス B で、 f と同期したいローカルのフォルダ f' と、先ほど生成した シークレットキー を設定する

というたったの2ステップで、デバイス ABff' を同期させることができる。 実際使ってみるとチョーお手軽。

で、「この仕組みって本当に安全なの?」という素朴な疑問が生まれる。 だってたった一つの、高々数十Byteの文字列を知ってさえいれば、他人のデータだろうが難なく読み取ることができちゃうわけで。 狙って攻撃できたり、そうでなくてもうっかり衝突しちゃったりとかしないの?

やっぱり皆おっかなびっくりらしく、フォーラムでも疑問の声は上がってたりする。 そうだよねぇ。

... more

FreeNAS 稼働開始

というわけでうっかりポチった HP ProLiant MicroServer N54L、とりあえず FreeNAS 入れて ZFS と戯れてみたけど、想像してた以上にメモリ喰らいなのがよくわかった。 パターン少ないけど、 fio で適当にベンチってみた結果、データサイズが小さいとアホみたいな性能出てウケる。

... more

静的ポートフォワーディングでPS4リモートプレイ →挫折

せっかくPS4とVitaを持つことになったので、 シス管としてはインターネット越しのリモートプレイを実現すべく、 ネットワーク設定をアレコレしたくなるわけですよ。 公式マニュアルにも静的ポートフォワーディング設定について ドヤ顔で明記してあるので、アンチUPnPな俺にも安心!

UPnPに対応していないルーターをお使いのときは、 ルーターのポートフォワーディングを設定して、 インターネットからPS4™への通信を許可する必要があります。 リモートプレイで使用されるポート番号は、 TCP:9295, UDP:9296, 9297です。

[外出先からリモートプレイをする | PlayStation®Vita ユーザーズガイド][psguide]

‥‥まぁ、繋がんねぇんだけどな。 ペッ。

しょうがないので一瞬だけ upnp use on してやろう。

起動直後

> show status upnp
Interface: PP[01]
IP Address for GetExternalIPAddress: xxx.xxx.xxx.xxx
PortMapping:
ExternalPort  Protocol  InternalPort  InternalClient  TimerType  Timer
9308          UDP       9308          yyy.yyy.yyy.yyy ARP        arp exist
... more

サークル合宿@箱根

もう先週のことになりますけれど、大学時代の某サークルの合宿に飛び入り参加して、 箱根に行ってきましてん。

で、企画の一環で、箱根の フォレストアドベンチャー で遊んできましてん。 あれ、ゲームサークルなのに本気の野外アクティビティ。 おかしいなおかしいな。

高所恐怖症(?)な三十男でも存分に楽しめました。 手汗でグローブがビショビショだったけど。 3日くらい筋肉痛でしんどかったけど。

是非また行きたいなぁと思うので、 もし興味のある方は声かけてくださいな。


ReadyNAS DuoのTime Machineをうっかりぶっ壊した人向けのTips

「ちょっとバックアップやり直そうかな」とうっかり /c/.timemachine ごとぶち消し、 FrontviewのTime Machine設定の挙動が怪しくなり、 もちろんバックアップもできず、 焦ってググっても 「黙って初期化しな」 という無慈悲な回答しか得られずに絶望している人向けの情報。 そうだよ俺だよ。

優等生的な回答

ファームウェアを上書きインストールしろ。 これ。

この方法で間違いなく直る。

不良的な回答

「そうは言ってもいろいろコアなところまでいじってるから何とかならんか」 というメンドくさい人は、

# mkdir /c/.timemachine
# touch /c/.timemachine/.com.apple.timemachine.supported
# chown -R ReadyNAS:root /c/.timemachine

この後にFrontviewから再設定するとうまく動くかもしれない。

何故かというと、ファームウェアの上書きインストール後にこの状態になってたから。 それ以上は追ってないので、もしかしたらうまくいかないかもしれないけど、 まぁ失うものはないのでやってみるといいかも。