p e n g u i n - b o x . j p
since 2001.5.1

Vine Linux 2.5 install memo

Vine Linux 2.5をノートPCへインストールしたときのメモです。 Vine Linux 2.1.5で使用していた設定ファイルをそのまま移植しても挙動に違いが生じ一筋縄では行きませんでした(2002.12.8)。

目的

静かなマシン
今まで鯖としてAlphaマシン(Vine Linux 2.1.5)を24時間走らせていたがファンおよびHDDの騒音がうるさいため寝るときに耳障り。ノートなら静かになる鴨。
保守パーツの入手性
DEC時代のAlphaマシンは部品を交換しようとしても入手が困難。 手に入ったとしてもPentium 100MHzよりも遅いマシンにコストをかけるメリットはない。
Vine LinuxのErrata修正対応
非x86(Alpha、PowerPC、Sparc)のErrata修正はx86よりも後回しになりがち。

マシン概要

TOSHIBA Satellite Pro 460CT
A4 Note PC、Pentium 166MHz、Mem 48MB、HDD 2.1GB、SVGA、PCMCIAx2(PCIC Compatible / CardBUS)
選定のポイント
発熱少な目:B5ノートはキーボード面から放熱させるため蓋を閉めて利用するのには向かない。
最低32MBのメモリ:Apache, Squidなどを走らせるため24MBでは不安。できれば64MB以上は欲しい。
最低1GBのHDD:最近のLinux Distro.はHDDを要求してくる。開発ツールやX込みだと1GBでも足りなさげ。
シリアルポート付き:ISDNのTAを繋ぐために必要。
廉価:Sofmapの中古ショップにて12800円がタイムセールでさらに1000円引き。

Vine Linux 2.5のインストール

460CTのBIOS設定
[ESC]を押しながら電源を入れ[F1]を押すとBIOS Menuに入る。
1)PCMCIAの設定をPCIC Compatibleにする。
2)Batteryの項目でprocessorのスピードをFULLにする。
Vine Linux 2.5の入手
利用したのはLinux Magazine 2002.5の付録CD-ROM。 CD-ROMに含まれるインストール用の イメージファイル(pcmcia.img)ではPCMCIAを認識できず (ここの一番最後の項目)外付のCD-ROMドライブを利用できないため ftp.kddlabs.co.jpなどのftpサイトからupdates/misc/i386/pcmcia.imgを持ってくる。
インストール
textモードでインストーラを走らせる。カスタムインストールを選択しXを一切入れないようにパッケージを個々に選別する。
BIND、Apache、Postfix、qpopper、ProFTPD、Squid、ntpd、Namazu、Kakasi、etc...
パーティション
fdiskでパーティションを作成する。
デバイス ブート 始点  終点  ブロック   ID  システム      Mount Point
/dev/hda1   *      1     7     28192+  83  Linux (ext2)  /boot
/dev/hda2          8    39    129024   82  Linux swap
/dev/hda3         40   420   1536192   83  Linux (ext2)  /
/dev/hda4        421   525    423360   83  Linux (ext2)  /home
apt-get year!
/etc/apt/source.listの($ARCH)をi386に書き換えて
# apt-get update
# apt-get upgrade

Alpha鯖(Vine Linux 2.1.5)からの移植

/etc/passwd、/etc/shadow、/etc/group、 /homeディレクトリ
Vine Linux 2.5ではapacheのデフォルトの実行権限がnobodyではなくapacheになっているのに伴いuser/groupにapacheが準備されている。 Alpha鯖ではnobodyの代わりにuser/groupとしてwwwを用意しpublic_html以下のグループをwwwに設定していたのでapacheに変更する。
BIND(/etc/named.conf、/var/named/*)
Alpha鯖のものをコピー。名前解決に失敗することがあるためnamed.confのoptionsディレクティブに以下の記述(プロバイダ(ODN)のDNS)を追加。
forwarders {
        143.90.130.39
        143.90.130.165
};
このほかApacheのVirtual Hostのために用意していたCNAME設定を整理。
Postfix(/etc/postfix/main.cf)
Alpha鯖のものをコピーして桶。
qpopper
/etc/pop.authを作り直し。
# popauth -init
# popauth -user hoge -only
Apache(/etc/httpd/conf/httpd.conf)
設定できる項目が増えているが従来のものをコピーで桶。 logfileをVirtual Hostごとに作成しているのでrotationの設定(/etc/logrotate.d/apache)の書き換えも行う。
Squid(/etc/squid/squid.conf)
Alpha鯖のものをコピー。キャッシュサイズの変更くらい。
ProFTPD(/etc/proftpd.conf)
inetd経由で走らせることとanonymousを不使用にする。
PPxP
Alpha鯖のものをコピーで桶。
lilo.conf
自動で2.2系のカーネルを読みこむように変更。
/etc/rc.d/init.d/network
chkconfigの起動順番を10番目に変更。また、Fletsへ接続を行うように下記の設定を追加
start)
    # PPxP Flets Connection
    echo "PPxP Flets connecting..."
    /usr/bin/ppxp flets -C connect
    /bin/sleep 10
PCMCIA(/etc/rc.d/init.d/pcmcia)
chkconfigの起動順番を9番目に変更。また、2.4系のカーネルでもyenta_socketではなくi82365をロードするように書き換え。
PCMCIA(/etc/pcmcia/*, /etc/sysconfig/* etc...)
初代鯖(Vine Linux 2.1.5をインストールしたEPSONのノート)の時はNICを挿しただけでネットワークの設定がされたが Vine Linux2.5では/etc/sysconfig/network-scripts/ifcfg-eth0をあらかじめ用意し手動でifup eth0としなければならない。 手動で行うのでは鯖として不便なため/etc/pcmcia/networkのstartのところに /sbin/ifup ${device} を追加。
dhcpd(/etc/dhcpd.conf)
Alpha鯖のものではdhcpd起動時に上流側(xxx.xxx.xxx.yy)のsubnet設定を要求してくるのでその設定を追加。
##従来はprivate側のネットの設定を行いdhcpdを走らせてからFletsに接続していたのでprivate側のsubnetの設定だけで桶だったが 今回先にFletsに接続してからdhcpdを走らせるように変更したのが原因。
ipchains
Alpha鯖のものを移植。


penguin-box.jp by ka's