人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

linuxで10台ぐらいあるサーバのdfの結果をまとめて取得するコマンド、もしくはシェルでどのように作成すれば良いか教えてください。

●質問者: raijin
●カテゴリ:コンピュータ
✍キーワード:DF Linux コマンド サーバ シェル
○ 状態 :キャンセル
└ 回答数 : 4/4件

▽最新の回答へ

1 ● y-kawaz

こんな感じで良いんじゃないでしょうか。

前提条件として各ホストに接続元から公開鍵認証が設定してあり、その鍵はパスフレーズ無しかssh-agent等でパスワードの入力が不要にしてあることが必要ですが。

hosts=""
hosts="$hosts host1"
hosts="$hosts host2"
hosts="$hosts host3"
hosts="$hosts host4"
hosts="$hosts host5"
for h in $hosts; do
 echo "===== $h ====="
 ssh $h df
done

http://q.hatena.ne.jp/answer


2 ● takerudayo

状況次第だと思われるので考えられる2種類の方法を提示します。

方法1:リモートシェルで全台接続が可能な状態の場合は、

10台のうち1台で以下のようなシェルを作成して実行してみてはいかがでしょうか。

rsh サーバ名A -l ユーザ名 /bin/df

rsh サーバ名B -l ユーザ名 /bin/df

rsh サーバ名C -l ユーザ名 /bin/df


方法2:telnet端末でのみ接続が可能な状態の場合は、

お使いのtelnetクライアントソフトのマクロ機能を利用して実現が可能だと思います。

何を使われていますか?


3 ● ramenboy

モニタリングエージェントなどが導入されていなければ、ssh経由などで取得するしかないですね。


#!/bin/sh

HOSTS="host1 host2 host3 host4 host5 ...."

for h in ${HOSTS}; do

echo "df on ${h}"

ssh ${h} "df -k"

echo

done


こんな感じでしょうか。sshの公開鍵は各サーバに登録しておいてくださいね。

http://www.google.com/


4 ● h_kondo

案1.10台のlinuxマシンでsnmpサービスを起動し、snmp問い合わせでディスク容量をチェックする。

snmpサービスが動いていればsnmpwalkで問い合わせればよい。

グラフを描く場合はMRTGとかを使用。

案2.10台のlinuxマシンでmunin-nodeサービスを起動、ncでディスク容量をチェックする。

グラフを描く場合はmuninを使用。

http://munin.projects.linpro.no/

munin-nodeが動いていれば

telnet localhost 4949

fetch df

とすればdiskの使用量が%で返ってきます。

plugins/dfのスクリプトを少々変更すれば%ではなく実際の使用量(bytes/blocks/Kbytes等)に替えられます。

telnetの代わりにnc (netcat)を使用すれば自動化も問題ありません。

nc localhost 4949 < fetch_df.txt

fetch_df.txtの中には"fetch df"を1行書いておく。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