SVX日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|

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

  あった。1枚目のCDだ。えー、Fedoraのマウントポイントは「cat /etc/fstab」っと「/media/cdrom」ね。「mount /media/cdrom」して、インストール。

[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」とは「あぁうめぇ」とか「うまいもの」とか「いい女」とかいう意味がある。腹が減ってきた。

  ググった先で見つけたコマンドをマネしてみる、「yum info kernel-utils」……遅い。あまりに時間がかかるので、別端末にて別方向で作業を進めてしまう。

[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%]

  dmidecodeパッケージが入った。改めて、lm-sensorsパッケージを入れる。

[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%]

  コイツも入った。イキナリ「sensors」して結果を求めようとしてみる。

[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だな。驚いたよ。

  さて、余計なコトばかりしているので、なかなか目的のクラッシュダンプ機能のテストまで行き着かないが、今日はココまでとする。では。