Browse Month: November 2006

Firefox のススメ

会社に入社した女性の人に、IE6 が使いにくいということなので、Firefox を進めてみました。
教えた人はコンピュータにはまったく詳しくない人でしたが、次のような感じで教えてみました。

1. もじら組から、Firefox 日本語版をダウンロードして、通常インストール

2. インストール後、Firefox を実行して、タブブラウジングを体験してもう
※新規タブを開くときは、Ctrl + T か、メニューから選択できることもあわせて伝授
※Firefox 2.0 では、デフォルトでシングルウィンドウモードになっているので驚いた

3. ブックマークを、IE からインポートしたが、Bookmark Tool Folder には入っていなかったので、ブックマークの整理方法を教える

4. そして、次の拡張をインストールしてもらう
・All-in-one Gestures
・All-in-one Sidebar
・Tab Mix Plus

5. Firefox を再起動後、Tab Mix Plus の設定変更をして Tab Mix Plus のセッションマネージャーを使うように変更(この方が、Firefox がクラッシュしたときでも復元してくれるので便利)

6. All-in-one Gestures で、マウスの右クリックで「新規タブを開く」、「タブを閉じる」ジェスチャーを教える

とこんな感じで、Firefox を進めてみましたが、本人からはかなりいいとのことだったのでよかったです。

みなさんも、近くに初心者に Firefox を進めてみましょう!

epsファイルをbmpに変換する方法

今日、会社の同僚から教えてもらった技。 

ある画像が eps ファイルになっていて、それを編集したいと思ったところ、ImageMagick に convert という便利なコマンドがあって、bmp (ビットマップ)に変換できる。

コマンドは、次のような感じで使います。

$ convert filename.eps filename.bmp

これでビットマップに簡単に変換することができます。

これは、かなり便利な技です。

Firefox 2.0 の検索プラグイン

Firefox 2.0 がリリースされてから使っていますが、最近右上の検索バーに追加した検索エンジンの表示順序を切り替えられることを初めて知りました。Firefox 1.5 のときは、別に拡張をインストールして表示順序を変更していましたが、これは便利な機能ですね。僕のFirefox 2.0 は、今こんな感じです。

Firefox 2.0 は、細かいところにしっかりと手が入っているみたいなので、また新しい発見があったらエントリしたいと思います。

mailman のインストールメモ(続き)

先日の mailman のインストールメモの続きで、mailman のエラーログ(logs/error と logs/smtp-failure)を監視するために、logwatch にエラーの内容を出力するようにしてみた。

1. /etc/log.d/conf/services に設定ファイルにあたる mailman というファイルを作る。


Title = "mailman"

LogFile = mailman

2. /etc/log.d/scripts/services に動作スクリプト mailman というファイルを作る。


#!/usr/bin/perl

while (<>) {

    print "  $_";

}

※今回は、見ての通り入力をそのまま表示する動作スクリプトです。

3. このままだと、LogFile = “mailman” という指定が logwatch には理解できないので、ログファイルの設定ファイルを /etc/log.d/conf/logfiles に mailman というファイルを作る。


LogFile = mailman-*

Archive = /dev/null

4. 最後に /var/log に mailman-error と mailman-smtp-failure という mailman logs/error と logs/smtp-failure へのシンボリックリンクを作成する。

動作テストは、sudo /usr/sbin/logwatch -service mailman -print として、mailman のログ内容が出力されれば OK!もし、mailman のログに昨日の内容が出力されていないと、何も出力されないので注意する。これは、logwatch の range 設定が yesterday となっているためです。(ここがすこしはまった。。。)


opt/mailman2/logs/bounce 

/opt/mailman2/logs/digest 

/opt/mailman2/logs/error 

/opt/mailman2/logs/post 

/opt/mailman2/logs/smtp 

/opt/mailman2/logs/smtp-failure 

/opt/mailman2/logs/qrunner 

/opt/mailman2/logs/locks 

/opt/mailman2/logs/fromusenet 

/opt/mailman2/logs/subscribe 

/opt/mailman2/logs/vette {

daily

        missingok

        sharedscripts

        postrotate

                /opt/mailman2/bin/mailmanctl reopen >/dev/null 2>&1 || true

        endscript

}

※参考資料

いますぐ実践!Linux システム管理 Vol. 075

mailman のインストールメモと簡易スクリプトの紹介

会社のサーバにインストールしてあった mailman の調子が悪いということで、再インストールをしました。

作業はけっこう難航してしまって朝5時までかかってしまったが、今後のためにもインストールメモとして残しておきます。

1. mailaman のダウンロード(現時点では最新版 2.1.9)する

2. ダウンロードしたファイルを展開してから、次のコマンドを実行する

# ./configure –prefix=[インストール先] –with-mail-gid=nobody –with-cgi-gid=apache

※ポイントは、–with-mail-gid をつけるところです。これをつけないと、mailman を実行したときに group miss match といエラーがたくさんでます

# make && make install

3. 管理用 ML mailman を作る(mailman は、基本的に bin ディレクトリにあるコマンドで管理可能となっているので、いくつか簡単なシェルスクリプトを作ってみましたので、あとで紹介します)

# bin/newlist mailman

※管理者のメールアドレスと管理用の Web 画面にログインするためのパスワードを入力します

4. mailman ML にデフォルトの設定を適用する

# bin/config_list -i data/sitelist.cfg

※このデフォルトの設定も、他の ML を作るときにはカスタマイズしました

5. mailman ML にメンバを追加する

# bin/add_members -r –

※標準入力にメンバのメールアドレスを入力してから、Ctrl – D を押す

6. mailman ML の Web 画面が使えるように httpd の設定を追加する


ScriptAlias     /mailman/       /[mailman のインストール先]



  AllowOverride None

  Options None

  Order allow,deny

  Allow from all



※必要に応じて、pipermail の設定もしますが、僕の場合は公開保存アーカイブを作ってないので不要でした

あとは、apache を再起動して、mailman を起動するだけです。mailman の起動スクリプトは /etc/init.d に次のようなスクリプトをもってきて入れておきました。


PYTHON=/usr/bin/python

MAILMANHOME=[mailman のインストール先]

MAILMANCTL=$MAILMANHOME/bin/mailmanctl



case "$1" in

'start')

    #rm -f $MAILMANHOME/locks/*

    $PYTHON $MAILMANCTL -s -q start

    ;;



'stop')

    $PYTHON $MAILMANCTL -q stop

    ;;



'restart')

    $PYTHON $MAILMANCTL -q restart

    ;;



esac

exit 0

それでは、このときに作った超手抜きな mailman のスクリプトを紹介します。この後、紹介するスクリプトを使う人は MAILMAN_DIR に mailman のインストール先を追加してください。

まずは、ML の作成スクリプトから、ML の作成は newlist するだけでできるのがそのあと ML の設定も一緒に行うために簡易スクリプトを作ってみました。


#!/bin/sh

MAILMAN_DIR=



sudo $MAILMAN_DIR/bin/newlist $1

sudo $MAILMAN_DIR/bin/config_list -i data/sitelist.cfg $1

次に ML メンバのメールアドレスのリストを取得するスクリプトです。


#!/bin/sh

MAILMAN_DIR=



sudo $MAILMAN_DIR/bin/list_members $1 > $1

次に ML メンバの追加スクリプトです。ML 名と同じ名前のファイルにメンバのメールアドレスが入っていることを前提としてあります。


#!/bin/sh

MAILMAN_DIR=



sudo $MAILMAN_DIR/bin/add_members -r $1 $1

次に ML を削除するスクリプトです。念のためアーカイブをまとめて消すオプションをつけています。


#!/bin/sh

MAILMAN_DIR=



sudo $MAILMAN_DIR/bin/rmlist -a $1

ML 移行の時に便利な現在の ML の post_id を取得するスクリプトです。


#!/bin/sh

MAILMAN_DIR=



sudo $MAILMAN_DIR/bin/withlist -l -r showseq $1

※このスクリプトを使うには、showseq.py というプログラムを bin ディレクトリにコピーしておく必要があります。

showseq.py は、次のプログラムです。


#!/usr/bin/python2.2

#

# usage:

#   withlist -l -r showseq listname



import sys



def showseq(mlist):

    print 'post_id = %s' % mlist.post_id

そして、ML の post_id を再設定するスクリプトです。post_id は、withlist コマンドを使って再設定することができるのですが、すこし操作が面倒だったのでスクリプトを作成しました。第一引数は ML 名、第二引数は再設定する post_id です。


#!/bin/sh

MAILMAN_DIR=



sudo $MAILMAN_DIR/bin/withlist -l -r changeseq $1 $2

※このスクリプトを使うには、bin ディレクトリに changeseq.py というプログラムを入れておく必要があります。

changesq.py は、次のようなプログラムです。


#

# usage:

#   withlist -l -r changeseq listname newseq



import sys



def changeseq(mlist, arg):

    try:

        newseq = int(arg)

    except:

        print 'The new sequence number MUST BE INTEGER.'

        sys.exit(1)



    if (newseq < = mlist.post_id):

        print 'The new sequence number (%d) MUST BE GREATER than the current pos

t_id (%d).' % (newseq, mlist.post_id)

        sys.exit(0)



    print 'change sequence number(%d -> %d).' % (mlist.post_id, newseq)

    mlist.post_id = newseq

    print 'Saving list'

    mlist.Save()

最後に ML を削除するスクリプトです。


#!/bin/sh

MAILMAN_DIR=



sudo $MAILMAN_DIR/bin/rmlist -a $1

後は、ML をしっかり管理できるように logrotate を使ってログファイルのローテションする設定と logwatch を使ってログファイルの監視を設定しました。

この設定については今日行ってみたのですが、ちゃんと動いていることを確認した上でこのブログに書きたいと思います。

Firefox 2.0 で Livedoor Reader を追加する方法

Firefox 2.0 が登場したということで、すこし様子を見ていたのですが思い切ってバージョンアップしてみました。

案の定ほとんどの拡張がダメでしたが、新機能である Feed 機能に Livedoor Reader を追加するのを weboo さんに教えてもらいました。

詳細は、このページを参照してください。さきほどのページを参考にして追加した後、例えば del.icio.us hotlist を追加すると、次のような画面になります。

del.icio.us screenshot on Firefox 2.0

他にも Firefox 2.0 の新機能を試してみたいと思います。