history

青木日記 RSS

<前の日 | この月 | 次の日>

2007-07-26

OMRON ルータ MR504DV リストラ

もー、HTTP が突然止まる病がどうしてもなおらないので、 ルータをリストラしました。 今度は Corega にしてみた (安かった)。 これでしばらく運用してみよう。

(00:17)

SPI が信用できない

どうもファイアウォールってか SPI (Stateful PacketInspection) が信用できない。 ZyWall のときも pipelining SMTP が SPI ファイアウォールに止められたし、 DNS スレーブ接続もブロックされたし、 MR504DV で HTTP が止まるのもどうも SPI がらみのような気がするんだよな。 SPI がパケットをブロックした直後から HTTP が全部止まってんだもん。

つーかさー、もうファイアウォールいらなくね? 邪魔するばっかりで全然役に立ってねえよ。 ちゃんとルーティングだけしてくれればそれでいいじゃん。

(00:32)

半自動 ls

自分で ls を連打しなくて済ますためのシェルスクリプトを書いてみた。 return を連打するだけでランダムに ls, ls -l, ls -as を実行する。

#!/bin/sh
 
while read cmd
do
     [ "$cmd" = "exit" ] && exit
     case `expr "$RANDOM" % 3` in
     0) ls ;;
     1) ls -l ;;
     2) ls -as ;;
     *) echo "???" ;;
     esac
done

手抜きしたので $RANDOM があるシェル専用。

(01:17)

半自動 ls (2)

ランダムで cd するようにしてみた。

#!/usr/bin/env ruby
 
unless Array.method_defined?(:choice)
   class Array
     def choice
       at(rand(size()))
     end
   end
end
 
def main
   Signal.trap(:INT, 'EXIT')
   actions = [
     lambda { cmd "ls" },
     lambda { cmd "ls -l" },
     lambda { cmd "ls -a" },
     lambda { cmd "ls -s" },
     lambda { random_chdir }
   ]
   $stdin.each do |line|
     exit if line.strip == 'exit'
     actions.choice.call
   end
rescue Interrupt
   exit 1
end
 
def cmd(s)
   $stderr.puts s
   system s
end
 
def random_chdir
   ent = (Dir.entries('.') - ['.']).select {|ent| File.directory?(ent) }.choice
   $stderr.puts "cd #{ent}"
   Dir.chdir ent
end
 
main

(02:23)

名前
メールアドレス

<前の日 | この月 | 次の日>
2002|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|04|05|06|09|10|
2009|07|
2010|09|

Copyright (c) 2002-2007 青木峰郎 / Minero Aoki. All rights reserved. LIRS