Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
Autorestart
Temat rozp. Nx, 22.11.2009 09:47
6 odpowiedzi w tym temacie
#1
Napisano 22.11.2009 09:47
Witam.
Mam pytanie, czy jest taki skrypt co by mi autorestartował hlds po crashu ?
Chodzi mi oto, że jak jest crash serwa to, żeby mi automatycznie uruchomił ? Mam vps
Mam pytanie, czy jest taki skrypt co by mi autorestartował hlds po crashu ?
Chodzi mi oto, że jak jest crash serwa to, żeby mi automatycznie uruchomił ? Mam vps
#2
Napisano 22.11.2009 11:04
Polecam skrypt o nazwie ServerChecker
Opis działania :
( skrypt nie mojego autorstwa )
Opis działania :
Dzięki temu, gdy serwer przestanie odpowiadać (zawiesi się) to skrypt wykona inny odpowiedni skrypt, bądź inną komendę odpowiedzialną za restart serwera gry, bez interwencji administratora.
#!/usr/bin/perl -X
use Socket;
#-----------------------------------------------------------
# Konfiguracja (Do ustawienia według opisu)
#-----------------------------------------------------------
my $host = "x.x.x.x"; # Adres IP serwera do sprawdzania (To jest ten zbindowany).
my $port = "27015"; # Port serwera, na którym chodzi.
use constant CHECKEVERY => 90; # Jak często sprawdzać serwer ? (Tutaj ustawiono co 90 sekund).
use constant TIMEOUT => 20; # Jak długo czekać na jego odpowiedź zanim go zrestartujemy.
# Poniżej podaj ścieżkę do skryptu uruchamiającego/restartującego serwer.
# Oczywiście może to być także zwykła komenda zawierające odpowiednie opcje.
my $cmd = "/home/hlds_l/scripts/hlds restart";
#-----------------------------------------------------------
# Nie edytuj tego poniżej, chyba, że wiesz co robisz <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/smile.gif' class='bbc_emoticon' alt=':)' />
#-----------------------------------------------------------
my $MAXLEN = 128;
my $msg="xFFxFFxFFxFFx54x53x6Fx75x72x63x65x20x45x6Ex67x69x6Ex65x20x51x75x65x72x79x00";
my $RET = "NONE!";
$SIG{ALRM} = sub { &TimeOut };
&Start;
sub CheckServer {
my $ipaddr = inet_aton($host);
my $portaddr = sockaddr_in($port, $ipaddr);
$RET = "NONE!";
socket(SOCKET, PF_INET, SOCK_DGRAM, getprotobyname("udp")) or die "socket: $!";
send(SOCKET, $msg, 0, $portaddr) == length($msg) or die "Error Sending Query.n";
alarm(TIMEOUT);
recv(SOCKET, $RET, $MAXLEN, 0);
close SOCKET;
sleep(CHECKEVERY);
}
sub Start {
while (1) {
&CheckServer;
}
}
sub TimeOut {
if ($RET eq "NONE!") {
print "SERVER DOWN, RESTARTING!n";
$STARTSERV = `/usr/bin/perl -w $cmd`;
print $STARTSERV . "n";
}
sleep(CHECKEVERY);
close SOCKET;
}( skrypt nie mojego autorstwa )
#3
Napisano 22.11.2009 12:27
# Poniżej podaj ścieżkę do skryptu uruchamiającego/restartującego serwer. # Oczywiście może to być także zwykła komenda zawierające odpowiednie opcje. my $cmd = "/home/hlds_l/scripts/hlds restart";
No tak ale ja nie mam tego skryptu ;/
Juz mam
#4
Napisano 22.11.2009 12:30
no ale uruchomiajacy musisz miec
#5
Napisano 22.11.2009 12:36
Dobra, dzięki Ci.
Pomógł leci
-------------------
No niestety blada:
Pomógł leci
-------------------
No niestety blada:
./start.sh: line 2: use: command not found
./start.sh: line 8: my: command not found
./start.sh: line 9: my: command not found
./start.sh: line 10: use: command not found
./start.sh: line 11: use: command not found
./start.sh: line 16: my: command not found
./start.sh: line 22: my: command not found
./start.sh: line 23: my: command not found
./start.sh: line 24: my: command not found
./start.sh: line 25: {ALRM}: command not found
./start.sh: line 25: TimeOut: command not found
./start.sh: line 26: syntax error near unexpected token `&'
./start.sh: line 26: ` &Start;'
#6
Napisano 22.11.2009 17:14
Masz zainstalowanego perla na serwerze?
#7
Napisano 22.11.2009 18:51
Tak mam ale dalej jest ten błąd ;/
[ Dodano: 25-11-2009, 19:19 ]
Przepraszam za double posta.
Może ktoś pomóc ?
[ Dodano: 25-11-2009, 19:19 ]
Przepraszam za double posta.
Może ktoś pomóc ?
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych


Dodatki SourceMod



Temat jest zamknięty








