SVX日記
2005-09-21(Wed) PCのセンサ類から情報を引き出してみる
さて、サーバイジリはまだまだ続く。まずは、昨日設定を変更したキーボードの件。結果を確認せずに、PCを落として寝てしまったが、再起動後はキチンと「`」が入力できるようになっていた。というワケで、「FKB8579」を使う場合、インストール時のキーボード設定は「アメリカ合衆国」が正しい。
さて、これから順に、必要なパッケージを追加インストールしていきたい。それに先立ち、インストールCD内に格納してあるRPMパッケージファイルのリストを作成しておこう。必要なパッケージを探す際、ヤミクモに4枚のCDを入れ替えるのは避けたいからだ。
主力サーバの側でRPMリストを作ることにする。ダウンロードしたISOファイルをループバックマウントする。「mount -o loop FC4-i386-disc1.iso /fedora-install-cd」……げっ。ループバックデバイスには非対応と出た。ありゃ、カーネルのコンパイル時に追加するのを忘れたか? モジュールで追加できたっけ? あー、面倒くさ。まいーや、直接インストールCDをlsして目録を作ろう。主力サーバにはDVD-ROMとCD-Rが付いているから、まずは1と2を放り込んでlsの結果をファイルに格納する。
パッケージ目録を主力サーバの上に置いておいても仕方ないので、今回立てた実験サーバにftpしよう……おぅ!! イキナリftpできない。ftpサービスが上がってないっぽい。xinetdの設定を有効にせねば。確か「/etc/xinetd.d」の配下だったような……おろ?
[root@byakko etc]# ls -lrt /etc/xinetd.d
合計 56
-rw-r--r-- 1 root root 308 3月 29 03:36 kshell
-rw-r--r-- 1 root root 323 3月 29 03:36 krb5-telnet
-rw-r--r-- 1 root root 310 3月 29 03:36 klogin
-rw-r--r-- 1 root root 326 3月 29 03:36 gssftp
-rw-r--r-- 1 root root 323 3月 29 03:36 eklogin
-rw-r--r-- 1 root root 523 4月 20 18:01 cvs
-rw-r--r-- 1 root root 317 5月 18 03:08 rsync
[root@byakko etc]# service xinetd
xinetd: unrecognized service
げ。xinetdがインストールされていないっぽい。どうやら、Fedora4ではxinetdは標準でインストールされなくなったようだ。「ls /etc/init.d」により、確認してみる。うわぁ、sshもジカ上げしてるかよ。どういう心境の変化なんだろう? まいっか、一時的にftpだけ上げるか。「ls /etc/init.d | grep ftp」して「vsftpd」がそれっぽいコトを確認し「service vsftpd start」でftpデーモンを上げる。
余談だが、xinetdを「エックスアイネットディー」と読むと、とても読みにくい。実はちゃんと読み方があって「ザイネットディー」と読むらしい。ちなみに、xeviousを「エックスエビウス」と読むと、とても読みにくい。実はちゃんと読み方があって「ゼビウス」と読むらしい……後者は言うまでもないですか、そーですか。
余談をしている間に、主力サーバから実験サーバにftp接続……成功。しかし、ファイルが置けない。なんじゃ、ガチガチのセキュリティ設定やな。設定の変更が必要だが、面倒くさい……逆に持ってくるか。実験サーバから主力サーバにftp接続、パッケージ目録ファイルを持ってくる。アホくさ。こんなコトならハナからそうすりゃよかったわい。
さて、なんとなくではあるが、ココでマザーボード上のセンサを読み出すパッケージを入れてみたくなった。マザーボードには温度センサやファンの回転数を検知するセンサが乗っているのである。古いPCでもあるし、そいつらで動作状態を確認してみたくなった。早速、パッケージを探してみる。
[root@byakko ~]# grep sensor FedoraRPM/*
FedoraRPM/fedora4-1:-rw-r--r-- 18 root root 455296 2005-05-21 02:34 lm_sensors-2.8.8-5.i386.rpm
FedoraRPM/fedora4-4:-rw-r--r-- 10 root root 60368 2005-05-21 02:34 lm_sensors-devel-2.8.8-5.i386.rpm
[root@byakko ~]# rpm -ivh --test /media/cdrom/Fedora/RPMS/lm_sensors-2.8.8-5.i386.rpm
警告: /media/cdrom/Fedora/RPMS/lm_sensors-2.8.8-5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
エラー: Failed dependencies:
/usr/sbin/dmidecode is needed by lm_sensors-2.8.8-5.i386
依存性のエラー。dmidecodeというコマンドが必要らしい。dmidecodeをググってみると、kernel-utilsに含まれているらしい。だが、Fedora4にはkernel-utilsというパッケージが見当たらない。
しっかしDebianのapt-getに慣れるとrpmはかったるいなー。Redhatにもapt-getみたいなのなかったっけ? たしか「yum」とかいったような。使ったことないからよくわからん。ちなみに「yum」とは「あぁうめぇ」とか「うまいもの」とか「いい女」とかいう意味がある。腹が減ってきた。
[root@byakko ~]# grep dmidecode FedoraRPM/*
FedoraRPM/fedora4-1:-rw-r--r-- 13 root root 29590 2005-05-21 04:27 dmidecode-2.6-1.14.i386.rpm
[root@byakko ~]# rpm -ivh /media/cdrom/Fedora/RPMS/dmidecode-2.6-1.14.i386.rpm
警告: /media/cdrom/Fedora/RPMS/dmidecode-2.6-1.14.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing... ########################################### [100%]
1:dmidecode ########################################### [100%]
[root@byakko ~]# rpm -ivh /media/cdrom/Fedora/RPMS/lm_sensors-2.8.8-5.i386.rpm
警告: /media/cdrom/Fedora/RPMS/lm_sensors-2.8.8-5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing... ########################################### [100%]
1:lm_sensors ########################################### [100%]
[root@byakko ~]# sensors
Can't access procfs/sysfs file
Unable to find i2c bus information;
For 2.6 kernels, make sure you have mounted sysfs and done
'modprobe i2c_sensor'!
For older kernels, make sure you have done 'modprobe i2c-proc'!
sensor用のモジュールがカーネルに入ってないよ、と怒られる。「modprobe i2c_sensor」として、モジュールをロードし、改めて「sensors」……今度は「No sensors found!」とな? でも、動いた、とりあえず。確か、最初にセンサーを検知する必要があったような。名前はsensor-detectだっけ?
[root@byakko ~]# rpm -ql rpm lm_sensors-2.8.8-5 | grep detect
/usr/sbin/i2cdetect
/usr/sbin/sensors-detect
/usr/share/man/man8/i2cdetect.8.gz
/usr/share/man/man8/sensors-detect.8.gz
「sensors-detect」だった。早速、実行してみる「sensors-detect」……次々に面倒なコトをゴチャゴチャと聞かれるが、こんなもんは全部リターン空打ちでイケるんじゃ。よっしゃ。三度目の正直で「sensors」……「No sensors found!」……ないのかよ!! 最近のマザボならともかく、MMXPentium-233MHz時代のマザーですからな。そりゃ、センサー検知にも対応してないか……アキらめる、アッサリと。
なんだかクヤしいので、HDDの温度だけでも見てやろう。HDDには比較的古くから「SMART」というセルフモニタリング機能が仕込まれている。この機能はPCとはまったく独立に、HDD単体で継続的に統計情報をHDD内のフラッシュメモリに蓄える。温度だけでなく、スピンアップまでの時間とか、ミスシークの回数等も記録されており、これを見ることで、HDDの「くたびれ具合」を確認することができる。だから、必ずしも確実とはいえないが「カッコンカッコン」と言い出す前に、兆行を得られる可能性がある。文字通り、なかなかにスマートな機能ではないだろうか。
ちなみに、この実験サーバに内蔵のHDDはどんな素性のモノだったか忘れた。得られた統計情報が、あまりにヒドい有様なら、覚悟も決まる。交換するか、アキらめて使うか。いずれにせよ、HDDの危険度を知っておくコトは悪いことではない。パッケージを探そう。
[root@byakko ~]# grep smart FedoraRPM/*
FedoraRPM/fedora4-4:-rw-r--r-- 13 root root 263087 2005-05-21 04:27 smartmontools-5.33-1.5.i386.rpm
[root@byakko ~]# rpm -ivh /media/cdrom/Fedora/RPMS/smartmontools-5.33-1.5.i386.rpm
警告: /media/cdrom/Fedora/RPMS/smartmontools-5.33-1.5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing... ########################################### [100%]
1:smartmontools ########################################### [100%]
[root@byakko ~]# smartctl -a /dev/hda
smartctl version 5.33 [i386-redhat-linux-gnu] Copyright (C) 2002-4 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
=== START OF INFORMATION SECTION ===
Device Model: IBM-DJNA-351520
Serial Number: G80GLW8K854
Firmware Version: J56OA30K
User Capacity: 15,377,080,320 bytes
Device is: In smartctl database [for details use: -P show]
ATA Version is: 4
ATA Standard is: ATA/ATAPI-4 T13 1153D revision 17
Local Time is: Mon Sep 19 11:12:22 2005 JST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
General SMART Values:
Offline data collection status: (0x00) Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Total time to complete Offline
data collection: (1975) seconds.
Offline data collection
capabilities: (0x0b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
No Self-test supported.
No Conveyance Self-test supported.
No Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x00) Error logging NOT supported.
No General Purpose Logging support.
SMART Attributes Data Structure revision number: 5
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000b 100 100 060 Pre-fail Always - 0
2 Throughput_Performance 0x0005 100 100 050 Pre-fail Offline - 0
3 Spin_Up_Time 0x0007 125 100 024 Pre-fail Always - 292 (Average 280)
4 Start_Stop_Count 0x0012 100 100 000 Old_age Always - 2680
5 Reallocated_Sector_Ct 0x0033 100 100 005 Pre-fail Always - 0
7 Seek_Error_Rate 0x000b 100 100 067 Pre-fail Always - 0
8 Seek_Time_Performance 0x0005 100 100 020 Pre-fail Offline - 0
9 Power_On_Hours 0x0012 098 098 000 Old_age Always - 17588
10 Spin_Retry_Count 0x0013 100 100 060 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 737
197 Current_Pending_Sector 0x0020 100 100 000 Old_age Offline - 0
198 Offline_Uncorrectable 0x0008 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x000a 200 200 000 Old_age Always - 0
230 Head_Amplitude 0x0012 100 100 000 Old_age Always - 281470681350144
231 Temperature_Celsius 0x0002 117 100 000 Old_age Always - 47
Warning: device does not support Error Logging
Error SMART Error Log Read failed: Input/output error
Smartctl: SMART Error Log Read Failed
Warning: device does not support Self Test Logging
Error SMART Error Self-Test Log Read failed: Input/output error
Smartctl: SMART Self Test Log Read Failed
Device does not support Selective Self Tests/Logging
おっもしろーい!! んが、結局このHDDは健康そのものであった。こういう場合、何の問題もないHDDの方がむしろつまんないんだよな。仕方ないけどさ。ちなみに、特に興味深いのは後半の表であるが「Temperature_Celsius」が現在のHDDの温度を示している。摂氏47度だ。「Power_Cycle_Count」は、おそらく電源の投入回数。737回。「Start_Stop_Count」は、たぶんHDDのスピンアップ回数。2680回。「Power_On_Hours」は、きっと累計の稼働時間だろう。17588時間。んー、なんか、買ったばかりのHDDや、超ボロいHDDで、試してみたくなったぞ……ん!? 累計稼働時間が17588時間!? これって丸2年じゃん!! どうやら、先代のサーバに使ってたHDDを入れてるっぽいな、こりゃ。しかし、ほとんど無停止で2年も使っていて、こんなに健康そのものかよ。ある意味、優秀なHDDだな。驚いたよ。