Skocz do zawartości
Zaloguj się, aby obserwować  
ArabSmall

Komenda killall - zabijanie wyznaczonych procesów

Polecane posty

Witam, szukam i kombinuje sam lecz nie mogę swojego problemu rozwiązać. A dokładnie chciałbym poprzez komendę

killall

(lub inną jeśli jest możliwość) zabić proces o danej nazwie ponieważ serwery uruchamiam taką komendą

screen -dmS ventrilo214 ./ventrilo_srv

i teraz chciałbym zabić ten proces, ale używając

ventrilo214

tylko nie wiem jak. Komenda

killall -9 ventrilo214

wypluwa komunikat

ventrilo214: no process killed

bo proces nazywa się

ventrilo_srv

a proces o screenie nazywa się tak

SCREEN -dmS ventrilo214 ./ventrilo_srv

a tego procesu zabić nie mogę. Dlatego chciałbym się spytać czy jest możliwość zabicia procesu o nazwie jaką ja podam podczas uruchamiania jakiegoś serwera?

  • Upvote 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A to nie lepiej znaleźć tobie w ps-aux pid procesu i zrobić kill i potem pid procesu np. kill 123

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A to nie lepiej znaleźć tobie w ps-aux pid procesu i zrobić kill i potem pid procesu np. kill 123

 

Tylko że wyłączanie serwera ma być przez .php :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie rozumiem tu jednego, dlaczego uruchamiasz vt komenda w screenie o ile pamiętam wystarczy wpisać ./ventrilo_srv

Spróbuj killall ./ventrilo_srv a jak nie to tak jak mówiłem przez ssh ps -aux tam weź pid procesu i potem kill i pid tak jak pisałem wcześniej.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie rozumiem tu jednego, dlaczego uruchamiasz vt komenda w screenie o ile pamiętam wystarczy wpisać ./ventrilo_srv

Spróbuj killall ./ventrilo_srv a jak nie to tak jak mówiłem przez ssh ps -aux tam weź pid procesu i potem kill i pid tak jak pisałem wcześniej.

Po włączeniu normalnie

./ventrilo_srv

i wyjściu z konsoli serwer się uruchamia, a co do pid'a to jak już pisałem odbywa się to przez .php (start, stop, restart). Dlatego jakbym chciał tego użyć musiałbym wpisać pid do pliku .php.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Lepszym rozwiązaniem było by napisać skrypt do init.d i w nim dodać opcje start,stop,restart. I wtedy z php wywołujesz shell_exec ./vent start . Miałem taki panel napisany przeze mnie i działał. Ale tak jak mówię musiał mieć skrypt init. Jeśli chcesz mogę ci takie coś pomoc zrobić. Kwestia tego że "nie jest to nawet podstawa php" a form i troche php tongue.png

Edytowano przez SanKen (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Lepszym rozwiązaniem było by napisać skrypt do init.d i w nim dodać opcje start,stop,restart. I wtedy z php wywołujesz shell_exec ./vent start . Miałem taki panel napisany przeze mnie i działał. Ale tak jak mówię musiał mieć skrypt init. Jeśli chcesz mogę ci takie coś pomoc zrobić. Kwestia tego że "nie jest to nawet podstawa php" a form i troche php tongue.png

Używam SSH2, a co do init.d to nie będzie pasować ponieważ mam 2 userów (po 2 serwery) to musiałbym w pliku ustawić poprawnie ścieżki do tych katalogów. Mógłbym również odpalać procesy bez screen'a, a wtedy "zabijać" całego usera, ale jak pisałem wcześniej 1 user może mieć kilka serwerów (np. VT + CS) i to zamknie mi oby 2 serwery, a nie tylko 1 jakbym chciał.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Tworzysz skrypt który odpali ci serwer na koncie innego usera niż root. Dodasz tam parametry startowe takie jak zapis pliku pid, czy logowanie do pliku.

 

Nie chodzi mi o to by jeden skrypt obsługiwał 2,3 serwery. Do jednego serwera jeden w katalogu serwera. A co do screena to chyba lepiej bez.

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ę

Zaloguj się, aby obserwować  

×