Skip to main content

ログ取得ツール

Category: GNU/Linux

ディスクアクセス

やはり、なにもしていないのにディスクにアクセスしている。/(ext2)なのか/usr(jfs)なのか。調べると、/に書き込みのアクセスがいっているということがわかった。hmm… だいたい今までの統計でわかったことを記録しておこう。20秒でspin-downしているが、20秒以上アクセスがないときは、平均80秒はアクセスがない。60秒は止まっているということだ。27051秒のうち、20秒以上止まっていたのが23776秒、295回。spin-downしていた時間は17876秒、約66%である。 残りの問題は/である。/さえクリアすれば無駄なディスクアクセスを撲滅できる。

ext3捨て

結局/と/usrに巣喰うext3を捨てることにした。まず/は移行が面倒なのでext2としてマウントすることにし、/usrはジャーナリングは必須なのでjfsに移行した。noatimeもつけた。ついでに

hdparm -c 1 -S 4 -X udma2

ということにした。あとは…eepro100をやめてe100にしてみた。Intel製のドライバ。変更が一度にありすぎて、不具合が起きたときに困りそうだが… しばらくまたvmstatとかでディスクアクセスが定期的にないように監視することになる。 jfsにしたところ、普通にdump+restoreしただけなのに、空き容量が2GB増えた。おそるべし。何か消えてないだろうか、不安だ。 syncの完了が異様に速くなったような気がする。 手順は以下の通り。メモしておく。


  telinit S
  fuser -k -m /usr
  dump /usr to 1394 HDD
  tar も(予備)
  umount /usr
  edit fstab (ext3->jfs, ext3->ext2)
  tune2fs -O ^has_journal /dev/hda2
  mkfs.jfs -L /usr /dev/hda6
  mount /usr
  restore
  reboot

fsck.jfsが終わらなくて、けっこうハマった。fstabでfsckしないように書き換えた。あと、devfsをrc.sysinitの先頭でmountするように変更。 (追記) 2003-05-13 23:49 こんな感じ。

2.4.21-rc2-ac1

Unresolved Symbolが。結局インストールせず。xfsはともかく、ac97は毎日使うし。


rm -r boot
mkdir -p boot/boot
cp System.map boot/boot/System.map-2.4.21-rc2-ac1
cp arch/i386/boot/bzImage boot/boot/vmlinuz-2.4.21-rc2-ac1
cp .config boot/boot/config-2.4.21-rc2-ac1
make -s modules_install INSTALL_MOD_PATH=/usr/src/linux-2.4.21r2a1/boot
depmod: *** Unresolved symbols in /usr/src/linux-2.4.21r2a1/boot/lib/modules/2.4.21-rc2-ac1/\
kernel/drivers/sound/ac97_codec.o
depmod:         wolfson_init11
depmod:         wolfson_init05
depmod: *** Unresolved symbols in /usr/src/linux-2.4.21r2a1/boot/lib/modules/2.4.21-rc2-ac1/\
kernel/fs/xfs/xfs.o
depmod:         find_trylock_page
depmod:         path_lookup
cd boot
tar cfzp 2.4.21rc2ac1.tar.gz --owner=root --group=root boot/System.map-2.4.21-rc2-ac1 \
boot/config-2.4.21-rc2-ac1 boot/vmlinuz-2.4.21-rc2-ac1 lib/modules/2.4.21-rc2-ac1
cd ..

libsafe

なんと、libsafeが全然きいてなかった。


% fuser -v /lib/libsafe.so.2.0.16

                     USER        PID ACCESS COMMAND
/lib/libsafe.so.2.0.16
                     root        942 ....m  gdm-binary
                     root        971 ....m  gdm-binary
                     root        972 ....m  X

おいおい、こんだけかよ!! uidが変更されるところでLD_PRELOADが消えるようになったみたいだな。いつからだろう。 (追記) 2003-05-06 25:18 ssh-agentのsetgid(nobody)を落とした。ktermのsetuid(root)も落とした。すると有効になった。