TeamSpeak3 Server + MySQL => LINUX x86

By | 8.5.2012

Potrápil jsem se trošku s rozchozením TeamSpeak3 Server pod Linuxem, spojený s databazí MySQL. Pokusím se srozumitelně popsat jak na to 🙂 Nejdříve ze všecho potřebujeme stáhnout balíček s TeamSpeak3 Server, který získáme nejlépe na oficiálním webu: http://www.teamspeak.com/?page=downloads

V Shellu napíšeme příkaz na stažení balíčku a rovnou přejmenování:

    wget http://teamspeak.gameserver.gamed.de/ts3/releases/3.0.5/teamspeak3-server_linux-x86-3.0.5.tar.gz -O ts3.tar.gz

Rozbalíme balíček:

 tar -xvzf ts3.tar.gz

Přesuneme rozbalenou složku do /etc/ts3:
mv teamspeak3-server_linux-x86 /etc/ts3
Dáme práva složce ts3:

 chmod -R 777 ts3

Přepneme se do šložky ts3:

  cd /etc/ts3

Pokud nemáme, tak nainstalujeme Mysql Server a ostatní pluginy/knihovny:

 sudo apt-get install mysql-server mysql-client libmysqlclient15-dev phpmyadmin

Připojíme se do DBS a vytvoříme databázi pro ts3:

 mysql -u root -p CREATE DATABASE teamspeak3; quit

Nyní se vrátíme zpět a vytvoříme soubor ts3server.ini :

  cat > ts3server.ini <<END
  machine_id=
  default_voice_port=9987
  voice_ip=0.0.0.0
  licensepath=
  filetransfer_port=30033
  filetransfer_ip=0.0.0.0
  query_port=10011
  query_ip=0.0.0.0
  dbplugin=ts3db_mysql
  dbpluginparameter=ts3db_mysql.ini
  dbsqlpath=sql/
  dbsqlcreatepath=create_mysql/
  logpath=logs
  logquerycommands=0

Dále vytvoříme  ts3db_mysql.ini :

  cat > ts3db_mysql.ini <<END
  [config]
  host=localhost
  username=root
  password=password ----- (heslo do dbs)
  database=teamspeak3
  socket= END

Napíšeme příkaz na zjištění součástí pluginů:

  ldd libts3db_mysql.so

Pokud nám na výpisu vypadne něco podobného, tak nám chybí plugin na komunikaci s MySQL:

  linux-gate.so.1 => (0xb7791000)
  libmysqlclient.so.15 => not found
  libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb74ab000)
  libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7484000)
  libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7465000)
  libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb730c000)
  libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb72f3000)
  libcrypt.so.1 => /lib/tls/i686/cmov/libcrypt.so.1 (0xb72c1000)
  libnsl.so.1 => /lib/tls/i686/cmov/libnsl.so.1 (0xb72a9000)
  libz.so.1 => /lib/libz.so.1 (0xb7294000)
  /lib/ld-linux.so.2 (0xb7792000)

To opravíme tím, že stáhneme knihovnu: libmysqlclient.so.15.0.0 .

  wget http://blog.chury721.cz/all/libmysqlclient.so.15.0.0

a použijeme následující příkazy:

  mv libmysqlclient.so.15.0.0 /usr/lib/mysql
  cd /usr/lib/mysql
  ln -s libmysqlclient.so.15.0.0 libmysqlclient.so.15
  cd /usr/lib
  ln -s mysql/libmysqlclient.so.15 libmysqlclient.so.15

a po té vyrastartujeme MySQL Server:

  /etc/init.d/mysql restart

Po té s použitím příkazu

  ldd libts3db_mysql.so

bychom měli vidět něco podobného:

  linux-gate.so.1 => (0xb77ce000) 
  libmysqlclient.so.15 => /usr/lib/libmysqlclient.so.15 (0xb75dd000)
  libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb74e8000) 
  libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb74c1000) 
  libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb74a2000) 
  libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7349000) 
  libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7330000) 
  libcrypt.so.1 => /lib/tls/i686/cmov/libcrypt.so.1 (0xb72fe000) 
  libnsl.so.1 => /lib/tls/i686/cmov/libnsl.so.1 (0xb72e6000)
  libz.so.1 => /lib/libz.so.1 (0xb72d1000)
  /lib/ld-linux.so.2 (0xb77cf000)

To by mělo být OK. Potom stačí použít můj vytvořený script na spouštění, který stáhnete ZDE a stáhneme ho do složky /etc/ts3:

  wget http://blog.chury721.cz/all/ts.sh

Přiřadíme mu práva:

  chmod 777 ts.sh

a po té spustíme:

  ./ts.sh

Vidíme výpis:  Je potreba vypsat prikaz:

  ./ts.sh {start|stop|restart|status}

Fungují na něj standardní dodatečné příkazy Takže nyní již stačí spustit:

  ./ts.sh start

Vypíše se nám:

  TeamSpeak 3 server started, for details please view the log file

Když se mrkneme do MySQL přes phpMyAdmina, tak vidíme něco podobného:


Nyní se stačí připojit pomocí klienta, kterého sthneme zde(já se nacházím ve Win7, takže stáhnu Windows client verzi):

http://www.teamspeak.com/?page=downloads

Počeštění programu provedete následovně. Stáhneme lagos_cs.qm a uložíme ho do:

  c:\Program Files\TeamSpeak 3 Client\translations\

Po té stačí program pustit a připojit se na server.


* Pro administrátorská práva je potřeba při první přihlášení zadat klíč který najdeme na serveru ve složce: /etc/ts3/logs


Ještě malý upgrade, protože mě pokaždý, když jsem se připojil na server, nebavilo hledat a vzpomínat, kde ts3 zdrojové kody jsou(kvůli spouštějícím scriptům).

Vytvoříme ALIAS přímo pro ovládání jednoho příkazu z shellu.

Nejprve je potřeba upravit soubor /etc/ts3/ts.sh:

  nano /etc/ts3/ts.sh

Kde před všechny scripty v Casu vložíme /etc/ts3/ , takže napříkad pro spuštění script vypadal:

  ts3server_startscript.sh start inifile=ts3server.ini

a po úpravě vypdá:

  /etc/ts3/ts3server_startscript.sh start inifile=ts3server.ini

a takto to upravíme u všech čtyřech a uložíme. Dále upravíme soubor .bashrc, který se nachází(pro každého uživateleú) v /home/nejakyUzivatel/.bashrc . Já budu opravovat uživatele root, tudíž to budu upravovat zde:

  nano /root/.bashrc

Kde přidáme následující řádek:

  alias ts='/etc/ts3/ts.sh'

a uložíme. Nyní stačí odhlásit/přihlásit (ukončit/začít sezení v Conzoli). a napsat v Conzoli:

  ts start, ts stop

a vše by mělo fungovat zapínat/vypínat TS3 server

2 thoughts on “TeamSpeak3 Server + MySQL => LINUX x86

  1. admin Post author

    V případě nefunkčnosti piště. Díky

    Reply

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *