メランジ雑記帳

2010年6月7日

fedora 13とpostgres 8.4.4.1

カテゴリー: DB, postgres — admin @ 4:00 PM

(2010-06-08 タイトルの誤りを訂正 8.4.1.1 ==> 8.4.4.1)

fedora 13にしたマシーンではpostgresが動作しなくなっていた。selinuxがらみで、コンテクストが変わったのか?
そこで、

yum remove postgresql-server
yum install postgresql-server

とし、どこかのホームページで見た情報では、initdbは自動的に行われる,とのことなので、
すぐさま/etc/postgresql startでスタートした。
createuser -U postgres ユーザ名でxxxというユーザを作成する。
適当なところで、postgresユーザのパスワードも修正しておくこと。

createdb db名でdbを作成し、pg_restore dumpファイル名でバックアップから回復すること。

2010年6月5日

clamav + spamassassin + sendmailの設定

カテゴリー: 未分類 — admin @ 8:08 AM

以下の記録を作成するにあたって、

http://centossrv.com/sendmail-clamav-spamassassin.shtmlおよびhttp://www.opensource.apple.com/source/SpamAssassin/SpamAssassin-124.5.1/clamav/clamav-0.88.2/clamav-milter/INSTALLを参考にしました。

以下のようにclamavをインストールする。先頭のアイコンから見ると、硬い貝殻でばい菌マンのようなウイルスから貝を守っている絵になっている。clamはハマグリのことで、AVはanti-virusの意味だろう。
UNIX系で発達したオープンソースのウイルス撃退ソフトウエアで、MACユーザのあいだでは有名なのだそうだ。一応Windows版もあるが、UNIX版と比べると?かな。
とくにWindows 2003では利用できなかった。(2010-06-07確認)

  1. yum install clamav   <— クライアント部分+単体
  2. yum install clamav-scanner <– clamd のための設定ファイルなど。
    これで、clamav-serverも依存関係で入る。
    clamav-serverでは、clamdが入る。
  3. yum install clamav-milter <— メールプログラムから呼ばれるmail filter
    これはさらにclamdというデーモンと通信によってメールのスキャンを行う。

    つまり
    clamd <—-> clamav-milter <—-> sendmail
    というつながりになる。これは、clamavの0.95あたりからそうなったらしい。

  4. yum install clamav-update <– ウイルスデータベースの自動更新
    なにも設定しなければ、3時間おきに行われる。またログのローテートも行う。

普通に使うには、
$ clamscan
とする。
するとユーザのホームディレクトリ以下を走査する。

LibClamAV Warning: ***********************************************************
LibClamAV Warning: *** This version of the ClamAV engine is outdated. ***
LibClamAV Warning: *** DON'T PANIC! Read http://www.clamav.net/support/faq ***
LibClamAV Warning: ***********************************************************
/home/bob/.bash_profile: OK
/home/bob/.bashrc: OK
/home/bob/.bash_history: OK
/home/bob/.emacs: OK
/home/bob/.bash_logout: OK

———– SCAN SUMMARY ———–
Known viruses: 798833
Engine version: 0.95.3
Scanned directories: 1
Scanned files: 5
Infected files: 0
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 2.235 sec (0 m 2 s)

ディレクトリやファイルを指定することもできる。

$ clamscan jars
LibClamAV Warning: ***********************************************************
LibClamAV Warning: *** This version of the ClamAV engine is outdated. ***
LibClamAV Warning: *** DON'T PANIC! Read http://www.clamav.net/support/faq ***
LibClamAV Warning: ***********************************************************
jars/jvx.jar: OK
jars/javaview.jar: OK

———– SCAN SUMMARY ———–
Known viruses: 798833
Engine version: 0.95.3
Scanned directories: 1
Scanned files: 2
Infected files: 0
Data scanned: 3.37 MB
Data read: 1.32 MB (ratio 2.55:1)
Time: 3.544 sec (0 m 3 s)

今回はこのclamavとメールプログラムを組み合わせて使用してみた。このclamscanのプログラムだけでもいいようではあるが、ウイルス定義のファイルが大きいため、毎回このプログラムをメール1つに対して起動すると、かなり非効率になってしまうとのことである。そこで、初期化のときにだけウイルス定義を読み(あとは必要なときにも)、ウイルスのスキャンをするサーバプログラムを用意し、これをクライアントから利用するという設計にしたものが用意されている。それが、サーバ部分はclamdというデーモンプログラムで、クライアント部分はsendmail系特有のメールフィルターインタフェースを備えた、clamav-milterという仲介プログラム(milterインターフェースとclamavインタフェースの仲介)である。

ところで、マニュアルを読まないでいきなり使用しているので、いろいろなホームページで参照されている/etc/clamd.confがない。
そこで、
yum provides */clamd.conf
で探すと、

読み込んだプラグイン:dellsysidplugin2, refresh-packagekit
clamav-server-0.95.2-5.fc12.i686 : Clam Antivirus scanner server
リポジトリー : fedora
Matched from:
ファイル名 : /usr/share/doc/clamav-server-0.95.2/clamd.conf


clamav-server-0.95.3-1200.fc12.i686 : Clam Antivirus scanner server
リポジトリー : installed
Matched from:
ファイル名 : /usr/share/doc/clamav-server-0.95.3/clamd.conf

これは、インストールされているものであるので、これをコピーすればいいようだ。

cp -p /usr/share/doc/clamav-server-0.95.3/clamd.conf /etc/

また、/etc/mail/clamav-milter.confが導入されるのだが、これをデフォルトの位置に移す。/etc/clamav-milter.confがそれである。

今回は、デバッグが楽なように、unix domain socketではなく、普通のソケットにした。

/etc/clamav-milter.conf
以下のようにMilterSocketのコメントをはずす。

# Default: no default
# MilterSocket /var/run/clamav-milter/clamav-milter.socket
MilterSocket inet:7357
ClamdSocket tcp:localhost:3310

/etc/clamd.confでは

TCPSocket 3310
User clamav

とする。また両方のファイルにあるExampleという行はコメントにしておくこと。(そのほかの設定ファイルも同じ流儀になっていた)。

さて、sendmail側の設定であるが、sendmail.mc(macro configurationの意味)に以下のような行を入れる。
ここではspamassasin(メールがスパムである場合は、ヘッダーのsubjectに[SPAM]を挿入するフィルター)と共存させたいので両方の定義を書いている。

dnl # melange 2010-06-04 CLAMAVでウイルスチェック
INPUT_MAIL_FILTER(`clmilter',`S=inet:7357@localhost, F=, T=S:4m;R:4m')dnl
INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass-milter/spamass-milter.sock,, F=, T=C:15m;S:4m;R:4m;E:10m')dnl
FEATURE(`blacklist_recipients')dnl
define(`confINPUT_MAIL_FILTERS', `spamassassin,clmilter')dnl

のようにした。最後のdefineでspamassassinとclmilterの両方のフィルターを使うことを指示している。
ところで、このdnlであるが、m4はマクロの定義などを空行で置き換えてしまうというので、それをこのdnl(delete through new line)というm4コマンドで空行の挿入をやめさせますdnlからnew lineまでが削除されますので、コメントとしても使えます。コメントとしての文章を挿入する場合には、

dnl # これはコメントの例

を使い、
コマンドをコメント化する場合は

dnl コマンド

とするようです。

あとは自動でウイルスDBを更新する部分であるが、

/etc/freshclam.confを以下のように編集する。
以下のExampleの行をコメントにする。

# Comment or remove the line below.
# Example <-- コメントにした

また、/etc/sysconfig/freshclamも編集しておくこと。

### REMOVE ME: network access without prior activation
#FRESHCLAM_DELAY=disabled-warn # REMOVE ME <-- コメントにした。

ウイルスデータベースの更新(freshclam)の定例化(cron)や、そのログのローテーションは勝手にインストーラがcronテーブルに設定をしているのでそのままでよさそうである。

# clamd
# clamav-milter

でメール関係のウイルスキャンサービス側を起動する。

#/etc/init.d/sendmail restart
でこれを利用する体制が整う。

sendmail.mcに
define(`confLOG_LEVEL’, `15′)dnl
入れて詳細なログを出力させると、一連の流れが/var/log/maillogに出力される。

Jun 5 07:01:10 aMachine sendmail[10876]: NOQUEUE: connect from [99.99.99.99]
Jun 5 07:01:10 aMachine sendmail[10876]: AUTH: available mech=CRAM-MD5 ANONYMOUS DIGEST-MD5 LOGIN, allowed mech=EXTERNAL GSSAPI KERBEROS_V4 DIGEST-MD5 CRAM-MD5
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: Milter (spamassassin): init success to negotiate
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: Milter (clmilter): init success to negotiate
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: Milter: connect to filters
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=connect, continue
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: milter=clmilter, action=connect, continue
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: --- 220 aMachine.aDomain.jp ESMTP Sendmail 8.14.3/8.14.3; Sat, 5 Jun 2010 07:01:10 +0900
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: <-- HELO familia.itambenet.local
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=helo, continue
Jun 5 07:01:10 aMachine sendmail[10876]: o54M1AIj010876: --- 250 aMachine.aDomain.jp Hello [99.99.99.99], pleased to meet you
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: <-- MAIL FROM:
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: Milter: sender:
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=mail, continue
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: milter=clmilter, action=mail, continue
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: --- 250 2.1.0 ... Sender ok
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: <-- RCPT TO:
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: Milter: rcpts:
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=rcpt, continue
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: milter=clmilter, action=rcpt, continue
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: --- 250 2.1.5 ... Recipient ok
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: <-- DATA
Jun 5 07:01:11 aMachine sendmail[10876]: o54M1AIj010876: --- 354 Enter mail, end with "." on a line by itself
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: from=, size=5551, class=0, nrcpts=1, msgid=<001c01cb0418$8e3204c0$aa960e40$@org>, proto=S\
MTP, daemon=MTA, relay=[99.99.99.99]
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=header, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=eoh, continue
Jun 5 07:01:12 aMachine sendmail[10876]: o54M1AIj010876: milter=spamassassin, action=body, continue

…中略

un 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: Milter add: header: X-Spam-Level: *********************
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: Milter add: header: X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on\n\taMachine.aDomain.jp
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: Milter change: header Subject: from The free XXXX trial everybody is taking about to [SPAM] The free XXXX trial everybod\
y \
is taking about
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: Milter message: body replaced
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: milter=clmilter, action=header, continue
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: milter=clmilter, action=header, continue
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: milter=clmilter, action=header, continue
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj0

Jun 5 07:01:13 aMachine spamd[8888]: prefork: child states: II
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: Milter accept: message
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIj010876: — 250 2.0.0 o54M1AIj010876 Message accepted for delivery
Jun 5 07:01:13 aMachine sendmail[10882]: o54M1AIj010876: to=, delay=00:00:02, xdelay=00:00:00, mailer=local, pri=37795, dsn=2.0.0, stat=Sent
Jun 5 07:01:13 aMachine sendmail[10882]: o54M1AIj010876: done; delay=00:00:02, ntries=1
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIk010876: <– QUIT
Jun 5 07:01:13 aMachine sendmail[10876]: o54M1AIk010876: — 221 2.0.0 aMachine.aDomain.jp closing connection
…中略

以下がウイルスを見つけた場合のログの行である!!その前の行には誰からとかの情報が記載されている。

Jun 4 23:16:44 redhat sendmail[2663]: o54EFqYH002663: milter=clmilter, quarantine=quarantined by clamav-milter

そして、ウイルスが見つかると、/var/log/clamd.server.log(<–ここにclamdのログを出力するようにした)

Fri Jun 4 21:23:47 2010 -> stream(127.0.0.1@1867): Email.Trojan-114 FOUND

のように見つけてくれる。

その実体は、
mailq -qQ
でわかる。(-qでQueueの種類をQUARANTINEに指定している)

#  mailq -qQ

/var/spool/mqueue (11 requests)
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
o54B8AUq031924    31483 Fri Jun  4 20:08 <charlie@brown.com>
     QUARANTINE: quarantined by clamav-milter
                                         <alice@domain.org>

これは、からに送られたメールにウイルスが潜在していることを示す。
その内容は/var/spool/mqueue/o54B8AUq031924にあり、Microsoftのメールプログラムを修正するパッチを当てるべしという内容で、善意を装っているが、引っかかってはいけない。隔離されたので、パソコンなどでpop3で受信できない(リストにない)ので安心である。

英文マニュアルにあるように、
useradd -s /sbin/nologin clamav -m -d /home/clamav -k /dev/null
でclamavユーザを作成するとあったのだが、最近は自動的に作成するようである

-sはshellでこの場合はloginできないようにする。
-m -d /home/clamavはホームディレクトリを作成することを指示
-kはskeltonファイルのありか(/etc/skelなど)を指示するのだが、今回はなにもコピーしない。

2010年6月3日

/etc/aliasesのselinux contextが変更されていたので…

カテゴリー: selinux — admin @ 12:22 PM

# ls -lZ aliases
-rw-r–r–. root root unconfined_u:object_r:etc_t:s0 aliases

であった。

これだと、

SELinux is preventing /usr/sbin/sendmail.sendmail "write" access to
/etc/aliases.

SELinux denied access requested by newaliases. /etc/aliases may be a mislabeled.
/etc/aliases default SELinux type is etc_aliases_t, but its current type is
etc_t. Changing this file back to the default type, may fix your problem.

File contexts can be assigned to a file in the following ways.

* Files created in a directory receive the file context of the parent
directory by default.
* The SELinux policy might override the default label inherited from the
parent directory by specifying a process running in context A which creates
a file in a directory labeled B will instead create the file with label C.
An example of this would be the dhcp client running with the dhclient_t type
and creating a file in the directory /etc. This file would normally receive
the etc_t type due to parental inheritance but instead the file is labeled
with the net_conf_t type because the SELinux policy specifies this.
* Users can change the file context on a file using tools such as chcon, or
restorecon.

This file could have been mislabeled either by user error, or if an normally
confined application was run under the wrong domain.

However, this might also indicate a bug in SELinux because the file should not
have been labeled with this type.

If you believe this is a bug, please file a bug report against this package.

You can restore the default system context to this file by executing the
restorecon command. restorecon '/etc/aliases', if this file is a directory, you
can recursively restore using restorecon -R '/etc/aliases'.

/sbin/restorecon '/etc/aliases'

node=redhat.ocn2.melange.co.jp type=AVC msg=audit(1275532056.576:1251096): avc: denied { write } for pid=26507 comm="newaliases" name="aliases" dev=dm-2 ino=22750792 scontext=unconfined_u:system_r:sendmail_t:s0 tcontext=unconfined_u:object_r:etc_t:s0 tclass=file

node=redhat.ocn2.melange.co.jp type=SYSCALL msg=audit(1275532056.576:1251096): arch=40000003 syscall=5 success=yes exit=3 a0=111bbe8 a1=2 a2=0 a3=0 items=0 ppid=26502 pid=26507 auid=500 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=51 sgid=51 fsgid=51 tty=pts12 ses=2390 comm="newaliases" exe="/usr/sbin/sendmail.sendmail" subj=unconfined_u:system_r:sendmail_t:s0 key=(null)

のようなエラーになってしまう。
そこで

# chcon -t etc_aliases_t /etc/aliases

# ls -lZ /etc/aliases
-rw-r–r–. root root unconfined_u:object_r:etc_aliases_t:s0 aliases

で修正したが、これはバージョンアップ(11ー>12)した時に、コンテキスト属性を保存しないでバックアップしたのか?

restoreconでもよかったかもしれない。

spamassassinの設定がバージョンアップで変に?

カテゴリー: mail — admin @ 6:19 AM

sendmail.mcの

INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass-milter/spamass-milter.sock,, F=, T=C:15m;S:4m;R:4m;E:10m')

とあるべきところが、

INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass.sock,, F=, T=C:15m;S:4m;R:4m;E:10m')

になっていて、

sendmail を起動中: WARNING: Xspamassassin: local socket name /var/run/spamass.sock missing

というエラーを発生させていた。

2010年6月2日

EC2へvnc-serverをインストール

カテゴリー: EC2, vnc — admin @ 12:09 PM

yum install vnc-server

yum install xorg-x11*

yum install gnome*

yum install fonts-japanese*

として、

vncserver :1

でサーバを起動しておく。

~/.vnc/xstartupには、


#!/bin/sh

# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &
kinput2 &
exec gnome-session &

のような修正を施しておく。

以下がvinagre(vncのクライアント)の画面

ただし、セキュリティグループでのファイアウォールの設定でvncserverのポートをいくつか開けておくこと。
(これをすぐに反映するにはshorewallというコマンドを使うという人もいたが、パッケージにはなかったので、
リブートで反映させた)。

ゲームはオセロに登場するイアーゴ(Iago)をもじったゲーム(iagno)。オセロとルールはおなじである。

EC2へpostgresqlをインストール

カテゴリー: 未分類 — admin @ 12:01 PM

8.4というバージョンが弊社で利用しているものであるようなのだが、CentOS5.4(fedora8相当)のレポジトリでもそうであるのかを一応確認してみる。

# yum search postgres
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: centos.aol.com
* base: mirror.trouble-free.net
* extras: mirror.rackspace.com
* updates: hpc.arc.georgetown.edu
============================================== Matched: postgres ===============================================
qt-PostgreSQL.i386 : Qt の SQL クラス用 PostgreSQL ドライバ
bind-sdb.i386 : The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) server with database backends.
freeradius-postgresql.i386 : freeradius 用の postgresql バインド
freeradius2-postgresql.i386 : Postgresql support for freeradius
libdbi-dbd-pgsql.i386 : libdbiのPostgreSQLプラグイン
mod_auth_pgsql.i386 : Basic authentication for the Apache web server using a PostgreSQL database.
mono-data-postgresql.i386 : Postgresql database connectivity for Mono
pdns-backend-postgresql.i386 : PostgreSQL backend for pdns
perl-DBD-Pg.i386 : A PostgresSQL interface for perl
php-pdo.i386 : A database access abstraction module for PHP applications
php-pgsql.i386 : PHP 用の PostgreSQL データベースモジュール
postgresql.i386 : PostgreSQL のクライアントプログラムとライブラリ
postgresql-contrib.i386 : Contributed source and binaries distributed with PostgreSQL
postgresql-devel.i386 : PostgreSQL 開発ヘッダーファイルとライブラリ
postgresql-docs.i386 : Extra documentation for PostgreSQL
postgresql-jdbc.i386 : JDBC driver for PostgreSQL
postgresql-libs.i386 : Kerberos 5 が使用する共有ライブラリ
postgresql-odbc.i386 : PostgreSQL ODBC driver.
postgresql-pl.i386 : PostgreSQL 用の PL 手続き型言語です。
postgresql-python.i386 : Python コードが Postgre SQL DB にアクセスするための開発モジュール
postgresql-server.i386 : PostgreSQL サーバーの作成/実行に必要なプログラム
postgresql-tcl.i386 : A Tcl client library for PostgreSQL.
postgresql-test.i386 : PostgreSQL と共に配布されるテストセット
postgresql84.i386 : PostgreSQL client programs
postgresql84-contrib.i386 : Contributed modules distributed with PostgreSQL
postgresql84-devel.i386 : PostgreSQL development header files and libraries
postgresql84-docs.i386 : Extra documentation for PostgreSQL
postgresql84-libs.i386 : The shared libraries required for any PostgreSQL clients
postgresql84-plperl.i386 : The Perl procedural language for PostgreSQL
postgresql84-plpython.i386 : The Python procedural language for PostgreSQL
postgresql84-pltcl.i386 : The Tcl procedural language for PostgreSQL
postgresql84-python.i386 : Development module for Python code to access a PostgreSQL DB
postgresql84-server.i386 : The programs needed to create and run a PostgreSQL server
postgresql84-tcl.i386 : A Tcl client library for PostgreSQL
postgresql84-test.i386 : The test suite distributed with PostgreSQL
qt4-postgresql.i386 : PostgreSQL drivers for Qt's SQL classes
rhdb-utils.i386 : PostgreSQL - CentOS Edition 用のその他のユーティリティです。
rsyslog-pgsql.i386 : PostgresSQL support for rsyslog
unixODBC.i386 : Linux 用の完全な ODBC ドライバマネージャ

そこで、84がついたものをすべてインストールするため

yum install 'postgresql84*'

で一応はインストールできる。

Installed:
postgresql84.i386 0:8.4.4-1.el5_5.1 postgresql84-contrib.i386 0:8.4.4-1.el5_5.1
postgresql84-devel.i386 0:8.4.4-1.el5_5.1 postgresql84-docs.i386 0:8.4.4-1.el5_5.1
postgresql84-libs.i386 0:8.4.4-1.el5_5.1 postgresql84-plperl.i386 0:8.4.4-1.el5_5.1
postgresql84-plpython.i386 0:8.4.4-1.el5_5.1 postgresql84-pltcl.i386 0:8.4.4-1.el5_5.1
postgresql84-python.i386 0:8.4.4-1.el5_5.1 postgresql84-server.i386 0:8.4.4-1.el5_5.1
postgresql84-tcl.i386 0:8.4.4-1.el5_5.1 postgresql84-test.i386 0:8.4.4-1.el5_5.1

となった。

2010年6月1日

AmazonのEC2を使ってみた

カテゴリー: EC2 — admin @ 6:35 PM

仕事の関係で、AmazonのEC2を利用せざるを得なくなった。本日お昼ご飯のあとで日系BPパソコンベストムックの「みてわかるクラウドマガジン」を見ながら登録したり、S3にイメージをセーブしたりとかしてみた。仮想マシーンはCentOS5.4にした。一応動作している。
個人情報が入っているかもしれないので、霧のフィルターを施した。

本当は時間があれば、Eucalyptus(EC2クローン)を複数のマシーンにインストールしてAmazonごっこをしたいのであるが、今回は面倒なのでパスする。

2010年5月31日

fedora13にした機械でKVMでubuntuを動かす

カテゴリー: LINUX, fedora, ubuntu, 仮想化 — admin @ 8:14 PM

最近この種の仮想化OSの勉強をしなければならなくなって、fedora というかred hat系の現状はどうなっているのかをテキスト(文字情報)だけでなく、実際に試してみることにした。KVMはKernel-based Virtual Machineの意味で、RedhatやFedora/CentOSが最近サポートするようになったもので、Xenとは距離を置いているようである。

先週の金曜日にアップグレードしたばかりの機械をつかってubuntuの9.10をインストールすることにした。

システムツール->仮想化マネージャで仮想マシーンを作成する。新規でOSを選択したり、ISOイメージを選択したりすると、あっという間に出来上がる。
本当は10.4をインストールしたかったのである。しかし、選択子にはなかった。そして10.4のisoイメージをダウンロードして、虚偽の選択として9.10を選んでみたのであるが、エラーになったのでやめることにした。それで9.10をダウンロードして910を選択したら、あっという間にインストールは終了した。でもSUNのvirtual boxに似ていると思う。

かなり古いREDHATで動作しているプログラムなどがあるので、そういうものを動作させる環境が少なくなっている。新しいハード上で動作する古いOSはあまりないので、こういう仮想環境はありがたい。

2010年5月26日

一部の機種をfedora 13にアップグレード

カテゴリー: LINUX, fedora — admin @ 4:40 PM

このマシーンはLogical Volumeだけで構成してなかったので、簡単にアップグレードできそうである。
しかし、200Mバイト程度の/bootであったのでGPARTED(gnu partition editor)入りのCDで起動して
パーティションの縮小と拡大(移動)を行った。

実際にはCDは書き込みができないので、RAM上にディスクの代わりになるものが作成されて、そこがルートになって動作する。
現在ルートとして/dev/sda5を指定してLINUXが動作しているとする。その時、/dev/sda5のパーティションの移動を行うプログラムを作るのは一般的には不可能であろう。実際、そこはgpartedでは、鍵のアイコンが表示されており、編集不可能になっている。

移動対象になっている領域に依存しないプログラムであればいいのである。こういうわけでLive CDなるものが活躍するのである。昔のPC9801のように外付けHDDのみの場合は他のコンピュータにくっつけてパーティションの編集をすればいいのであるが、固定ディスクを内蔵するようになったので、取り出すのがおっくうになったのである。

そして、/bootを1G程度にした。
昔はブート用のフロッピーは1.44Mバイトあるいはそれより少し多め程度だったのである。そしてネットワーク経由でインストールしたこともあった。これは某大学のCAD教室のコンピュータの設置で利用した方法である。OSのマスターをサーバに置き、クライアントのインストールはフロッピーで行った。

