SORU
18 Kasım 2008, Salı


Nasıl bir uygulama Linux üzerinde çalışmasını sürdürür emin olmak için

Senaryo geliştirme sunucusu üzerinde çalışan kalır sağlamak için çalışıyorum. Kalıcı olması için gerektiği kadar istatistikler toplar ve web servis sağlayıcı, henüz birkaç kez bir gün, bilinmeyen nedenlerden ötürü ölür. Biz sadece yeniden başlatmak görüyoruz, ama tam bir başbelası olduğunu ve bazı kullanıcıların izni (veya nasıl) uygulamayı başlatmak için gerek yok.

Programcı beni istiyor geçirmek için birkaç saat almak için alt problem ama meşgul kişi beni düşünüyor olmalı kolay bir şekilde tespit edilirse bir uygulama değil çalışan ve başlatma yine.

Ben biliyorumolabilircron komut grep: ps ile

ps -A | grep appname

Ama bir daha, bir saat daha hayatımı boşa yapıyor bir şey olmalı zaten... yok önceden yapılmış bir uygulama olduğunu söyleyebilirim pass çalıştırılabilir (isteğe bağlı olarak ile bağımsız değişkenler) ve bu devam edecek bir süreç çalışan süresiz?

Herhangi bir fark yaratır diye, Ubuntu.

CEVAP
26 Mayıs 2009, Salı


Cron ile basit bir script programının çalıştığından emin olmak için kullandım. Eğer değilse, o zaman başlatılır. Bu aradığınız mükemmel bir çözüm olmayabilir, ama bu basit ve oldukça iyi çalışıyor.

#!/bin/bash
#make-run.sh
#make sure a process is always running.

export DISPLAY=:0 #needed if you are running a simple gui app.

process=YourProcessName
makerun="/usr/bin/program"

if ps ax | grep -v grep | grep $process > /dev/null
then
    exit
else
    $makerun &
fi

exit

Ekleyin bir cron her dakika ya da 5 dakika ara.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • eisleyhead

    eisleyhead

    11 Ocak 2006
  • oHeymarvin

    oHeymarvin

    11 Temmuz 2013
  • UrAvgConsumer

    UrAvgConsume

    1 Ocak 2012