事象の水平線

横を無理やり伸ばしたので、デザインがおかしいけど、気にしない。完璧に時代に取り残されたHTMLをいまさらいじるのがめんどくさい。個人的ブックマーク代わりなメモ書きブログ。

WOL出来るようになり、電源を自動で切る仕組みはまだ考え中だけれども、必要なときだけ稼動するようにすると、いつどれだけ稼動していたか知りたくなる。

CentOSにも何かログを残す機能はあるだろうけど、まぁ、よく知らないので;;;;
なんかスクリプトで出来るんだろうと、テキトーにやってみました。

/etc/rc.d/init.d/ の中に RecordUptime.sh という名前で以下の内容のファイルを作りました。

#!/bin/sh

declare logdir=/home/share/log
declare log=/uptime.log

mkdir $logdir >/dev/null 2>&1

cat /proc/uptime | tr -d '\n' >> $logdir$log
printf ' ' >> $logdir$log
date >> $logdir$log


このスクリプトを実行するとこんな感じ
   437.03 385.67 Wed Sep 28 17:59:28 JST 2011
   スペース区切りで 前から
   稼働時間アイドル時間現在時間(曜日、月、日、時間、日本標準時、年)

超テキトーな説明 (コマンド少し覚えてきたょ)
1行目2行目
   ログのディレクトリとファイル名を変数に格納
3行目
   /home/share ディレクトリはある前提で。
   /home/share/log ディレクトリはSambaクライアントのWindowsで間違って消すかもしれないのでmkdir。
   >/dev/null 2>&1 はエラーメッセージ抑制。
4行目
   cat /proc/uptime で uptime(稼働時間)とアイドル時間を秒単位で取得し表示
   | tr -d '\n' は /proc/uptime からの出力の改行を削除
   >> $logdir$log で 表示先を/home/share/log/uptime.logに変更して追記で書き出し
5行目
   スペースを書き出し
6行目
   日付を書き出し


パーミッション変更
chmod 755 /etc/rc.d/init.d/RecordUptime.sh



/etc/rc.d/rc.local を変更  (起動時に実行されるらしい)

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

/sbin/ethtool -s eth0 wol g

touch /var/lock/subsys/RecordUptime
ln -s /etc/init.d/RecordUptime.sh /etc/rc0.d/K00RecordUptime
ln -s /etc/init.d/RecordUptime.sh /etc/rc6.d/K00RecordUptime


は デフォルト
ピンクは WOLの為のコマンド
が ShutdownとRebootのときに実行されるように今回追加した部分

超テキトーな説明
touch はファイルの更新時間を更新するらしい ファイルがないとファイルを作成
/var/lock/subsys/ 下に スクリプト名のファイルがないとShutdown時に実行しないらしい

ln -s はシンボリックリンクの作成
エイリアス(Mac)、ショートカット(Win)見たいなもんらしい
これで、/etc/rc[06].d/ 下に K??スクリプト名(??は数字) というシンボリックを作る
/etc/rc0.d 、 /etc/rc6.d はそれぞれのrunlevelで起動するスクリプトが入ってるらしい
で、runlevel0がShutdown runlevel6がRebootらしい
で、頭文字KとSがあって killとstartなのかな?
その後の二桁の数字はその数字の順番に実行されるらしい


残念ながらうまくいかなかった方法 → 『disklessfun’s Wiki*』さんの『Tips: (Linuxで)コンピュータの終了時にコマンドを実行する

とても参考になったよありがとう → 『Just another WordPress.com site』さんの『shutdown時のコマンド実行

<<訂正>>
エラーメッセージ抑止の方法を見直し
スポンサーサイト



PageTop

コメント

 ※
 ※
管理者にだけ表示を許可する
  ※ 必須項目です