Construction 3:思い出したようにLinuxセットアップ日記

最近はあまり騒がれなくなったがそれはそれで、今までどおりってことで、 普段は専らWindowsなわけだが、たまに使いたくなるLinux。 というわけで、そういうときのためにもすぐ使えるような1台を飼っておくか、 というあまりまじめに考えずにセットアップをしてみよう、というのがこれ。

#1年以上前に始めたのにほったらかしだった・・・・。


はじめに

ずいぶんとLinuxが巷でもてはやされているようなので、自分のすでに持っている知識を改めて確認するためにも、いっちょ、余っているマシンで少し遊んでみるか、と思ったのがそもそものはじまり。 前々やってみようやってみようとは思っていたところだったので、会社のマシンを利用して、どこまで役に立つものが動かせるか、という感じで手を出してみた。 (間違った情報もあるかと思うので、その辺はご勘弁ください(弱気))

まずは無料から

UNIXといえば、とりあえず導入に必要なソフト代はWindowsのように発生しない。 PC-UNIXの多くは商用アプリケーションとサポートを期待しなけれ、ひとまずは無料である(語弊もあるかもしれないが)。 そんなわけで雑誌とかの付録CDROMとかにもぼこぼこ載るわけだが、雑誌の値段はあくまで本題であって、モノ(PCUNIX)自体はフリーなのである。

そこで、まず、月刊ASCIIが手近に転がっていたので、付属のCDROMからVineLinux1.1を入れてみることにした。会社では毎月ASCIIを買っているのでたまに役に立つ。 さて・・・・・、なんかうまくいかない。確かに用意したハードウェアも適当だったのでそれが悪いのかもしれないが、どうにもインストール中にこける。困ったものだ。

モチベーションが下がったところで気持ちを入れなおし、会社の同僚(上司)から、以前、TURBOLINUXを入れていたという話を思い出し、TURBOLINUX4.0付きの教則本を借りてインストールを試みることにする。 しかし、これも不調。PC-ATにPC-UNIXを入れる際にひっかかりやすい、Windowsではとりあえずサポートしてるよーん、的なデバイスを再調査することにする。

たまには買ってみる

久しぶりのPCUNIXなので、勘を取り戻すために情報を調べることにするが、いまどきWebを探していればそれなりに情報は手に入る。 しかし、効率が今一つなので、あえて本屋で立ち読みをして、吟味する。 結果 「TURBOLINUXネットワークサーバ構築完全ガイド(ISBN4-87966-995-4)秀和システム」 なる本を購入した。3800円+税なり。選択した理由は「DHCP」や「Samba」、「IPマスカレード」などの設定方法がわりとわかり易く書いてあったためだ。

他のUNIX関係の雑誌や、VineLINUXの本もあったので迷ったが、 一番充実していた↑の本のディストリビューションがTURBOだったのでひとまずTURBOでいくことにここで決めた。

肝心のソフト本体の入手方法は、TURBOLINUXのサイトからFTPで一通りダウンロードするか、CDROMなどを探すなどがあるのだが、いつもそんなのばかりだったので、今回はマニュアルとCD-ROMとサポートがセットになったパッケージ品を試しに買ってみることにした。 (商用アプリケーションやサポートが欲しかったわけではないのだが・・・) 新宿西口ヨドバシカメラで、他のディストリビューション(Vine、Kondara)と迷うが、今、ユーザ登録するとVMwareがただでもらえるというのにつられて「TURBOLinuxWorkStation6.0日本語版」に決めた。約8000円なり(後日1週間以内にVMwareが届く)

今回インストールに用いたマシンだが、職場に余っていた(というか去年まで自分で使っていた)、DELLのPentium150MHzマシン。主なスペックは次のとおり。

・DELL Optiplex5150(3comNIC、S3VRAM2M、onboard)
・IDEHDD 1G
・AHA-2940(with SeagateSCSIHDD 2G)
・IDE CDROM

さて、これからどうなるやら・・・。


ひとまず素でインストール編

まずは、できるだけ細かいことは考えずに、X-windowの起動までもっていくことを目指すことにした。 まずはパッケージに付属の起動FDでブートする。 ちなみにここでマシンがCD-ROMブートに対応していればインストールCDからブートしてのインストールも可能のようである。 (余談であるが、最近のマシンしか知らないのかCDブートできるマシンが当たり前と思っている人もいるようですが・・・昔のマシンではあまりCDブートはできません)

当マシンにはSCSIのCDROMドライブがついていたのだが、インストール開始直後、IDE接続のCD-ROMが必要そうな雰囲気になったので、せっせとIDEのCDROMドライブに換装したら、その後、有名なSCSIカードで接続されている場合は使えることが判明・・・せっかく換えたのに。気を取り直してインストールを続行する。

基本的にインストール中の流れは分かりやすく、マニュアルに沿ってやれば、そうそうはまるところはない。SCSIとNIC(LANカードね)の自動認識があるが、著名なカードならここで認識される。2枚目のNICを差している場合、認識されないことが多いようなので、ここではひとまず1枚だけ認識させる。

つまずきそうなところは、HDDのパーティションの切りわけか。昔Linuxをインストール したときは1Gも必要なかったような気がするのだが、どうやら開発者向けのフルインス トールだと1.2Gの空き領域が必要のようである。 (地道にパッケージを取捨選択すればもう少し少なくなるだろうが、非常に面倒そうである)

よって、ここでは以下のような構成をとってみた。

/        100MB
/usr    1300MB
/home   1000MB
/var     500MB
swap     100MB

3Gもあったのでふんだんに/usrと/homeに割り当ててみた。 さらに、3Gとは別に、去年使っていた2GのWindowsパーティションもあるので、/mnt/dos、という感じで割り当ててみた。 これらは起動時に自動的にmountされるそうで、中々便利だ。 (FDISK、CFDISKのコマンド自体は若干使いにくいかもしれないが、がんばって欲しい)

パーティションを切ったらフォーマットをして、TCP/IPの設定。 ひとまず、会社から割り当てられている、IPアドレス/ネットマスク、ゲートウェイアドレス、DNSサーバアドレスなどを設定する。 ドメイン名、ホスト名が若干ややこしい。適当に入力するとあとあとはまるので要注意。ホスト名を仮にaaaとすると、

例
ドメイン名:asahi-net.or.jp
ホスト名:aaa.asahi-net.or.jp

といった感じで設定する。NFSはキャンセルして、Turbopkgに進む。

Turbopkgはインストール後もつかえる、パッケージ専用インストーラー?らしく、選択したパッケージを簡単に追加できるようだ(便利になったものだ・・・) とりあえず、開発ワークステーションが1151MBで、ワークステーションが1055Mだったので、大差なかったのだが、ワークステーションをインストール。

パッケージをインストールされるのを待つこと30分程度。インストールが完了したら再起動をはさみつつ、カーネルの選択ではデフォルトを選択(DualCPUの場合、ここで選択できる。魅力的やね〜) LILOは、あまり気にせずMBR(マスターブートレコード)にインストール(若干危険だけど、最悪Winパーティションはいらないし)。 代わりに起動可能パーティションに、Linux以外にWinも選んでおく。 時間帯設定、rootのパスワードの設定などで大体完了。

でもってXの環境設定のTurboXcfgが起動。キーボードやマウスやビデオカードの設定を行なう。マウスはMicrosoftのインテリマウス(グリグリスクロールにも対応しているのね)を選択。問題のビデオカードの設定だが、予想通りはまった。 最初、マシンにはFIREGL1000を挿しており、Linux側で対応しているはずなのだが、どうにもテスト用のXの画面が表示されず、しかも、強制終了もできずにはまる。 どうにも、オンボードで搭載されているビデオカード(というかチップ)がまずかったのか、FireGLはあきらめたら事なきを得たのだが、、、。まぁ、余り気にせずすすむ。 あとは使用する画面モード(解像度)と周波数、モニタの種類などを適当に選択する。液晶モニタだったので、1024x768を選択した(大体適当でもどうにでもなるものだ)

最後にログイン方法、ウインドウマネージャー、起動時のサービスを指定する。ログイン方法はxdmというのを使ったグラフィカルログイン(いわゆるWindowsっぽい感じ)とテキストログインがあるのだが、これは好みで選択すればよいだろう。WMはいまどきの「GNOME」、起動サービスはほとんどデフォルトにしておく(これらも皆、あとから設定できるので)

これで大体のインストールは完了。と書くと簡単だが、それなりにはまってたりする。

LILO:で、Enterなり、待つなりで起動。ひとまずrootでログインする。 ktermで、uname -aでカーネルなどの情報が得られる。2.2.13-33らしい。

そんなんでこんな感じ(画面キャプチャ)。 キャプチャは最初、xwdを使おうと思ったらなぜかエラーが出たので、GIMPでやってしまった・・・。


一般ユーザの追加

管理者(root)はインストール時に設定されるが、それだけではあんまりなので、一般ユーザも追加してやる。ひとまず

$adduser yoshi

とか、そんな感じで追加しておき、必要時にsuでスーパーユーザーになることにする。 (suはswitch userの略らしいのだが)シェルはデフォがbashだったので、bashでいく。 (bashはBourne again shellの略だとか)ちなみに、suする際に

$su -

としないと環境変数が、元のユーザ?のものが引き継がれてしまい、パスが通っていないためにsbinの中のファイルなどが実行できないので要注意。


NICの追加

今回、IPマスカレードをするのが目的の1つだったので、NICを2枚挿ししなければならない。過去に2枚挿しはやったことがなかったので、少々不安だったのだが・・・、やはりはまった。 Windowsですら認識が不安定なカードを用意したのがそもそもの敗因だったのだが・・・・、ヨドバシカメラで「TurboLinux対応」とかかれたペンギンマークのLaneedの100Base-Tのカードを用意したのだが、結局うまく認識できなかった。

どうもカードのリビジョンが新しくなったためか、カーネルのバージョンをあげてみたり、ドライバのソースの中を書き換えてコンパイルしなおしたり、散々手を尽くしたのだがNGだった。PCIだったので簡単に認識するかと思ったのだが・・・・。 やむなく、あまっていたISAのカード(HP製らしい)を挿してみる。

格闘の結果

$ /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 00:C0:4F:D5:9B:97  
          inet addr:131.11.2.11  Bcast:131.11.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:16019238 errors:0 dropped:0 overruns:0 frame:0
          TX packets:128723 errors:0 dropped:0 overruns:0 carrier:1610
          collisions:1940 txqueuelen:100 
          Interrupt:10 Base address:0x250 

eth1      Link encap:Ethernet  HWaddr 08:00:09:A6:72:A1  
          inet addr:10.0.0.1  Bcast:10.0.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:87174 errors:4350 dropped:0 overruns:0 frame:4350
          TX packets:93828 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          Interrupt:11 Base address:0x180 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:3924  Metric:1
          RX packets:1413 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1413 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 

こんな感じになった。ここで、簡単な手順だが、すでにNICのドライバがモジュール化されている場合は、その名前を/etc/modules.confに記述する。ここでは、3c509(インストール時に設定)と、hp100がそうである。

#If you want to use i810, uncomment the next alias.
#alias char-major-10-175 agpgart
alias net-pf-5 appletalk
alias eth0 3c509
alias scsi_hostadapter aic7xxx
alias eth1 hp100
alias net-pf-6 off

ここで読み込まれているモジュールの一覧をlsmodで見ると

# lsmod
Module                  Size  Used by
hp100                  13716   1  (autoclean)
3c509                   5308   1  (autoclean)
ip_masq_mfw             2792   0  (unused)
ip_masq_portfw          2164   0  (unused)
ip_masq_autofw          2108   0  (unused)
ip_masq_ftp             2056   0 
nls_iso8859-1           2024   1  (autoclean)
nls_cp437               3548   1  (autoclean)
vfat                   11172   1  (autoclean)
fat                    29888   1  (autoclean) [vfat]
aic7xxx               122756   4 

となっている。ここで対応するドライバのモジュールが無いとかなりはまる・・・。

さらに、ネットワークインターフェースの設定をする。

/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
IPADDR=131.11.2.11
NETMASK=255.255.0.0
NETWORK=131.11.0.0
BROADCAST=131.11.255.255
ONBOOT=yes

/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth1
IPADDR=10.0.0.1
NETMASK=255.255.255.0
NETWORK=10.0.0.0
BROADCAST=10.0.0.255
ONBOOT=yes
BOOTPROTO=none

ここらへんは、X-windowで、rootでturbonetcfgを起動すれば、わかり易く設定できるので便利かもしれない。

起動時のメッセージをdmesgで見てみると、

eth0: 3c509 at 0x250 tag 1, 10baseT port, address  00 c0 4f d5 9b 97, IRQ 10.
3c509.c:1.16 (2.2) 2/3/98 becker@cesdis.gsfc.nasa.gov.
eth0: Setting Rx mode to 1 addresses.
hp100: eth1: Using (slow) programmed i/o mode.
hp100: eth1: HP J2573 at 0x180, IRQ 11, ISA bus, 64k SRAM (rx/tx 75%).
hp100: eth1: Adapter is attached to 10Mb/s network.

こんな感じ。


スーパーサーバーの設定

NICを2枚使うものの前に、ひとまず1枚目だけで使えているかをチェックするために、 ネットサーフィン、FTP、TELNETなどを試す。いけているようだ。では次は自分自身の中に対してFTPやTELNETができるかを外のマシンから試すと、、、あれ? いけない。どうやら、外からその手の要求が来たとき、inetdというデーモンが、ftpdなどを呼び出すようなのだがそれがうまくいっていないらしい。(inetdがスーパーサーバーが実装されたデーモンらしい。逆に常時利用しないhttpやsmtpなどはスタンドアロンと呼ばれ、個別に起動するらしい。)

なぜ呼び出せないのか?まず呼び出されたときに起動していいかの設定を見る。

/etc/inetd.conf

#
# These are standard services.
#
ftp     stream  tcp     nowait  root    /usr/sbin/tcpd  in.ftpd -l -a
telnet  stream  tcp     nowait  root    /usr/sbin/tcpd  in.telnetd -h

ここで使用するサービスが#でコメントアウトされていたら、#をはずすい。 逆に無用なサービスを起動させないというセキュリティホールを防ぐにはコメントアウトする。書き換えた内容を反映させるには、

$kill -HUP 

もしくはTurbolinuxでは

$/etc/rc.d/init.d/inet restart

で、inetdが再起動される。

しかし見落としやすいのはこっちと思われる。

$ less /etc/hosts.allow
#
# hosts.allow   This file describes the names of the hosts which are
#               allowed to use the local INET services, as decided
#               by the '/usr/sbin/tcpd' server.
#
# See man hosts_access(5) for more information

ALL : 127.0.0.1
ALL : 10.0.0.
ALL : 131.11.

このhosts.allowファイルで記述されているホストからのアクセスしか許可しない、ということを設定するファイルである。これがないと別のマシンからTELNET等ができないようだ。今回は特にセキュリティに気を使わないのでALLなどで適当に設定。inetdの再起動は不要とのこと。

$ ps -ef |grep telnet
root     16090   278  0 13:46 ?        00:00:00 in.telnetd: 10.0.0.20


IPマスカレード

今回、ネットワークカードを2枚挿した一番の目的はこれ。 1つしかもらえないIPアドレスに対して複数のマシンをつなぐ、というプロキシサーバ的役割を持たせようと考えたからだ。設定にはかなりてこずった。 とりあえず、TurbolinuxではIPマスカレード機能の使用は可能であるのだが、

/proc/sys/net/ipv4/ip-forword 

これが1であるということで、それが確認できる。

まず、IPマスカレードの機能の一部がモジュールとして提供されているので、それを読み込む必要がある(インストールはされている)さらにネットワークの設定もする

/etc/rc.d/rc.modules

modprobe ip_masq_ftp.o
modprobe ip_masq_autofw.o
modprobe ip_masq_portfw.o
modprobe ip_masq_mfw.o

/etc/sysconfig/network 

  NETWORKING=yes
  HOSTNAME=moon
  DOMAINNAME=xxxxxx
  GATEWAY=
  GATEWAYDEV=
  FORWAOD_IPV4=yes

次にルートの設定。eth0を外側、eth1を内側とするので、

$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.1.31.0       *               255.255.255.0   U     0      0        0 eth0
10.0.0.0        *               255.255.255.0   U     0      0        0 eth1
default         10.1.31.3       0.0.0.0         UG    0      0        0 eth0

例えばこんな風になる。同じく、/etc/rc.d/rc.localにフォワードするルールを追加。

ipchains -A forward -s 10.0.0.0/24 -j MASQ
ipchains -P forward DENY

細かいところ忘れました(ぉ


DHCPサーバ

$ rpm -qa|grep dhcp
dhcp-2.0-8
dhcp-client-2.0-8

最初からDHCPのパッケージが入っていたようなので設定をして起動するだけで比較的簡単に動いた。

設定ファイルは、/etc/dhcpd.confのみ。

server-identifier 10.0.0.1;

shared-network MYNETWORK {
        option subnet-mask 255.255.255.0;
        default-lease-time 6000;
        max-lease-time 72000;

        subnet 10.0.0.0 netmask 255.255.255.0 {
                range 10.0.0.16 10.0.0.31;
                option domain-name-servers 192.168.77.32;
                option domain-name "hogehoge.co.jp";
                option broadcast-address 10.0.0.255;
                option routers 10.0.0.1;
        }

        subnet 10.1.31.0 netmask 255.255.255.0{
        }
}

あとは、/etc/rc.d/rc.localに

dhcpd eth1

と書いて完成。クライアントにはDHCP設定にしたWindows2000をつないでみたが、問題なく稼動している。


Samba

いちいちFTPでファイルをやりとりしてもいいのだが、せっかくなのでWindowsでのネットワーク共有機能でファイルのやりとりをするために、sambaを入れてみた。設定もわりと簡単。これもあらかじめ入っているので設定と、起動のみ。

$ rpm -qa|grep samba
samba-common-2.0.5aJP2-9
samba-2.0.5aJP2-9
samba-client-2.0.5aJP2-9

/etc/smb.confを適当に修正。

[global]
        coding system = sjis
        client code page = 932
        workgroup = DOMAIN
        security = share
        server string = Linux Samba Server %v
        encrypt passwords = Yes
        map to guest = Bad User
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        dns proxy = No
        guest account = smbguest
        os level = 1

[homes]
        comment = %U's Home directory
        writable = yes
        browseable = No

[printers]
        comment = All Printers
        path = /var/spool/samba
        print ok = Yes
        browseable = No

[public]
        comment = Public space; anyone can write any files.
        path = /home/samba/public
        guest ok = yes
        public = yes
        writable = yes
        force group = public
        force create mode = 0664
        force directory mode = 0775

最低限の設定のみとしている。セキュリティやアクセス権なども細かく設定できるようだが割愛した。

またも、/etc/rc.d/rc.localに起動の指示をして完了。

/etc/rc.d/init.d/smb start
smbd -D
nmbd -D


Apache

TURBOLINUXのサイトからapacheを落して来ていれようと思ったら、 すでに同じ版がインストールされていた。 XからTurboserviceを使って(手抜き)、apacheを起動させる。 ひとまずこれだけで、サーバの起動はしていることをNetscapeで 確認できる。しかし、アクセス権限が定義されていないのか、 個人のページが見れないので、

/etc/httpd/conf/httpd.conf 

をいじる。具体的には、エラー発生時にメールを送る先「ServerAdmin」にメールアドレスを追加した。

次は、/etc/httpd/conf/srm.conf の編集。

おもにCGIの使用許可のところだけ設定。最後にacccess.conf。ここでCGIなどの使用許可をDIRごとに設定できる。さて、表示させるか。。。あれ?出ない。 と思ったらホームディレクトリの属性が700になってた。なんでや。

$chmod 755 .

ひとまず完成。このあとCGIがうまく動かず一瞬焦るが、access.confの中を


<Directory /home/*/public_html>

Options Indexes Includes FollowSymLinks ExecCGI

AllowOverride All

</Directory>
のような感じにExecCGIなどを追加してやる(都合、タグのため、不等号は全角で表記している)


VMwareおまけ版の設定

TURBOLINUXを買ったときにおまけでもらった「VMWare」をちょっと 評価することになった。

今回のインストールは比較的簡単にいった。パッケージをrpmでインストールして、 起動時に適当に答えてセットアップ完了(汗。 ただ1点はまったのはWindows98をインストールしてから。 インストールしたマシンがpentiumII400MHzだったわりにやけにインストールに時間がかかったのはいいとして(1時間くらいか?)その後いきなりEMM386なんとかかんとか とでて、起動できない。どうもCONFIG.SYSがよくないらしく、EMM386関係の行を削除しておかないとだめだとか。 あともう1つ。画面がそのままだと激遅のVGAしか使えないので、vmware toolsというもののインストールが必要になる。仮想のFDドライブ?にファイルを作るような動きをするがinstallしてやればよい。

これで多少描画が速くなり、確かにネイティブの5〜6割くらいのスピードになった。実用性はゲームとかでなければ十分あり、という感じ。さすがにLightwave3DやPhotoshopには使う気はしないがやむをえまい。


サウンドの設定

別のマシンにたまたまlinuxで音の設定が必要になる。

適当にwebをあさって

$snddevices
$alsaconf
を実行すれば、あとは、ALSAに対応したサウンドカードだと運がいいと自動認識されたりするので、それを選んでバッファは適当に64あたりを入力しておく。 複数のカードの登録にいってしまうので「No more card」を選択。modules.confを更新されるので、再起動かmodprobeなどでモジュールを追加。 これで音が鳴った。VMWareからはコンフィグで/dev/dspを使う設定にするだけでコネクトすれば、windowsからも音楽再生は可能だ。 プログラムメニュー?みたいなところに登録されていたオーディオミキサーは「gamix」というツールを呼んでいたのだがいまいちマイクがうまく設定できなかったので、 ktermから「gmix」というのを起動してマイクの入力の調整をしてみた。


Namazuの設定

TURBOLINUXにnamazuを入れていらっしゃる方がいらしたので、参考に設定する。ここにある通り、kakasi、namazuをインストールする。最初、namazurcの先頭に.を忘れてハマル。 動くようになったのだが今度は検索結果が化ける。どうもnkfのバージョンが新しいのがよくないらしい。依存関係があるとかで起こられるので強制削除してから、1.7を適当に入れてみた(爆

$rpm -qa

でファイルの一覧を出力

$rpm -e --nodeps nkf-1.92-1

それでも直らないなぁ、と思ったら、一度作ったINDEXは削除しないと生成してくれないようだ(差分のみ生成する模様) あと、インデックスはカレントディレクトリに作るので、生成したいディレクトリに移動する。環境変数LANGに日本語を設定するとメッセージが日本語になる。なので、

$export LANG ja
$rm NMZ.*
$cd /home/yoshi/public_html/nmz_index
$mknmz /home/yoshi/public_html/nmz_index
mknmz /home/yoshi/public_html/
検索対象のファイルを調べています...
/home/yoshi/public_html/index.html ファイルは更新されています
1個のファイルがインデックス作成の対象として見つかりました
1/1 - /home/yoshi/public_html/index.html [text/html]
インデックスを書き出しています...
[追加]
日付:                Thu Jun 14 01:21:07 2001
更新された文書の数:  1
サイズ (bytes):      5,009
合計の文書数:        214
合計キーワード数:    19,825
わかち書き:          module_kakasi -ieuc -oeuc -w
経過時間 (秒):       37
ファイル/秒:         0.03
システム:            linux
Perl:                5.00503
Namazu:              2.0.5

これで、ブラウザからは例えば、http://ほげほげ/~yoshi/cgi-bin/namazu.cgiで、全文検索できる。

#後日、別のPCに入れたときにエラーが・・・。 どうやらKAKASIをあとから入れたのがまずかったらしい。 namazuをconfigureする前にKAKASIのモジュールを入れないといけなかったのね。とほほ。


Analog

とあるサーバのWebサーバのログをcronで定期的にFTPしてきて、さらにanalogで集計してHTMLとして出力させた。参考にしたのはこちら

そういえば特定の拡張子のファイルアクセスのログだけをとるためにしょぼいシェルスクリプトも作って、一緒にまわしたっけな・・・。


適宜更新・・・・。。 今日はここまで