Linuxサーバーのマウントポイントの状態を確認するシェルスクリプト

Linuxサーバーのマウントポイントの状態を確認するシェルスクリプト

次のように動作するスクリプトが必要です。

この特定のマウントポイントが現在サーバーにマウントされていることを確認するスクリプト。マウントポイント名を検索し、出力/etc/fstabdf -h確認するか、/proc/mountsサーバーにマウントされていることを確認します(検証するためのより良い方法がある場合でも問題ありません)。

再起動後にインストールされていない場合は、電子メールがトリガーされます。

1つのサーバーであれば問題ありませんが、1000を超えるサーバーを認証するために使用されるため、スクリプトはより良いソリューションになります。

したがって、スクリプトはあるサーバーで実行され、別の1000サーバーでマウントポイントの状態を確認します。

サーバーのマウントポイント名は等です/mount1。特定のマウントポイント名と他のOS関連FSを無視できることを確認してください。/mount2/mount3

私が今まで持っているもの:

#!/bin/bash

# Grep for word mountpoint name ie "mount" 
awk '{print $2}' /etc/fstab | grep -i "mount" > mntpoint.txt
exec 3< mntpoint.txt

while read mount <&3
do
# Search for present mountpoint in file /prod/mounts.
# I'm using /proc/mounts here to validate

grep -iw $mount /proc/mounts > /dev/null

if [ $? -eq 0 ]
then
    echo $mount "is mounted"
else
    echo $mount "is not mounted needs manual intervention"
fi
done

ベストアンサー1

Pythonで試してみることをお勧めします。組み込みos.pathモ​​ジュールには非常にシンプルなismount機能があります。

$ cat ismount.py 
import os
mp = '/mount1'
if os.path.ismount(mp):
    print('{0} is mounted'.format(mp))
else:
    print('{0} is NOT mounted'.format(mp))
$ python ismount.py 
/mount1 is NOT mounted

おすすめ記事