unix: 2006年3月アーカイブ

この前ウノウでコードレビューをやったときに、screen のマルチユーザモードを使ったのでそのメモ。

お互いの技術力を高めようということでコードレビューをやることになったのですが、残念ながらウノウには(まだ)プロジェクターがありません。 そこで screen のマルチユーザモードを使用することにしました。 マルチユーザモードを使うと、自分が開いている screen にアタッチしてもらって、自分の端末の入出力を相手に見せることができます。

まずは screen に suid を立てる

chmod u+s /usr/bin/screen

screen を起動する

screen

端末からコマンドを入力して他のユーザからアクセスできるようにする (一連のコマンドの ":" の前には screen 用のキーストロークを入力すること)

:multiuser on

ユーザ hoge に読み込みのアクセス権限を与える

:aclchg hoge +r-wx "#?"

ユーザ hoge に自分(piyo)の screen にアタッチしてもらう

screen -r piyo/
* 複数の screen を起動していた場合は piyo/12345 のように pid の指定が必要。

後は vi なり less なりで実際にソースコードを見ながらコードレビューをします。 初めてやってみたんだけど、思った以上にうまくいきました。

コードレビューをするときは、やっぱり実際にコードを見ないとダメだし、 2, 3人なら大丈夫でも 4, 5人同じディスプレイを見るのは少し無理があります。 これだと全員別々のディスプレイで見ることができるし、 操作しているのは僕だけなので必ず同じ部分のソースを見ることになるので説明しやすかったです。

ちなみに vnc はインストールしてもらうのが面倒だったのでやってません。

僕はメールの振り分けは全てサーバ上の procmail で行っています。
サーバ上で振り分けをすれば、メールクライアントに依存しないので便利です。
メールクライアントの変更が簡単にできます。

以前は ML 毎にレシピを書いてたのだけど、かなり面倒くさいのでちゃんと汎用的に書いてみた。

参考にしたサイト
Procmail の紹介とレシピの書き方

できたのがコレ


# fml
:0
* ^X-ML-Name: \/.*$
.ml.$MATCH/

# mailman
:0
* ^List-Id:.*<\/[^.]*\..*>.*
{
ML=`echo -n $MATCH|sed 's/\..*>.*$//'`
:0
.ml.$ML/
}

# yahoo groups
:0
* ^Mailing-List: list \/.*@yahoogroups.jp
{
ML=`echo -n $MATCH|sed 's/@yahoogroups.jp.*//'`
:0
.ml.$ML/
}

アメリカに行くときに ML はほとんど退会してしまって、今はほとんど入ってないのでこれだけですんじゃった。
あー、すっきり。

X-ML-Name とかは小文字になってるやつがあるので、これじゃ本当はダメだけど、また後で直そう。
でも、procmail の正規表現で大文字小文字を区別しない方法が分からん。

このアーカイブについて

このページには、2006年3月以降に書かれたブログ記事のうちunixカテゴリに属しているものが含まれています。

前のアーカイブはunix: 2006年2月です。

次のアーカイブはunix: 2006年6月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。