monthly gimite

試験運用中。

unix

tar cvzfの罠

どうもtar cvzfの引数の順番を間違えてファイルを消しそうになるんですが、どうしたもんでしょうねぇ。 $ tar cvzf a.txt b.txt c.tar.gz # a.txtがアーカイブに上書きされて消滅。この前実際にやりました。間違える自信があったのでバックアップしてありま…

FreeBSDで脆弱性あり&アップデートありのパッケージを列挙

$ portaudit -aq | xargs portversion -v | grep '<' xxx-1.2.3 < needs updating (port has 1.2.4) yyy-4.5.6 < needs updating (port has 4.5.8)security run outputのメールを見て「脆弱性が!アップデートしなきゃ」→portupgrade→「まだ修正版出てないじ…

historyネタ

なんかどっかでhistoryネタがはやってたので、やってみました。 $ ruby -pe 'gsub(/^.+;| .+$/,"")' ~/.zsh_history | sort | uniq -c | sort -r | head -20 155 cd 86 lv 77 sudo 67 svn 57 ls 51 ruby 25 touch 25 throw 25 locate 24 which 20 mv 20 irb …

Cannot load /usr/local/libexec/apache/libphp5.so

なんかサーバ(FreeBSD)をrebootしたら上のエラーでhttpdが起動しなくなりました。 そういやこの前PHPをアップデートしたような…と思って色々悩んだんですが、 # cd /usr/ports/lang/php5 # make configすると APACHE Build Apache module というのがOFFにな…

「ファイルをcloseすればflockも解除される」は嘘

たいていの場合はこのとおりの挙動になるので、これを信じてしまってて、おかげでハマりました。 $ cat a.rb open("test.txt", "r+") do |f| #ファイルをopen f.flock(File::LOCK_EX) #ロックする system("ruby b.rb &") #バックグラウンドでb.rbを実行 end …

ログインと同時にscreenを起動

上の件が解決して、やっとscreenを常用する気になったので、ログインと同時にscreenを起動するようにしてみました。注: いじり方を間違えるとログインできなくなったりするので、注意してください(てか、なりました)。僕のログインシェルはzshなので、.zsh…

screenでウィンドウタイトルの変更を有効に

僕は.zshrcで PROMPT=$'%{\e]2;%m:%~\a\e[32m%}$ %{\e[0m%}'とかやって*1ターミナルのタイトルバーにカレントディレクトリのパスを表示してるんですが。これがscreenの中では効かなくなるのが不便でした。今日やっとこれを有効にする方法を発見。.screenrcに…

netcat

xe-kdoo経由。telnetと同じ?と思ったらサーバにもなれるんですね。これはちょっと便利かも。Cygwinで入れときました。たまにクライアントソフトの挙動を調べるためにサーバ版telnetが欲しくなって、rubyでへろへろとでっちあげてたので。

SMTPの接続が遅い (tcserver/qmail-smtpd)

なんかLANの中のサーバに繋いでるくせにメールの送信が遅い*1なぁ、外からsshでポート転送して送る時は速いのに、と常々思ってたんですが。ぐぐると一発でこんなものが出てきたので早速tcpserverに-HR*2オプションを付けてみると、むっちゃ速くなりました。…