Сценарий оболочки для проверки состояния точки монтирования в сервере Linux

Мой коллега нашел pykg-конфигурацию, которая оказалась намного быстрее, затем pkg-конфигурируются.

2
13.09.2013, 02:57
4 ответа

Попробуйте что-то вроде этого. Сначала создайте список дюйм/с сервера (это предполагает, что Вы имеете пароль меньше ssh настроенный и можете соединиться, поскольку корень ко всем разъединяет), затем, запустите этот небольшой скрипт (вставка копии в командную строку):

while read ip;
do
    echo "connecting to $ip";
    ssh root@$ip "until mount | grep -w \"$MOUNT\" >/dev/null;
     do echo mounting \"$MOUNT\"; mount \"$MOUNT\"; sleep 1; done && 
     echo Mounted on $ip"
done < ips.txt

Это ожидает названный файл ips.txt с одним IP на строку. Это будет ssh в IP, и в то время как монтирование $MOUNT не смонтирован, это попытается сделать так. Удостоверьтесь, что заменили $MOUNT с точкой монтирования Вы интересуетесь, это должно появиться точно, как это выполняет /etc/fstab. Например:

while read ip;
do
    echo "connecting to $ip";
    ssh root@$ip "until mount | grep -w \"/mnt/data\" >/dev/null;
     do echo mounting \"/mnt/data\"; mount \"/mnt/data\"; sleep 1; done && 
     echo Mounted on $ip"
done < ips.txt
0
27.01.2020, 22:23

Я рекомендовал бы пробовать это в 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
1
27.01.2020, 22:23
#!/bin/bash

A=``awk '{print $2}' /etc/fstab | grep -i "^/" | egrep -v '/etc/fstab|proc|sys|shm|pts`'`

`for i in $A; do
grep $i /proc/mounts > /dev/null`

`if [ $? -eq 0 ]; then
    echo $i "is mounted"
else
    echo $i "is not mounted needs manual intervention"
fi
done`
0
27.01.2020, 22:23
  • 1
    Это возвратит ложные положительные стороны, если путь будет подстрокой большей точки монтирования. –  Chris Down 31.12.2013, 07:28

Сценарий, предоставленный LG, работает нормально, когда вы Измените GREP в контуре для:

grep "$i " /proc/mounts.

в этом случае он не будет возвращать ложные срабатывания.

0
27.01.2020, 22:23

Теги

Похожие вопросы