随感録 2004年11月

2004-11-10 (Wed)

Fedora Core 3が正式リリースされたのを機に、アップグレード。

Fedora Project, sponsored by Red Hat

いままではRed Hat Linux 9をベースに、パッケージをFedora Core 2にアップデートしたものを使っていた。ちなみに、私の機械はかなりの年代もので、CPUがK6 333MHz, メモリ64Mバイト、ハードディスクが4G + 20Gという構成。

今回はハードディスクのパーミッションを切り直して、クリーンインストールすることにした。LAN内向けのWebサーバ、DNSサーバ、プリントサーバ、ファイルサーバと、デスクトップ環境を入れる。

djbdns(tinydns, dnscache) を使う

インストーラは、日本語に翻訳されており、難しいところはない。ただし、私の機械では、X版のインストーラは途中で異常終了してしまった。テキスト版(起動時にlinux textと入力)では、問題ない。

パーティションの自動設定を行うと、LVM(Logical Volume Manager)が有効になり、1台目のハードディスクの一部が/bootに、1台目の残りと2台目の全部が一つのボリュームになった。

あとは、各パッケージのバージョンが上がっているぐらいで、あまり目新しいものはない。

#

設定は、system-config-* コマンドを使って、適当にしていく。

system-config-users で一般ユーザーを追加する。

system-config-networkコマンドで、LAN内のホストを静的に登録する。

system-config-printerコマンドでプリンタの設定。ただ、Windows機から見えるのに印刷できない。

system-config-samba でファイルサーバの設定。

system-config-services で起動するデーモン類の選択。ぐらい。

2004-11-18 (Thu)

先週からのできごと。

近ごろ飛行機によく乗る。エコノミークラス症候群になるよ。食事がおいしく、海が綺麗だねぇ。東京と生活水準がずいぶん違う。

#

Fedora Core 3がクラッシュ。うへー。どうも、ハードディスクの使い方が変わったことで問題が顕在化したのではないかと。

メモリとハードディスク(120Gバイト)を買ってきた。再インストールすると、順調。

メモリは64Mバイトでは難しい。というのも、インストール中にメモリが足らなくなってswapをマウントしようとするが、しかしハードディスク初期化前。事前に自分でフォーマットをしておかないといけない。少なくともメモリは128Mバイトは必要だと思う。ハードディスクは10Gバイト程度あればいいだろう。

自分でインストールするもの:

  • rubyとその他一式
  • MySQL 4.1
  • その他色々

2004-11-21 (Sun)

Fedora Core 3 導入の続き。

daemontoolsとclockspeedを入れた。MySQL 4.1を入れた。apache2をソースから構築して入れ替えた。ruby 1.8を入れた。

ruby関係はどれもこれもパッチが必要で、面倒くさい。入れたもの:

先は長い。

2004-11-23 (Tue)

共同でデジカメを購入。FinePix E550 コカコーラのPETさえもカッコよく写る。詳しくは(以下略)

#

Fedora Core 3 導入の続き。

カーネルの更新・再構築。見事に刺さった。rootデバイスが見つからないですって。

/boot/grub/grub.confは、次のようにしている。(一部抜粋)

title Linux kernel current
        root (hd0,0)
        kernel /vmlinuz ro root=/dev/VolGroup00/LogVol00 rhgb quiet
        initrd /initrd.img

initrdでLVMのドライバか何かがロードされていないんだろう、と思って、initrd.imgをzcatとcpio -i で展開して、中身を見てみた。initスクリプトでドライバをロードしている。ちょっと長いが、こんなの。

#!/bin/nash

mount -t proc /proc /proc
setquiet
echo Mounted /proc filesystem
echo Mounting sysfs
mount -t sysfs none /sys
echo Creating /dev
mount -o mode=0755 -t tmpfs none /dev
mknod /dev/console c 5 1
mknod /dev/null c 1 3
mknod /dev/zero c 1 5
mkdir /dev/pts
mkdir /dev/shm
echo Starting udev
/sbin/udevstart
echo -n "/sbin/hotplug" > /proc/sys/kernel/hotplug
/sbin/udevstart
echo Making device-mapper control node
mkdmnod
echo Scanning logical volumes
lvm vgscan
echo Activating logical volumes
lvm vgchange -ay
echo Making device nodes
lvm vgmknodes
echo Creating root device
mkrootdev /dev/root
umount /sys
echo Mounting root filesystem
mount -o defaults --ro -t ext3 /dev/root /sysroot
mount -t tmpfs --bind /dev /sysroot/dev
echo Switching to new root
switchroot /sysroot
umount /initrd/dev

mkdmnod, mkrootdevって何かいな? と思ったら、Fedora Core 3のinitrd.imgのinitでも呼んでいるな。mkdmnodは、/dev/mapper/controlを作るか何かするものみたい。

FC3のカーネルを使うと、/dev/mapperはこうなっている。

/dev/mapper
        VolGroup00-LogVol00
        VolGroup00-LogVol01
        control

initrdでは、mkdmnod は、nash の内部コマンドみたい。(みたいとからしいとかが続いて困るが。)

で、どうよ?

2004-11-29 (Mon)

無断使用問題。http://photo.jijisama.org/Pakuri01.html

こちらは別件。

#

カーネルの再構築できた。不要なものを削ぎ落として、ずいぶん小さくなった。軽快になった気もする。この件はかなりヘタレだった。単に kernel configのinitrdオプションがオフ(無効)になっていた。ありえない。

有効にしないといけないオプションは、

  • Prompt for development and/or incomplete code/drivers (CONFIG_EXPERIMENTAL)
  • Use register arguments (EXPERIMENTAL) (CONFIG_REGPARM) -- ABIが変わる。Fedora Core 3はこれが有効になっている。
  • RAM disk support (CONFIG_BLK_DEV_RAM) と Initial RAM disk (initrd) support (CONFIG_BLK_DEV_INITRD) -- ramfsを有効にしないとinitrdが現れない。これに気づかなかった。
  • Multiple devices driver support (RAID and LVM) (CONFIG_MD) と Device mapper support (CONFIG_BLK_DEV_DM) -- LVM2は、device-mapperの上に構築されている。