アップグレード前のOSはfedore 11であるが、飛び級で13にしよう。
これはgodardというコードネームのfedoraらしい。
結果はのちほど。
(ここからはその後ほどです)

failure: repodata /filelists.sqlite.bz2 from preupgrade-rpmfusion-free-updates:[Errno 256] No more mirrors to try:

というエラーが出たので、システム->管理->ソフトウエアのソースでrpmfusionのfreeのupdateのチェックをはずした。
そして、もう一度、ソフトウエアのアップデートを起動すると、しばらくして、アップグレードが可能ですとかいってくる。
そこでfedora 12または、fedora 13が選択できたが、fedora 13を選択することにした。5段階くらいのステップが終了し、リブートするかというので「はい」と答える。
しかし、リブートは起きない。そこで手動でリブートする。そしてGRUBでアップグレードを選択すると、DVDなどからインストールした場合と同様な画面が表示されて、かってにアップグレードしてくれそうだった。現在は5分程度経過したろうか。パッケージの25%程度は終了した。
まっさらなインストールよりも時間がかかることが多いが、11->13なので少し心配である。とくにpostgresが。

(さらに1時間程度経過した…)

一応アップグレードなので、1時間以上かかったが、なにもしなくてもインストールは終了してログイン画面になっていたので満足。

お客さん向けのものは最近はCent OSにすることにしているが、とあるデータセンターの関係で、ubuntuになる
ものも出てくるかもしれない。

以前はこのubuntuに似ている、debian(これがお父さんにあたるものか)というものやSUN OSそして、System V系の元祖SolarisやNCRのTowerで動作するプログラムを作成していた。もちろん組み込みやWindowsも扱った。小さなOSも作成して重宝したことがある。

2010年5月24日

sony vaio type pのubuntuのアップグレード

カテゴリー: ubuntu, vaio, 無線LAN — admin @ 3:30 AM

9.10を使っているうちに10.4LTS(Long Term Support)にアップグレードしないかというダイアローグが表示されたので、思い切ってそうした。
しかし、また1階で実施したので少し遅いし、なぜか失敗した。90%程度のダウンロードで失敗していた。電波の強さは60%程度だった。ダウンロードの途中でDHCPのリース時間がきれたのか?
そこで、2階(ここの電波の強さは100%)でwubiというインストーラを使ってインストールした。これを普通に行うとbit-torrentを使って非常に遅いので、wubi.exeだけをダウンロードし、あとのubuntuのisoファイルを別に本家からダウンロードし(数分で終了。bit-torrentの場合は10時間たっても終わらない!!)それを一つのディレクトリにおけばOK。
インストール用のCDイメージをiso形式でダウンロードした。その後wubi.exeを起動するとNTFS内のループデバイスに数分でコピー終了。
Windowsから再起動でubuntuを選択すると、UNIX側のインストールが10分程度で終了する。
NTFS内のフォルダを使うところがwubiの便利なところで、パーティションを切ったりということがないので楽であるが、性能はよくないのではないかな?

その後、日本語環境がないと指摘されたが、でほぼ自動的に日本語のインストールをしてくれた。漢字変換はanthyになった。画面がやはり遅いので、
http://www.facebook.com/group.php?v=wall&viewas=0&gid=62711517402を参考にしてリポジトリを追加し、updateし(これでpoulsbo***がいくつかDB的には認識されるようになる)、その後、synapticで適当にpoulsbo*をいくつかインストールした。
また、前回と同様に(今度は/boot/grub/grub.cnfというファイルの起動したいLINUX OS行の最後に)quiet splash mem=2000mbを追加した。
じつはこの最後のおまじないを忘れたので、ブートはレスキューモードを選択して、様子を探る。普通のコンソールだけのログインをして、その後、startxなるXをスタートさせるコマンドをコンソールから投入すると、xf86MapVidmem: Could not mmap framebuffer
などというエラーになった。それで、再度上記のおまじない(画像バッファーを主メモリから割り付けるために必要な情報なのであろう)を入れたのである。
画像は速くなった。flash playerはsoだけが入っている、tar.gzをダウンロードして、/usr/lib/mozilla/pluginsにコピーした。

« 新しい投稿古い投稿 »

Powered by WordPress