The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
помогите, пожалуйста!, !*! leou, 30-Мрт-07, 20:32  [смотреть все]
Я начинающий сисадмин. Опыта еще не хватает. Получил такое задание: есть скрипт бэкапа, в который надо вставить проверку на запуск процесса ontape. если ontape запущен, то на почту должно отправляться письмо (типа "Бэкап не запущен") и бэкап соответственно не запускаться. если ontape не запущен, то должен запускаться бэкап. Помогите, пожалуйста! Заранее благодарен!
  • помогите, пожалуйста!, !*! phpcoder, 22:14 , 30-Мрт-07 (1)
    >Я начинающий сисадмин. Опыта еще не хватает. Получил такое задание: есть скрипт
    >бэкапа, в который надо вставить проверку на запуск процесса ontape. если
    >ontape запущен, то на почту должно отправляться письмо (типа "Бэкап не
    >запущен") и бэкап соответственно не запускаться. если ontape не запущен, то
    >должен запускаться бэкап. Помогите, пожалуйста! Заранее благодарен!

    А как вам собственно помочь-то? За вас написать? Ну давайте, попробую сходу прикинуть, а уж дотачивать до работоспособного состояния сами будете?

    PID="`pidof ontape`" # можно юзать pgrep или парсить вывод ps
    if [ -z "$PID" ]; then
        # ontape запущен
        # отправляем письмо с помощью программы mail(1)
        ...
        exit 1
    fi


    • помогите, пожалуйста!, !*! leou, 20:57 , 02-Апр-07 (2)
      >>Я начинающий сисадмин. Опыта еще не хватает. Получил такое задание: есть скрипт
      >>бэкапа, в который надо вставить проверку на запуск процесса ontape. если
      >>ontape запущен, то на почту должно отправляться письмо (типа "Бэкап не
      >>запущен") и бэкап соответственно не запускаться. если ontape не запущен, то
      >>должен запускаться бэкап. Помогите, пожалуйста! Заранее благодарен!
      >
      >А как вам собственно помочь-то? За вас написать? Ну давайте, попробую сходу
      >прикинуть, а уж дотачивать до работоспособного состояния сами будете?
      >
      >PID="`pidof ontape`" # можно юзать pgrep или парсить вывод ps
      >if [ -z "$PID" ]; then
      >    # ontape запущен
      >    # отправляем письмо с помощью программы mail(1)
      >    ...
      >    exit 1
      >fi


      Спасибо огромное! Вот что у меня получилось:
      PID="`ps -A|grep ontape`"
      if [ -n "$PID" ]; then
         echo "ontape уже запущен. Backup не запущен." > $tmp     # ontape запущен
        /usr/bin/mail -s 'Warning! Backup!' $addrs1 < $tmp     # отправляем письмо mail(1)
          exit 1
      fi
      Я Вам очень благодарен за помощь!

      • помогите, пожалуйста!, !*! dronord, 14:02 , 05-Апр-07 (3)
        PID="`ps -A|grep ontape`"
        if [ -n "$PID" ]; then ...

        Неправильно! Вы можете потерять бэкап.
        Команда "ps -A|grep ontape" может найти "grep ontape" и тогда ваше условие тоже будет верно, но ведь это не так?

        Если ontape работает в одном экземпляре либо неважно количество - используйте pidof!

        Если их несколько, они выполняют разные задачи, а Вам нужен конкретный процесс с конкретными параметрами запуска, нужно вручную разбирать вывод "ps -A|grep ontape". Либо окружить запуск ontape скриптом, который создаст файл-флаг и уже Ваш скрипт будет проверять этот флаг.

        • помогите, пожалуйста!, !*! leou, 14:15 , 05-Апр-07 (4)
          >PID="`ps -A|grep ontape`"
          >if [ -n "$PID" ]; then ...
          >
          >Неправильно! Вы можете потерять бэкап.
          >Команда "ps -A|grep ontape" может найти "grep ontape" и тогда ваше условие
          >тоже будет верно, но ведь это не так?
          >
          >Если ontape работает в одном экземпляре либо неважно количество - используйте pidof!
          >
          >
          >Если их несколько, они выполняют разные задачи, а Вам нужен конкретный процесс
          >с конкретными параметрами запуска, нужно вручную разбирать вывод "ps -A|grep ontape".
          >Либо окружить запуск ontape скриптом, который создаст файл-флаг и уже Ваш
          >скрипт будет проверять этот флаг.


          Насколько я знаю "grep ontape" находит команда ps -Af|grep ontape.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру