Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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.

  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Inny

[ROZWIĄZANE] Auto Start TS3 - Skrypt w bashu(?)

inny

Najlepsza odpowiedź Boomers, 06.01.2016 19:14

Mała poprawa nie mogę edytować postu. Zrób tak.

#!/bin/bash

TEAMSPEAK=`ps ax | grep ts3server_linux_amd64 | grep -v grep | wc -l`

if [ $TEAMSPEAK != 0 ]
then
echo "Serwer jest nadal włączony"
exit
else
cd /home/ts/serwer
screen -AmdS ts ./ts3server_startscript.sh start
echo "Włączam serwer"
fi
Przejdź do postu


  • Zamknięty Temat jest zamknięty
10 odpowiedzi w tym temacie

#1 Indoor

    Zaawansowany

  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:114
  • Lokalizacja:Gorzów Wielkopolski City.
Offline

Napisano 06.01.2016 12:01

Siemka, posiadam VPS`a z systemem Debian 7 64bit postawiłem na nim serwer TS3 i posiadam skrypt napisany w bashu(?), że jak serwer dostanie crasha to sam wstaje, niestety mam z nim problemy bo wywala błędy a serwer nie wstaje a ja nie ogarniam basha(?) prosiłbym o pomoc :)

 

Skrypt:

#!/bin/bash
 
cd /home/ts/serwer
 
TEAMSPEAK = `ps ax | grep ts3server_linux_amd64 | grep -v grep | wc -l`
 
if [ $TEAMSPEAK -eq 1 ]
then
exit
echo "TS dziala"
else
screen -AmdS ts ./ts3server_minimal_runscript.sh restart
echo "Wlaczanie TS`a..."
fi

Błędy:

/home/ts/serwer/crash.sh: line 5: TEAMSPEAK: command not found
/home/ts/serwer/crash.sh: line 13: unexpected EOF while looking for matching ``'
/home/ts/serwer/crash.sh: line 15: syntax error: unexpected end of file

  • +
  • -
  • 1

#2 Boomers

    Życzliwy

  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:33
  • Imię:Krzychu
  • Lokalizacja:Kraków
Offline

Napisano 06.01.2016 12:59

Zrób tak:

 

Otwórz plik rc.local

 

$ nano /etc/rc.loca

 

Dodaj przed exit 0

su ts3 -c '/home/ts3/serwer/ts3server_startscript.sh start'

Zamiast ts3 podaj nazwę twojego użytkownika. Pamiętaj nie uruchamiaj serwera ts jako użytkownik root.

 

Każdy restart vps'a będzie automatycznie uruchamiał twój serwer ts.

 

Jeśli dobrze zrozumiałem dokumentację ts'a skrypt ts3server_minimal_runscript.sh powinno uruchomić się tylko raz aby uzyskać token i dane do konta query. Poźniej robi się to za pomocą ts3server_startscript.sh

 

 


Użytkownik Boomers edytował ten post 06.01.2016 13:01

  • +
  • -
  • 1

#3 Indoor

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:114
  • Lokalizacja:Gorzów Wielkopolski City.
Offline

Napisano 06.01.2016 13:09

Ja nie chce przy starcie VPS`a, ale jak serwer dostanie crasha np. w środku dnia to po minucie serwer sam wstaje.


  • +
  • -
  • 0

#4 Boomers

    Życzliwy

  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:33
  • Imię:Krzychu
  • Lokalizacja:Kraków
Offline

Napisano 06.01.2016 13:10

Rozumiem, skrypt będziesz uruchamiał z crona np. co 5 minut.

 

Skrypt ma sprawdzać czy proces jest uruchomiony. Jeśli tak ma kończyć swoje działanie. Jeśli natomiast proces jest nieaktywny, skrypt ma przejść do następnego warunku i uruchomić serwer ts.


Użytkownik Boomers edytował ten post 06.01.2016 13:13

  • +
  • -
  • 1

#5 Indoor

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:114
  • Lokalizacja:Gorzów Wielkopolski City.
Offline

Napisano 06.01.2016 13:22

Poradziłem sobie.

#!/bin/bash
 
TEAMSPEAK=`ps ax | grep ts3server_linux_amd64 | grep -v grep | wc -l`
 
if [ -z '$TEAMSPEAK']
then
exit
else
cd /home/ts/serwer
screen -AmdS ts ./ts3server_minimal_runscript.sh start
fi

Tylko są małe błędy:

 

/home/ts/serwer/crash.sh: line 5: [: missing `]'


Użytkownik Indoor edytował ten post 06.01.2016 13:22

  • +
  • -
  • 0

#6 Boomers

    Życzliwy

  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:33
  • Imię:Krzychu
  • Lokalizacja:Kraków
Offline

Napisano 06.01.2016 13:48

Sprawdź czy taka wersja działa.

#!/bin/bash
 
TEAMSPEAK=`ps ax | grep ts3server_linux_amd64 | grep -v grep | wc -l`
 
if [ -z '$TEAMSPEAK' ]
then
exit
else
cd /home/ts/serwer
screen -AmdS ts ./ts3server_minimal_runscript.sh start
fi

Użytkownik Boomers edytował ten post 06.01.2016 14:02

  • +
  • -
  • 1

#7 Indoor

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:114
  • Lokalizacja:Gorzów Wielkopolski City.
Offline

Napisano 06.01.2016 17:25

Działa, ale nie tak jak bym chciał, ponieważ nie ważne czy serwer TS3 działa czy nie, on i tak odpala "./ts3server_minimal_runscript.sh start" przez co w logach serwera TS3 jest MNÓSTWO plików .log z informacją, że został odpalony drugi serwer ale na tym samym porcie itp...między innymi chce się pozbyć tych własnie plików, żeby nie było ich


  • +
  • -
  • 0

#8 Boomers

    Życzliwy

  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:33
  • Imię:Krzychu
  • Lokalizacja:Kraków
Offline

Napisano 06.01.2016 18:39

#!/bin/bash

TEAMSPEAK=`ps ax | grep ts3server_linux_amd64 | grep -v grep | wc -l`

if [ '$TEAMSPEAK' != 0 ]
then
echo "Serwer jest nadal włączony"
exit
else
cd /home/ts/serwer
screen -AmdS ts ./ts3server_startscript.sh start
echo "Włączam serwer"
fi

Nigdy nie pisałem skryptów w bash więc nie wiem czy działa on prawidłowo. Sprawdź i powiedz czy wszystko jest ok.


  • +
  • -
  • 1

#9 Boomers

    Życzliwy

  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:33
  • Imię:Krzychu
  • Lokalizacja:Kraków
Offline

Napisano 06.01.2016 19:14   Najlepsza odpowiedź

Mała poprawa nie mogę edytować postu. Zrób tak.

#!/bin/bash

TEAMSPEAK=`ps ax | grep ts3server_linux_amd64 | grep -v grep | wc -l`

if [ $TEAMSPEAK != 0 ]
then
echo "Serwer jest nadal włączony"
exit
else
cd /home/ts/serwer
screen -AmdS ts ./ts3server_startscript.sh start
echo "Włączam serwer"
fi

  • +
  • -
  • 1

#10 Indoor

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:114
  • Lokalizacja:Gorzów Wielkopolski City.
Offline

Napisano 06.01.2016 20:11

Miodzio, działa dzięki wielkie :)


  • +
  • -
  • 0

#11 radim

    Godlike

  • Moderator

Reputacja: 932
Master

  • Postów:2725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 06.01.2016 23:19

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 1

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !






Również z jednym lub większą ilością słów kluczowych: inny

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych