Идем на сайт teamspeak 3 и качаем нужный нам сервер.
Установка
- Создаем нового пользователя ts3, от которого будет работать TeamSpeak server.
и распаковываем его
в первый заносим информацию:
- Далее делаем в консоли вводим
где его взять? А можно из пакета
х64 - lib64mysql15-5.0.67-3mdv2009.0.x86_64.rpm для 64 битной ОС
х32 - libmysql15-5.0.67-3mdv2009.0.i586.rpm для 32 битной
- Проверяем, еще раз
Правим файл ts3server_minimal_runscript.sh
И запускаем его. И если запуск произошел без ошибок (Программа не вывалилась в консоль), сохраняем строку с token, для получения полномочий superadmin на клиенте. Так же эта строка сохранена в логах в папке logs.
Останавливаем сервер через (Ctrl-C).
Для того чтобы наш сервер работал от имени пользователя ts3.
1.Меняем пользователя и группу папки /home/ts3
2.Копируем файл ts3server_startscript.sh в файл /etc/rc.d/init.d/ts3
3.Правим файл /etc/rc.d/init.d/ts3. Полностью файл выводить не буду — покажу только изменения.
Итак в начало файла после строки #!/bin/bash, вставляем.
- Изменяем строку с COMMANDLINE_PARAMETERS
- Закоментировать строки с проверкой на root
И изменяем строку запуска
на такую:
На этом Все. Сервер TeamSpeak 3 развернут на Debian
Установка
- Создаем нового пользователя ts3, от которого будет работать TeamSpeak server.
useradd -c ts3_user -d /home/ts3 -r -m -s /dev/null ts3
- Копируем скаченный архив с сайта в каталог пользователя
/home/ts3и распаковываем его
tar xvfz teamspeak3-server_linux-x86-3.0.0-beta20.tar.gz
- Теперь идем в каталог с сервером
cd teamspeak3-server_linux-amd64
- Создаем два файла: ts3server.ini и ts3db_mysql.iniв первый заносим информацию:
machine_id=
default_voice_port=9987
voice_ip=0.0.0.0
liscensepath=
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=1
во второй:
[config]
host=localhost
port=3306
username=mysqluser
password=mysqlpasswd
database=ts3
socket=
- Создаем файл pre_ts3.sql следующего содержания:
use mysql;
INSERT INTO user (Host, User, Password) VALUES ('localhost','ts3',password('sqlpassword'));
INSERT INTO db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv,
Index_priv, Alter_priv) VALUES ('%', 'ts3', 'ts3', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y');
CREATE DATABASE ts3;
sqlpassword- Меняем на свой, это пароль к БД- Далее делаем в консоли вводим
mysql -u root -p < pre_ts3.sql
mysqladmin -p flush-privileges
- Из консоли выполняем, проверим библиотеки
ldd libts3db_mysql.so
linux-vdso.so.1 => (0x00007fff6dbf3000)
libmysqlclient.so.15 => not found
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f597cdea000)
libm.so.6 => /lib64/libm.so.6 (0x00007f597cb68000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f597c952000)
libc.so.6 => /lib64/libc.so.6 (0x00007f597c5f3000)
/lib64/ld-linux-x86-64.so.2 (0x00007f597d322000)
- И видим строку
libmysqlclient.so.15 => not found
TeamSpeak серверу нужен libmysqlclient.so.15,где его взять? А можно из пакета
х64 - lib64mysql15-5.0.67-3mdv2009.0.x86_64.rpm для 64 битной ОС
х32 - libmysql15-5.0.67-3mdv2009.0.i586.rpm для 32 битной
- Проверяем, еще раз
# ldd libts3db_mysql.so
linux-vdso.so.1 => (0x00007fff4fbff000)
libmysqlclient.so.15 => /usr/lib64/libmysqlclient.so.15 (0x00007f150b79b000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f150b490000)
libm.so.6 => /lib64/libm.so.6 (0x00007f150b20d000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f150aff7000)
libc.so.6 => /lib64/libc.so.6 (0x00007f150ac99000)
libssl.so.0.9.8 => /usr/lib64/libssl.so.0.9.8 (0x00007f150aa45000)
libcrypto.so.0.9.8 => /usr/lib64/libcrypto.so.0.9.8 (0x00007f150a68c000)
libz.so.1 => /lib64/libz.so.1 (0x00007f150a477000)
/lib64/ld-linux-x86-64.so.2 (0x00007f150bd43000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f150a272000)
Первый запускПравим файл ts3server_minimal_runscript.sh
#!/bin/bash
export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH"
if [ -e ts3server_linux_x86 ]; then
./ts3server_linux_x86 inifile=ts3server.ini $@
else
./ts3server_linux_amd64 inifile=ts3server.ini $@
fi
И запускаем его. И если запуск произошел без ошибок (Программа не вывалилась в консоль), сохраняем строку с token, для получения полномочий superadmin на клиенте. Так же эта строка сохранена в логах в папке logs.
Останавливаем сервер через (Ctrl-C).
Для того чтобы наш сервер работал от имени пользователя ts3.
1.Меняем пользователя и группу папки /home/ts3
chown -R ts3:ts3 /home/ts3
2.Копируем файл ts3server_startscript.sh в файл /etc/rc.d/init.d/ts3
3.Правим файл /etc/rc.d/init.d/ts3. Полностью файл выводить не буду — покажу только изменения.
Итак в начало файла после строки #!/bin/bash, вставляем.
#TeamSpeak 3
#For TeamSpeak 3 server
#
# /etc/rc.d/init.d/ts3
#
# Starts the TeamSpeak 3 daemon
#
# chkconfig: 255 99 10
# description: Runs commands scheduled by the at command at the time \
# specified when at was run, and runs batch commands when the load \
# average is low enough.
# processname: atd
#
### BEGIN INIT INFO
# Provides: TeamSpeak
# Required-Start: $network
# Required-Stop: $network
# Should-Start: $named mysqld postgresql ldap saslauthd
# Should-Stop: $named mysqld postgresql ldap saslauthd
# Default-Start: 2 3 4 5
# Short-Description: Starts the ts3 server
# Description: TeamSpeak is flaxible, voice Server
### END INIT INFO
# Source function library.
#set -x
# Source function library.
if [ -f /etc/init.d/functions ] ; then
. /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
. /etc/rc.d/init.d/functions
else
exit 0
fi
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
RETVAL=0
#
# See how we were called.
#
- Изменяем строку с COMMANDLINE_PARAMETERS
COMMANDLINE_PARAMETERS="inifile=ts3server.ini" #add any command line parameters you want to pass here
BINARYPATH="/home/ts3/teamspeak3-server_linux-amd64"
USER="ts3"
- Закоментировать строки с проверкой на root
#if [ "${UID}" = "0" $USER = "root" ]; then
# echo WARNING ! For security reasons we advise: DO NOT RUN THE SERVER AS ROOT
# for c in $(seq 1 10); do
# echo -n "!"
# sleep 1
# done # echo "!"
#fi
И изменяем строку запуска
"./${BINARYNAME}" ${COMMANDLINE_PARAMETERS} > /dev/null &
на такую:
su $USER -s "/bin/bash" -c "./${BINARYNAME} ${COMMANDLINE_PARAMETERS}" > /dev/null &
На этом Все. Сервер TeamSpeak 3 развернут на Debian
Комментариев нет:
Отправить комментарий