1. Logwatch導入
①インストール
# vi /etc/logwatch/conf/logwatch.conf
「MailTo = root」の行頭に「#」を挿入し、その下行に通知を受け取りたいメールアドレスを設定
#MailTo = root
MailTo = [メールアドレス] ●79行目あたりログ通知の詳細度を設定
#Detail = Low
Detail = High
③Logwatch のレポートを出力
################### Logwatch 7.6 (01/22/22) ####################
Processing Initiated: Fri May 13 09:41:46 2022
Date Range Processed: yesterday
( 2022-May-12 )
Period is day.
Detail Level of Output: 10
Type of Output/Format: stdout / text
Logfiles for Host: fedora
###########################################################
--------------------- Amavisd-new Begin ------------------------
<中略>
-------------------- Disk Space Begin ------------------------
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/fedora_fedora-root 15G 4.4G 11G 30% /
/dev/nvme0n1p1 1014M 245M 770M 25% /boot
---------------------- Disk Space End -------------------------
###################### Logwatch End #########################
2. DiCEのインストール
ネットが切断されたり、ルーターが切断再起動したときにおこるグローバルIPの変更の度に、ダイナミックDNSにアクセスしグローバルIPが変更されたことを知らせなくてはいけません。その作業を自動的にやってくれるのがDiCEです
①Diceのダウンロード、インストール
# wget https://centos.rcg.jp/download/DiCE.tar.gz --no-check-certificate
# tar -xzvf DiCE.tar.gz
# cd ./DiCE
DiCEの出力文字はEUCのため、文字化けしてしまう。UTF-8に変換するために、nkfをインストールしておく
# ./diced | nkf -uw
DNSサービスはVALUEDOMAINとした場合
: add
DynamicDNSサービス名を入力してください
"?"で対応しているサービスを一覧表示します
(P)戻る
>VALUEDOMAIN
ドメイン名を入力してください
"?"でドメイン一覧を表示します
(P)戻る
><ドメイン名>
ホスト名を入力してください
(P)戻る
><ホスト名>
ログインユーザ名を入力してください
(P)戻る
><ユーザー名> ←VALUEDOMAINに登録したユーザー名
ログインパスワードを入力してください
(P)戻る
><passwd> ←VALUEDOMAINにログインするパスワード
登録するIPアドレスを入力してください
空白にすると現在のIPアドレスを自動検出します
(P)戻る
>空白
このイベントに題名を付けてください
(P)戻る
>xxxxxxxxx(適当に付ける)
実行する頻度を指定してください (番号入力)
(0)1回のみ (1)1日1回 (2)1週間に1回 (3)1ヵ月に1回
(4)その他の周期 (5)IPアドレス変化時 (6)起動時
(P)戻る
>5 (任意に決める)
IPアドレスがあまり変化しない環境の場合、更新せずに一定期間を過ぎると
アカウントを削除されてしまうことがあります
IPアドレスの変化が無い時に実行する間隔を指定してください
(0)7日毎 (1)14日毎 (2)21日毎 (3)28日毎
(4)35日毎 (5)56日毎 (6)84日毎
(P)戻る
>0(任意に決める)
このイベントを有効にしますか? (Y/N)
(イベントの有効/無効は"EN/DIS"コマンドで切替えられます)
>y
イベントを保存しますか? (Y/N)
>y
イベントの確認
list
(No.) (イベント名) (スケジュール) (次回予定)
0 * xxxxxxxxx IPアドレス変化時 (7日毎) 01/27 06:27ー
手動実行
:ex 0
+ 1/20 6:33 にddns_valuedomainが実行されました
IPアドレスを更新しました
:exit
DiCEデーモンを起動する
# /usr/local/bin/DiCE/diced -d -l
-=-=- DiCE DynamicDNS Client -=-=-=
Version 0.19 for Japanese
Copyright(c) 2001 sarad
DiCE Daemon Started !!
起動しているか確認
root 11121 1.3 0.0 3960 132 ? Ss 10:47 0:00 /usr/local/bin/DiCE/diced -d -l
root 11124 0.0 0.0 4584 2200 pts/0 S+ 10:48 0:00 grep --color=auto diced
/usr/local/bin/DiCE/diced -d -l (追記)
3.ディスク使用率チェックスクリプト導入
3.1 スクリプト作成
# vi disk_capacity_check.sh
#!/bin/bash
#通知先メールアドレス指定
MAIL="<your mailaddress> "
DVAL=`/bin/df / | /usr/bin/tail -1 | /bin/sed 's/^.* \([0-9]*\)%.*$/\1/'`
if [ $DVAL -gt 80 ]; then
echo "Disk usage alert: $DVAL %" | mail -s "Disk Space Alert in `hostname`" $MAIL
fi
3.2 実行確認
①現在の使用率を確認
次のように表示される
devtmpfs 873M 0 873M 0% /dev
tmpfs 893M 0 893M 0% /dev/shm
tmpfs 893M 8.8M 884M 1% /run
tmpfs 893M 0 893M 0% /sys/fs/cgroup
/dev/mapper/rl_rocky-root 17G 6.2G 11G 38% /
/dev/nvme0n1p2 1014M 208M 807M 21% /boot
/dev/nvme0n1p1 599M 5.8M 594M 1% /boot/efi
tmpfs 179M 0 179M 0% /run/user/1000
②使用率80%以上になるようダミーファイルを作成(例ではdummyfile という名前で9G程度)
# dd if=/dev/zero of=dummyfile bs=1M count=9000
③再度確認
を実行して80%以上になっていることを確認
④ディスク容量チェックスクリプトを実行
設定したメールアドレスに本文の内容として「Disk usage alert : 92%」のように記載のメールが届きます
⑤作成した「dummyfile」を削除
⑥定期実行設定
30 2 * * * /var/www/system/disk_capacity_check.sh