2017-03-05 3 views
0

私は、/ varが最大しきい値に達するとsnmpアラートを送信するプログラムに取り組んでいます。私はこのために/ varディスク使用量の%を計算することに問題があります。/varファイルシステム使用率がしきい値に達すると警告するプログラム

私はこのコマンドを "du -hs/var"とすると、/ varはMBで、/ varは/ rootディレクトリにあります。だから、/ varが存在するディスク全体を計算するには、以下のコマンドdf -ksを実行しました。これは/と私が使用すべきかどうかわからないいくつかの%を合計します。誰かが%を計算するコマンドを手伝ってください。

+0

[df'コマンド](http://man7.org/linux/man-pages/man1/df.1.html)はすでに%をあなたに与えていますか? –

+0

はいそれは私に%を与えます。私が探していたのは、適切なフォーマットされた出力です。 –

答えて

0

これは機能しますか?

df /var | tail -1 | sed -r 's/.* ([0-9]+%).*/\1/' 

これを分解:

df /varは、ヘッダと/varための1つの行を出力します。

tail -1ヘッダーを削除します。

sedコマンドは行を編集し、使用率をキャプチャし、残りの部分は廃棄します( )。言い換えれば、「 のスペースまですべてをマッチさせ、その後に1つ以上の数字とパーセント記号を続けて書くことができます。 数字とパーセント記号をキャプチャします。行の残りの部分と一致する。 行をキャプチャされた部分に置き換えてください。

これは、人間が判読可能な、パーセント記号付きの数字を生成します。あなたがsnmpdを使用している場合、あなただけのsnmpd.confにこれを追加する必要があります

df /var | tail -1 | sed -r 's/.* ([0-9]+)%.*/\1/' 
+0

私は質問があります:df/varは私にこの出力を与えます:df/var ファイルシステム1Kブロック使用可能使用率 /dev/mapper/vg_mdm108-lv_rootにマウントされました 94459756 7756860 81897880 9%/これは// dev/mapper/vg_mdm108-lvisが/ varにマウントされています –

+1

正しいです。 '/ dev/mapper'文字列は、論理ボリュームマネージャによって提供される仮想ファイルシステムです。それについて学ぶ必要がある場合は、この記事が優れた紹介であることがわかりました:https://linuxconfig.org/linux-lvm-logical-volume-manager。 –

+0

ありがとうございました。私はそれを得る.. –

2

: コンピューティングのために、あなたはおそらくなしパーセント 記号を数をしたい

disk /var 80% 

これが生成されます。 /varパーティションが80%の使用率に達したときにトラップします。

df -k /varコマンドの結果を使用する場合は、Use%カラムを使用してください。

+0

snmpd.confの提案をありがとう。私はそれについて、そしてdf -k/varコマンドについては知らなかった。私はフォーマットされた出力を探していました。 –

関連する問題