Skocz do zawartości
northwest

Uruchamianie programu w tle

Polecane posty

Witam serdecznie,

mam takie polecenie

(uruchamianie programu napisanego w .NET poprzez MONO)

mono /home/aplikacje/a.exe

 

chciałbym to uruchomić jako proces, w tle... tak żeby po zamknięciu sesji w putty program dalej pracował. Próbowałem takim poleceniem:

screen -A -m -d -S mono /home/aplikacje/a.exe

 

ale niestety nie działa... ;)

 

 

Wie ktoś może dlaczego?

 

Z góry dziękuje za pomoc.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Sprubój tego.

Uruchomienie aplikacji
mono /home/aplikacje/a.exe
Uruchomienie aplikacji w tle
mono /home/aplikacje/a.exe &
Uruchomienie aplikacji w tle i niewypisywanie komunikatów
mono /home/aplikacje/a.exe 2>/dev/null &

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

zadziałało to:

screen -A -m -d -S `mono /home/aplikacje/a.exe` ;)

 

chyba działa )) mam jeszcze parę pytań w związku z tym:

1. Jak sprawdzić czy mój ww program jest uruchomiony (da się jakoś wyświetlić informacje o nim, o zajmowanej przez niego pamięci itp)?

2. Jak "zabić" aplikację?

3. Czy da się zrobić jakiś automat, który sprawdzałby czy aplikacja jest uruchomiona - i w przypadku gdyby nie była, to uruchamiałby ją?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

1. Komenda ps aux |grep a.exe wyświetli Ci czy jest proces który zawiera w nazwie a.exe, wyświetlenie wszystkich procesów to ps aux

2. Po wyświetleniu procesu bierzesz nr PID i wpisujesz kill -9 PID

3. Tak, oczywiście:

 

#!/bin/bash

APP="a.exe"
SKRYPT=`mono /home/aplikacje/a.exe`

if [ ! `ps aux |grep $APP` ]; then
$SKRYPT
fi

 

Skrypt dopisujesz do cron'a.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

/etc/cron.hourly - skrypty wykonywane co godzinę

a jakbym chciał sprawdzać co 3 minuty to do którego katalogu skopiować ten skrypt?

 

/etc/cron.d ??

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

na konsoli wpisz:

crontab -u users -e

i wpisz */03 * * * * sciezka do skryptu >/dev/null 2>&1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

oki, wkleiłem ten plik ze skryptem i dodałem takiego cron taba:

*/03 * * * * /home/aplikacje/system.sh >/dev/null 2>&1

 

da się jakoś sprawdzić czy to działa?

ps. da się zrobić powiadamianie email o uruchomieniu aplikacji przez skrypt?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dopisz do skryptu, że przy działaniu ma wykonywać dodatkowe procedury np wysyłyać e-maila czy chociaż zwykłe: echo "skrypt działa" >> moj_skrypt.txt :D

 

Poczytaj o crontab'ie

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
oki, wkleiłem ten plik ze skryptem i dodałem takiego cron taba:

*/03 * * * * /home/aplikacje/system.sh >/dev/null 2>&1

 

da się jakoś sprawdzić czy to działa?

ps. da się zrobić powiadamianie email o uruchomieniu aplikacji przez skrypt?

Jak pozbędziesz się tego beznadziejnego >/dev/null 2>&1 na końcu, to wszystko co wyprodukuje skrypt będzie wysyłane do właściciela cron'a.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
jest może jakis log, czy coś które mówi czy ww kod działa, czy też nie??
Jak nie sypie błędami to znaczy, że działa :D Zresztą zabij swoją aplikację to się przekonasz :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

niestety ten skrypt:

#!/bin/bash

 

APP="a.exe"

SKRYPT=`mono /home/aplikacje/a.exe`

 

if [ ! `ps aux |grep $APP` ]; then

$SKRYPT

fi

 

wywołany: crontab -u root -e

*/01 * * * * /home/aplikacje/system.sh >/dev/null 2>&1

 

 

nie działa ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×