hiroaki のすべての投稿

HDDの換装

とりあえず送られてきてから正常起動することだけ確認して
壊れたノートで使っていた60G、5400rpmのHDDに換装することにした。

C8のHDD換装のページは沢山あると思うのでそちらを参考にされると良いでしょう。

換装してOSをクリーンインストール。
ドライバ類は東芝のHPからダウンロードしてきてインストールして終了。
40GのHDDより随分早くなりましたね。

dynabook C4110 購入

自宅のノートPCが壊れたので安価な中古ノートPCを購入すべくヤフオクに潜入!

Dynabook C4110を2万円台で落札。
 ※Dynabook C4110はC8のビジネス版です。基本仕様はC8と同じです。

落札時のスペック

モデル名dynabook C4110 DC13L/2モデル
プロセッサIntel Pentium Mプロセッサ1.30GHz
OSMicrosoft Windows XP
チップセットIntel 855GMチップセット
メモリ256MB×2
内部ディスプレイ12.1型XGA TFTカラー液晶 1,024×768ドット
ハードディスク40GB(Ultra ATA100対応)
光学ドライブCD-ROM 読出最大24倍速、12/8cmディスク対応、ATAPI接続
モデム最大56kbps(V.90対応、ボイスレス、世界61地域対応)、FAX:最大14.4kbps
LAN100Base-TX/10Base-T(自動認識)
サウンド機能AC97準拠PCIバス接続サウンドシステム(16ビットステレオ)、
ステレオスピーカ内蔵、モノラルマイク内蔵
PCカードスロットTYPEⅡ×2スロットまたはTYPEⅢ×1スロット
SDカードスロット1スロット

LinuxからWindowsを再起動(シャットダウン)

WakeOnLanに続きLinuxからWindowsを再起動(シャットダウン)する方法です。

まず最初に試してみたのがsmbをインストールすると使えるrpcclientです。

rpcclient -U username%password -N -W yourWorkGroup -c ‘shutdown -r’ yourPCName

早速実行してみる。
invalid command

コマンドがダメだと怒られる・・・
色々調べてみたけど解決策は見つからず。
どうもこのコマンドではうまく行かないようです。

他に方法が無いものかと調べていたらnetコマンドで対応できるようです。

net rpc shutdown -r -t 30 -S yourPCName –workgroup=yourWorkGroup -U username%password –comment=”comment”
↑これは一行で書きます。

以下は各コマンドオプションの説明です。

shutdown -r
これは再起動の命令です。shutdownと-rを取ればシャットダウンに変更できます。
(私の環境ではシャットダウンしてもWindowsは正常に終了するものの電源が完全に落ちませんでした。)

-t 30
シャットダウンするまでの時間(秒数)です。
コマンドが正常に受理されるとWindowsにシャットダウンする事を伝えるダイアログが出現し指定した秒数のカウントダウンが始まります。

-S yourPCName
再起動するPC名を指定します。-Sで指定する場合はコマンドを実行するLinux側で名前解決できている必要があります。
もしIPでPCを指定する場合は -I オプションでIPを指定してください。

–workgroup=yourWorkGroup
再起動するPCが属しているワークグループ名です。
(これはなくても実行可能かも)

-U username%password
再起動するPCのユーザー名とパスワードを指定します。ユーザー名とパスワードの間に%を入れるのを忘れないで下さい。

–comment=”comment”
コマンドが正常に受理されるとWindowsにシャットダウンする事を伝えるダイアログが出現します。
このダイアログにコメント欄がありそこにここで指定したコメントが表示されます。
もしも誰かが再起動するマシンを操作していた場合にワームによる再起動と間違われないようにコメントは書いておきましょう。

afioでフルバックアップ

Linuxでのフルバックを取るには本来はシングルモードで起動しdumpコマンドでHDD丸ごとバックアップが最善なのでしょうが24時間運用では非常に難しいです。

動いてるLinuxを完全にバックアップするのは難しいかもしれませんが丸々無くなるよりはましなのでとりあえずフルに近い形でバックアップを取ります。
tarやzipで固めてもいいのですがafioを使えば圧縮破損ファイルが存在しても未破損のファイルは取り出せるので非常に便利です。
今回はafioを使ったバックアップを行います。

まずはafioをインストールします。
apt-get install afio

インストールはこれだけです。

詳しい使い方は afio –help で出て来るので見てみてください。

まず / ディレクトリに移動します。
cd /

そしてafioコマンドを使用してバックアップを実行します。(以下は1行です)
find . | egrep -v ‘^\./proc/|^\./バックアップ先/’ | afio -ovZ -L /バックアップ先/fullbackup.log /バックアップ先/fullbackup.afz 2>&1 | tee /バックアップ先/fullbackup.lis

これはprocと/バックアップ先 ディレクトリを除く全てのバックアップを取るコマンドになります。

ちなみにリストアコマンドは以下になります。
まず / ディレクトリに移動します。
cd /

afio -ivZ /mo/fullbackup.afz

参考サイトafio でのバックアップ
※既にリンク先のサイトはなくなっているようです

ログを監視しメールを自動送信する。

Apache2のログ監視はanalogをインストールし既に行ってました。
また、サーバーの各ステータスもMrtg+RRDTOOLで監視を行っていました。
そこで今回はsyslogなどの実際のログを監視して自動でメールを送信してくれるlogwatchをいうアプリをインストールします。
※このアプリを動かすためにはmailutils、exim4などのメール送信に必用なパッケージをインストールしmailコマンドでメール送信が出来るように設定する必要があります。

