俺のぶろぐだけ復活 
Thursday, September 8, 2011, 05:18 AM - Misc
Posted by Administrator
少々個人的に困ったこともあって、俺のぶろぐだけは見れるようにしたというだけ
内部的には付け焼き刃でしかないので色々と怪しい

過去のぶろぐは全部死亡
だってBlackCurtain-Apache2-Access-MySQLないし

うpろだも全部死亡
だってmod_uploader入ってないし、HDD付いてないし

倉庫も死亡
だってHDD付いてないし

音楽室も死亡
だってHDD付いてないし

腹減ったも当然死亡
だって依存関係多すぎるし、このマシンだとパワー不足だし

開発室と実験室は動く
というよりもこれは単なるOptions +Indexesに過ぎない
add comment ( 515 views )   |  permalink
TwitterIrcGateway の挙動に関するめも 
Sunday, April 17, 2011, 12:30 PM - Misc
Posted by Administrator
TwitterIrcGatewayの挙動に関するめも
推測、実際にソースコードを読んだわけではない

・最初に
#Consoleに入ってhelpと打て

・Timelineのチャンネル(#Twitter)を変更する
ChannelNameで設定可能

・Replyする
単純な"@you hello"ではどのTweetに対してのReplyか判別できない
EnableTypableMap=1とした上で各Tweetの末尾に付加される英字を使って"re aaa hello"とする

・自分に対するReplyを取得する、自分に対するReplyのみ表示するチャンネルを作る
単純な@meの抽出はFollowしている(Timelineに見えている)必要がある
そうではなく全ての@meを取得するには EnableRepliesCheck=1とする
その上で#Replies(など)へ入り、トピックを@meとする

・自分の Tweetのみ表示するチャンネルを作る
BroadcastUpdate=1とし、#Self(など)へ入り、mode +iとする
それ以外のチャンネル全てでmode +pとする

この挙動に関する検証は下記
[log]01:43 <Racoon> joinした時の自分の発言って
01:43 <Racoon> 全chにみえね?
01:43 <Racoon> 単純に。
01:43 <purintai> そういうことなのかな
01:44 <purintai> まあ
01:44 <Racoon> それを抑制したいっていう話?
...
02:59 <Racoon> broadcastupdate trueにすると自分のtwittがechoしてくるっぽいんだけど
02:59 <purintai> pにすればストーカーモードで
02:59 <purintai> 自分の発言が見えませんと
03:00 <Racoon> これbroadcastupdateってfalseでもいけるんじゃねーかな
03:00 <Racoon> 結局のところreloginした時にbroadcastが一時的にonになるのか?
03:00 <purintai> まあ
03:00 <purintai> そうでないと直近のTL取得できないしね
03:01 <Racoon> a-soudesune
03:01 <Racoon> broadcastupdateの有無は関係ない
03:01 <purintai> ただ
03:01 <Racoon> pつけてreloginすると恐らく望んでる動作になる
03:01 <purintai> 疑問はなんでreplyの取得なのに
03:01 <purintai> 自分の発言拾ってたかだよね
03:01 <purintai> まあpつければ解決するのはまさにそうなんだけど
03:01 <Racoon> いやだから
03:01 <purintai> 根本的な疑問解決とはちょっと違う
03:01 <Racoon> loginする時にTLもってきて
03:01 <purintai> 問題は解決してる
03:01 <purintai> うん
03:02 <Racoon> この瞬間だけbroadcastupdateが強制的にtrueになる
03:01 <purintai> つまり直近TLに自分の発言あると
03:01 <Racoon> これがtrueだと自分のtwitを全chにばらまく
03:01 <purintai> それ強制的拾いますよってことか
03:02 <purintai> なるほど
03:02 <Racoon> 拾うとか拾わないとかっつー話じゃなくて
03:02 <Racoon> 拾ってるんだけど表示してないだけ
03:02 <Racoon> この表示するかしないかの機能がbroadcastupdateのtrue/false
03:02 <Racoon> reloginの時だけ設定を無視してtrueになる
03:04 <Racoon> まあ全chにばらまくっつーか
03:04 <Racoon> 全chに自分は常にinしてるから
03:04 <Racoon> そういう動作に結果的になるだけだけど
03:05 <Racoon> で、pは自分のtwitは表示させない
03:05 <Racoon> っていうoptionのようだ[/log]

・対象ユーザのみのTweetのみ表示するチャンネルを作る
#Group(など)へ入り、対象となるユーザを招待する
チャンネルの人数が2人以上ならばそのユーザの発言のみ表示されるようになる

・処理の流れ
1. Timeline取得
2. EnableRepliesCheck=1なら@me取得
3. フィルタの評価(これの優先度は調べてない)
Drop/Rewriteは特筆点なし、Redirect処理を行い、Duplicate=0なら対象となるTweetを今後の処理の対象としない
4. BroadcastUpdate=0ならgrep -v @me、但しログイン直後のバックログ表示の際はBroadcastUpdateが常に真
5. #Twitterへ出力、ここで出力されないTweetは以降も処理の対象とならない
(3でDropされた、Duplicate=0で Redirectされた)
6. 各チャンネルの処理、チャンネルの人数が2人以上なら対象のユーザでgrep
またトピックが設定されていれば対象の文字列でgrep

・自分で使用している設定例
BroadcastUpdate=1
EnableRepliesCheck=1

#Timeline ()
#Self (+i)
> 自分のTweetのみ表示
#Replies : @elin_twi (+p)
> 自分に対するReplyのみ表示
#Navi : ^@elin_twi (+p)
> なびこからの自分に対するReplyのみ表示、このチャンネルに表示されるTweetは#Repliesに表示されない(フィルタの3番)
#Group (+p)
>

0: Redirect:[DISABLED] MatchPattern=\@elin_twi ChannelName=#Replies
> 使ってない
1: Redirect: UserMatchPattern=^mikomoe_navi$ MatchPattern=^\@elin_twi ChannelName=#Navi
> なびこからの正規(先頭@)Replyを#Naviへ流す、他チャンネルへは表示させない
2: Drop: MatchPattern=^.{,3}$
> 3文字以下の価値のないTweetを表示しない
3: Drop: MatchPattern=#(4ji)$
> 末尾"#4ji"の価値のないTweetを表示しない
4: Drop: MatchPattern=http:\/\/shindanmaker\.com\/[0-9]+
> 価値のないURLを含むTweetを表示しない
5: Drop: MatchPattern=((.)(?!\2)(.)\2\3$|(ぺろ|ほむ){2,})
> 末尾"あうあう"などの別2文字繰り返しで終わる、もしくは"ほむほむ"、"ほむぺろ"、"ぺろぺろ"などの価値のないTweetを表示しない
6: Drop: MatchPattern=^(.+?) RT \@[0-9a-zA-Z_]+: \1
> "ほげ RT @you: ほげ"などの同じ内容でRetweetされている価値のないTweetを表示しない

[HR]
同日15時 追記

より厳密なパターンへの更新及び追加
0: Redirect:[DISABLED] MatchPattern=\@elin_twi ChannelName=#Replies
1: Redirect: UserMatchPattern=^mikomoe_navi$ MatchPattern=^\@elin_twi ChannelName=#Navi
2: Drop: MatchPattern=^.{,3}$
3: Drop: MatchPattern=#(4ji|nico[a-z_]+|sm[0-9]+)(?![^ ])
> 完全な"#4ji"や糞動画のハッシュタグを含む価値のないTweetを表示しない
4: Drop: MatchPattern=http:\/\/shindanmaker\.com\/[0-9]+
5: Drop: MatchPattern=^The (.+?) Daily is out!
> paper.li、ResolveTinyUrl=1で"http:\/\/paper\.li\/[0-9a-zA-Z_]+"でも殺せるかもしれない
6: Drop: MatchPattern=(^(.)(?!\2)(.)(\2\3)+$|(ぺろ|ほむ){2,})
> "あうあうあう"などの別2文字繰り返しのみ、もしくは"ほむほむ"、"ほむぺろ"、"ぺろぺろ"などの価値のないTweetを表示しない
7: Drop: MatchPattern=^(.+?) RT \@[0-9a-zA-Z_]+: \1

[HR]
18日2時 追記

クソ動画対応
0: Redirect:[DISABLED] MatchPattern=\@elin_twi ChannelName=#Replies
1: Redirect: UserMatchPattern=^mikomoe_navi$ MatchPattern=^\@elin_twi ChannelName=#Navi
2: Drop: MatchPattern=^.{,3}$
3: Drop: MatchPattern=(^(.)(\2)+$|^(.)(?!\4)(.)(\4\5)+$|(ぺろ|ほむ){2,})
> 前6番に加えて"あああ"などの同1文字のみの価値のないTweetを表示しない
4: Drop: MatchPattern=^(.+?) RT \@[0-9a-zA-Z_]+: \1
5: Drop: MatchPattern=#(4ji)(?![^ ])
> 完全な"#4ji"を含む価値のないTweetを表示しない
6: Drop: MatchPattern=http:\/\/shindanmaker\.com\/[0-9]+
7: Drop: MatchPattern=(#nico[a-z_]+|http:\/\/nico\.ms\/[a-z]{2}?[0-9]+.*?#(sm|im|so)[0-9]+)
> 糞動画に関わる価値のないTweetを表示しない、糞生は除く
8: Drop: MatchPattern=^The (.+?) Daily is out!
9: Redirect: MatchPattern=(\( #[0-9a-zA-Z_]+ live at http:\/\/ustre\.am\/[0-9a-zA-Z_]+\)|#stickamjp|http:\/\/nico\.ms\/lv[0-9]+#-[0-9]+:[0-9]+:[0-9]+) ChannelName=#Grep(FF)
> Ustream、Stickam、糞生などの連投になりがちなTweetは専用のチャンネルへ流す、他チャンネルへは表示させない

[HR]
20 日18時 追記

完全なnoob対応
0: Redirect:[DISABLED] MatchPattern=\@elin_twi ChannelName=#Replies
1: Redirect: UserMatchPattern=^mikomoe_navi$ MatchPattern=^\@elin_twi ChannelName=#Navi
2: Drop:[DISABLED] MatchPattern=^.{,3}$
> 正しく動かない?別の方法を検討中
3: Drop: MatchPattern=(^(.)(\2)+$|^(.)(?!\4)(.)(\4\5)+$|(ぺろ|ほむ){2,})
4: Drop: MatchPattern=^(.+?) RT \@[0-9a-zA-Z_]+: \1
5: Drop: MatchPattern=(#(4ji)(?![^ ])|^まいんちゃんと$)
> 指定ハッシュを含む、もしくは定時系の価値のないTweetを表示しない
6: Drop: MatchPattern=http:\/\/shindanmaker\.com\/[0-9]+
7: Drop: MatchPattern=(#nico[a-z_]+|http:\/\/nico\.ms\/[a-z]{2}?[0-9]+.*?#(sm|im|so)[0-9]+)
8: Drop: MatchPattern=^The (.+?) Daily is out!
9: Redirect: MatchPattern=(\( #[0-9a-zA-Z_]+ live at http:\/\/ustre\.am\/[0-9a-zA-Z_]+\)|#stickamjp|http:\/\/nico\.ms\/lv[0-9]+#-[0-9]+:[0-9]+:[0-9]+) ChannelName=#Grep(FF)
10: RewriteContent: MessageType=PRIVMSG MatchPattern=[\x09\x20]*\[(もばつい)\]$
11: Drop: MatchPattern=(^|RT \@[0-9a-zA-Z_]+: )【.*?(RT|リツイート|速報|緊急|拡散|希望|推奨|募集|急募).*?】(?(1)|$)
> 前方か後方、もしくはRT形式に続く【】に括られた指定文字列を含む価値のないTweetを表示しない
12: Drop: MatchPattern=((お(か|つ|は|や))あり|阻止 RT \@[0-9a-zA-Z_]+: .+?)
> まるで意味のわからないTweetを表示しない

[HR]
26日1時 追記

バグ修正と1点追加
0: Redirect:[DISABLED] MatchPattern=\@elin_twi ChannelName=#Replies
1: Redirect: UserMatchPattern=^mikomoe_navi$ MatchPattern=^\@elin_twi ChannelName=#Navi
2: Drop:[DISABLED] MatchPattern=^.{,3}$
3: Drop: MatchPattern=(^(.)(\2)+$|^(.)(?!\4)(.)(\4\5)+$|(ぺろ|ほむ){2,})
4: Drop: MatchPattern=^(.+?) RT \@[0-9a-zA-Z_]+: \1
5: Drop: MatchPattern=(#(4ji|qanow)(?![^ ])|^まいんちゃんと$)
> 対象ハッシュタグに#qanowを追加
6: Drop: MatchPattern=http:\/\/shindanmaker\.com\/[0-9]+
7: Drop: MatchPattern=(#nico[a-z_]+|http:\/\/nico\.ms\/[a-z]{2}?[0-9]+.*?#(sm|im|so)[0-9]+)
8: Drop: MatchPattern=^The (.+?) Daily is out!
9: Redirect: MatchPattern=(\( #[0-9a-zA-Z_]+ live at http:\/\/ustre\.am\/[0-9a-zA-Z_]+\)|#stickamjp|http:\/\/nico\.ms\/lv[0-9]+#-([0-9]+:)?[0-9]+:[0-9]+) ChannelName=#Grep(FF)
> 正規表現のミスを修正
10: RewriteContent: MessageType=PRIVMSG MatchPattern=[\x09\x20]*\[(もばつい)\]$
11: Drop: MatchPattern=(^|RT \@[0-9a-zA-Z_]+: )【.*?(RT|リツイート|速報|緊急|拡散|希望|推奨|募集|急募).*?】(?(1)|$)
12: Drop: MatchPattern=((お(か|つ|は|や))あり|阻止 RT \@[0-9a-zA-Z_]+: .+?)
add comment ( 2005 views )   |  permalink
pfSense 2.xの一番最初 
Friday, April 15, 2011, 03:47 AM - OS, Misc
Posted by Administrator
pfSense 2.x(pfSense-2.0-RC1-amd64-20110226-1807.iso.gz)を導入する際に発生した問題のまとめ

pfSense は大まかに分類して
・LiveCD
・nanobsd-image
・memstick-image
の3種類のイメージが配布されており、LiveCDを除く2種はddによる直書きで使用できる
またLiveCDとmemstick-imageは一般的なインストーライメージで、nanobsd-imageはdd直書き即使えるというインストール済みのイメージとなる
だがこれはいわゆる組み込み用で、出力がシリアルポートへ全て流れる
画面出力が
BTX loader 1.00 BTX version 1.02
以降、何も表示されないという現象に遭遇する、シリアルポートを持っていないM/Bなら詰みだ
これをどうにかするならKernelのリコンパイルを必要とする、らしい

シリアルポートがないならLiveCDかmemstick-imageを使いインストールする事になるが、インストール先がUSB-FlashやUSB-CFの場合、起動途中で止まる事がある
(書いてる途中、検証しようとしたがML115G1では再現しない?絶対ではないようだ)
"マウントするディスクを指定しろ"みたいなメッセージが出力され入力待ちになる(と聞いている)のだが、M2A-VMはここでKernel Panicとなり詰む
これ(入力待ち)は起動メニューで3番の"with USB"を選択する事で回避できる

これらを回避して立ち上がってしまえば特に困る事はない
NAT Outboundを設定してRuleでLAN -> WANを全部通せば普通にインターネットに繋がる

pfSenseは異常な程丁寧に英語ではあるが各項目に説明が書いてあるので特筆することはない
add comment ( 2311 views )   |  permalink
最近の俺 
Thursday, April 14, 2011, 06:03 AM - OS, OS / Linux, Misc
Posted by Administrator
3月末から今日までの動き、とそのまとめ

RHEL5.6/6がリリースされて随分経つが、クローンのCentOSは同バージョンがリリースされる気配がない
実際5.4(か、5.3)当時からコミュニティ内での揉め事がいくつかニュースになっていたりもする
そんなこんなで多少雲行きも怪しくなってきたので、RHELのsrpmを自前で全てmakeしてyum Repositoryを作る事にした
これでクローンディストリビューションに頼る事はなくなるし、単純な話RHELの方がcoolだ

ところがsrpmを全てmakeするには依存問題がある、上から順番にmakeしても通らない
make errorが出なくなるまでsrpm make -> installを繰り返し続けるのも手だが、頭の良い方法とはお世辞にも言えないし、時間も食う、そしてシステムが肥大化してしまうなどの問題を抱える事になる
なのでrpm makeをしつつ依存関係が出た場合は対象をinstallして再実行という方法を採る

だが、x86_64 なシステム上での/libの存在、これが欠けたとしても動くのかという疑問
今更i386やi686のyum Repositoryを作ろうとは思わないが、全く無いというのは困るのではないか?
と、なるとi686なrpmも作る必要はあるが、そもそもこれが依存関係のエラーを吐かない、そしてmakeは当然コケる
必要そうなi686のrpmをインストールすると状況が変化したりと問題に拍車を掛けるが、最終的にはmakeできない
仮にmakeできたとしても依存関係のエラーメッセージが潰れている以上、総当たりしかなくなるので詰みだ
大体x86_64環境下でi686をmakeするよりもi686環境下で行う方が正確で労力も少ない

しかしi686なmakeサーバを用意するには実機不足、となれば当然VMの出番と言いたいところだが、以前稼働していたVMware ESXiなサーバはI/Oが遅いとか様々な問題を抱えているのでKVMへ移行しようとして放置中だ
KVMを稼働させる上でKVMのみな小さいディストリビューションがほしいというのが本心で、単純にそれが見付かっていなかったので何もしていなかったというのが正しい
実際必要に駆られているので、真面目に探してみるとoVirtという面白そうなものを見付けた
情報こそ少ないが、これはどうもVMware ESXに対するVMware Infrastructure、oVirt Nodeに対するoVirt Serverというソフトウェアのようで、1cdなisoも存在している事から恐らく希望に合致するであろうものであると予測できる

ところがoVirtには相当な癖があり、その内容は省略 (その内容)
またNodeをPXEでロードさせる、DNSに登録されている(正引き逆引きできる)必要がある、なのでDHCPがどうのこうのと既存のネットワークで試験するには余りに手間が多すぎるし、危険も伴う

こうなると専用のセグメントを用意する必要があるが、そんな簡単には作れないし、それを運用可能なシステムや機器の準備がない
そうして必要に駆られてネットワークの大幅変更、相当前から実用したいなあと思っていたpfSenseを導入するなどし、微妙に打ちにくい172.16.から172.22.へアドレスを全変更
セグメント増加によってpfSenseに任せた方が効率がいいdhcpd, named, ntpdなどを再設定し、一応は元に戻った

というところで今に至る
add comment ( 1995 views )   |  permalink
rhel6 usually daemon manage (chkconfig) 
Friday, April 1, 2011, 03:57 AM - OS / Linux
Posted by Administrator
chkconfig abrtd off
chkconfig acpid off
chkconfig atd off
chkconfig auditd off
chkconfig cgconfig off
chkconfig cgred off
#chkconfig cpuspeed off
#chkconfig crond off
#chkconfig haldaemon off
chkconfig ip6tables off
chkconfig iptables off
#chkconfig irqbalance off
#chkconfig kdump off
chkconfig lvm2-monitor off
#chkconfig mdmonitor off
#chkconfig messagebus off
chkconfig netconsole off
chkconfig netfs off
#chkconfig network off
chkconfig postfix off
chkconfig psacct off
chkconfig rdisc off
chkconfig restorecond off
chkconfig rhnsd off
#chkconfig rsyslog off
chkconfig saslauthd off
#chkconfig smartd off
#chkconfig sshd off
#chkconfig sysstat off
#chkconfig udev-post off

add comment ( 2047 views )   |  permalink

<<First <Back | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Next> Last>>