まずインストールですがこれは非常に簡単です。
apt-get install logwatch

インストールされたらlogwatchの設定を変更します。
vi /usr/share/logwatch/default.conf/logwatch.conf

変更点は以下の点になります。

変更前:MailTo = root
変更後:MailTo = your_address@your_host.com
↑送信したいメールアドレスに書き換えます。(mailコマンドで送信できるアドレスであることが前提)

変更前:#Archives = No
変更後:Archives = Yes
↑logがlotateされた場合を想定

変更前:Detail = Low
変更後:Detail = Med
↑好みのログレベルに設定してください。(文字列ではなく数値で指定も可能です)

設定が完了したらテストで実行してみましょう。
/usr/sbin/logwatch

実際に設定したアドレスにメールが送信されてくれば設定は完了です。

ちなみにcronにはインストール時に自動で登録されています。
(1日1回自動実行されてメールが送られてきます)
debianでのcronへの自動登録はdailyに登録されるのでAM6:25に実行されます。
時間などを変更したい場合はcron.dailyから削除しcrontabに自分で登録してください。

送られてくる内容で注意すべきなのは
pam_unix、SSHD、Disk Space、kernelの項目でしょうか。(kernelはエラー出ないと送られてこないようです)

pam_unixはLinuxのpam認証を表示しています。

SSHDはその名の通りsshへの接続を示しています。
許可していないユーザーでのログインがあれば不正アクセスの可能性もありますので注意が必要です。

Disk Spaceは一杯になる前にどうにかしましょう(笑)

kernel項目に関しては出力されていれば解析、調査が必要ですね。

最後に
 logwatchを導入すると毎日定期でlogの結果が送信されてきます。
誰しも最初は注意深く見るのですが平和な日々が続きますと次第に見なくなったり軽く読み飛ばしたりするようになりがちです。
しかし、それではlogwatchを導入した意味は全くありません。
mrtgの様にグラフでの傾向は示してくれませんが毎日logに目を通すことで障害を未然に防げたり
発生した障害による被害を広げないことも可能になります。
このツールの本当の真価はlogをチェックする人の対応力に尽きると思います。

抜け殻+新品HDD=超安LinkStation

LinkStationの抜け殻を使ってLinkStationを再生します。
※新品HDDを組み込んだだけでは起動してくれないARM系のLinkStationを対象にしています。

通常はLinuxにHDDを繋いで必要なファイルを書き込んでHDDをLinkStationに戻しますが
今回はお手軽に再生する方法を紹介します。

お手軽にということでシリアルコンソールも使用せずに再生したいと思います。
LinkStationに新品HDDを取り付けて起動するとbootディレクトリ(必要なファイルも)が存在しないのでLinkStationは内部的にはtftp経由で起動しようとします。

そこでtftpを使ってbootイメージをLlinkStationに転送しEMモード(復旧モード)で起動し
そこからファームウェアのアップデートでHDD内に必要なファイルを作成します。
使用するソフトはTFTPサーバー Poor TFTP Server for WIN32というソフトです。
Windows上で起動することでtftpサーバーとして動作するソフトです。
※既にリンク先のサイトはなくなっているようです

tftpで転送する為のboot用ファイルをまずは用意します。
Buffaloのサイトから該当するLinkStationのファームウェアをDLしてきます。
転送に必要なファイルは initrd.buffalo uImage.buffalo の二つです。
これらのファイルはファームの中に圧縮ファイルとして存在するので解凍して取り出します。
initrd.imgを解凍するとinitrd.buffaloが取り出せますがZIPのPASSを求められるので下のどれかを入れてください。

1NIf_2yUOlRDpYZUVNqboRpMBoZwT4PzoUvOPUp6l
aAhvlM1Yp7_2VSm6BhgkmTOrCN1JyE0C5Q6cB3oBB
YvSInIQopeipx66t_DCdfEvfP47qeVPhNhAuSYmA4
IeY8omJwGlGkIbJm2FH_MV4fLsXE8ieu0gNYwE6Ty

二つのファイルをtftpのディレクトリに置けば準備完了です。
LinkStationのtftp起動時はLlinkStationのIPは192.168.11.XXXとなっており
192.168.11.1のtftpサーバーに接続しようとします。
ですのでtftpサーバーを起動するPCのIPを192.168.11.1に変更してからtftpソフトを起動してください。
tftpサーバーソフトを起動させたらLinkStationの電源をONにしてtftp起動させます。
※同じハブなどにPCとLinkStationをLANで接続してから行ってください。

tftpでbootイメージが転送されるとtftpサーバーソフトに転送されたメッセージが出て
LinkStationのLEDがオレンジ色に光り起動するはずです。
この状態がEMモードとなります。

EMモードになったらtftpを起動したPCで通常と同じようにファームのアップデートを行ってください。
HDDのパーティション設定やフォーマットまでやるのでそれなりの時間が掛かります。
これで新品のHDDからLlinkStaionの再生は完了です。

どうしてももエラーになる場合などは内部的に何が起こっているのか全く分からないので
どうしてもシリアルコンソールが必要になります。
何台も再生させる人や色々とイジリ倒したい人は素直にシリアルコンソールを取り付けましょう(笑)