TeamSpeak 3 Server in Debian Chroot: Unterschied zwischen den Versionen
imported>Doppelter Wolf Keine Bearbeitungszusammenfassung |
imported>Doppelter Wolf Keine Bearbeitungszusammenfassung |
||
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<big><big>Installation eines Teamspeak 3 Server in Debian Chroot<br></big></big> | <big><big>Installation eines Teamspeak 3 Server in Debian Chroot<br></big></big> | ||
Die Diskussion da zu findet ihr hier ab ca Seite 32 statt.<br> | |||
http://www.synology-forum.de/showthread.html?33834-DS412-und-Teamspeak-3/page32 | |||
Zeile 11: | Zeile 13: | ||
==Installation== | ==Installation== | ||
als erstes Installieren wir das Phytonpaket von der SynoCommunity zufinden im Paketmanager - ohne diese Paket lässt sich Debian Chroot Paket nicht Installieren. Anschliessend Installieren wir das Debian Chroot Paket von DI40bI0. http://www52.zippyshare.com/v/79909794/file.html | als erstes Installieren wir das Phytonpaket von der SynoCommunity zufinden im Paketmanager - ohne diese Paket lässt sich Debian Chroot Paket nicht Installieren. Anschliessend Installieren wir das Debian Chroot Paket von DI40bI0. <br> | ||
http://www52.zippyshare.com/v/79909794/file.html für x86<br> | |||
http://www12.zippyshare.com/v/22653393/file.html für Cedarview CPU <br> | |||
Diese Paket wurde für den TS3 Server etwas angepasst. Mehr dazu weiter unten "Updates" | |||
wenn diese Paket erfolgreich Installiert wurde Loggen wir uns mit Putty auf der Synology mit root ein. | wenn diese Paket erfolgreich Installiert wurde Loggen wir uns mit Putty auf der Synology mit root ein. | ||
Zeile 17: | Zeile 22: | ||
<pre>/var/packages/debian-chroot/scripts/start-stop-status chroot </pre> | <pre>/var/packages/debian-chroot/scripts/start-stop-status chroot </pre> | ||
Nun befindet ihr euch im chroot, da angekommen gebt ihr bitte diese befehle nacheinander ein: | |||
<pre> | |||
aptitude update | |||
aptitude upgrade | |||
aptitude install locales | |||
dpkg-reconfigure locales | |||
dpkg-reconfigure tzdata | |||
</pre> | |||
Wenn das alles abgeschlossen ist, wechselt ihr in das verzeichniss /opt<br> mit | |||
<pre> | |||
"cd /opt" | |||
</pre> | |||
dort laden wir unseren TeamSpeak3 Server rein. | |||
Führt nun folgende Befehle aus: | |||
<pre> | |||
wget http://dl.4players.de/ts/releases/3.0.10.2/teamspeak3-server_linux-x86-3.0.10.2.tar.gz | |||
tar -xvzf teamspeak3-server_linux-x86-3.0.10.2.tar.gz | |||
</pre> | |||
Jetzt könnt ihr mit "exit" aus dem chroot raus, da wir jetzt soweit alles benötigte abgeschlossen haben. | |||
Die Konsole kann auch geschlossen werden. | |||
Als letzten schritt loggt ihr euch auf der DSM oberfläche als admin ein und öffnet das debian-chroot GUI sollte dieses noch nicht erscheinen, müsst ihr über das Packet Zentrum dieses starten. | |||
In diesem angekommen geht ihr auf den Menüpunkt Services und klickt auf Add. | |||
<pre> | |||
Name: TeamSpeak 3 Server | |||
Launch script: /opt/teamspeak3-server_linux-x86/ts3server_startscript.sh | |||
Status command: ps -p $(cat /opt/teamspeak3-server_linux-x86/ts3server.pid) | |||
</pre> | |||
Das sollte dann soweit alles sein. | |||
Wenn ihr eure DS neustartet wird der TeamSpeak3 Server automatisch hochgefahren ohne das ihr was machen müsst! | |||
Ihr könnt das ganze auch ohne Neustart machen einfach den erstellten Service anklicken und auf start klicken. | |||
Wenn es sich um einen neu aufgesetzten Server handelt machst du folgendes um an dem Server Adminkey zu gelangen: | |||
1. Ins chroot einloggen mit: | |||
<pre> | |||
/var/packages/debian-chroot/scripts/start-stop-status chroot | |||
</pre> | |||
2. In das Verzeichniss wechseln wo der TemSpeak3 Server liegt (wenn du es genau so gemacht hast wie beschrieben! Ansonsten pfade anpassen!): | |||
<pre> | |||
cd /opt/teamspeak3-server_linux-x86 | |||
</pre> | |||
3. Server stoppen (falls dieser noch läuft) | |||
<pre> | |||
./ts3server_startscript.sh stop | |||
</pre> | |||
4. Die vom Server erstellte Datenbank löschen: | |||
<pre> | |||
rm ts3server.sqlitedb | |||
</pre> | |||
5. Server starten (nun wird eine neue Datenbank erstellt und der key auf der Konsole angezeigt): | |||
<pre> | |||
./ts3server_minimal_runscript.sh | |||
</pre> | |||
6. Wenn du den key abgespeichert hast server wieder stoppen: | |||
mit strg+c | |||
7. chroot verlassen und konsole schließen: | |||
<pre> | |||
exit | |||
</pre> | |||
8. Teamspeak3 Server wieder wie gewohnt über die GUI im DSM (debian-chroot) starten. | |||
Wenn man zuvor einen TS3 Server betrieben hat kann man dessen ts3server.sqlitedb einfach in das Verzeichniss vom neuen Server kopieren. Damit sind dann die Räume und Einstellungen wieder hergestellt. | |||
Wenn der Server vorher über den Paket Manager installiert war. (bis Version 3.0.7.2) können wir mit | |||
<pre> | |||
cp /volume1/@appstore/ts3server/teamspeak3-server_linux-x86/ts3server.sqlitedb /volume1/@appstore/debian-chroot/var/chroottarget/opt/teamspeak3-server_linux-x86/ts3server.sqlitedb | |||
</pre> | |||
<br> | |||
==UPDATES== | |||
Wenn man das Paket updatet, wenn bspw die Synology community eine neue Version released, dann kann man das start-stop-status script auch händisch nachbessern.<br> | |||
Einfach nach: | |||
<pre> | |||
cd /var/packages/debian-chroot/scripts | |||
</pre> | |||
Da findet man das start-stop-status script | |||
Hier muss dann folgendes hinzugefügt werden: | |||
<pre> | |||
# TeamSpeak3 | |||
[ ! -d ${CHROOTTARGET}/dev/shm ] && mkdir -p ${CHROOTTARGET}/dev/shm | |||
grep -q "${CHROOTTARGET}/dev/shm " /proc/mounts || mount -t tmpfs tmpfs ${CHROOTTARGET}/dev/shm | |||
und | |||
# TeamSpeak3 | |||
umount ${CHROOTTARGET}/dev/shm | |||
</pre> | |||
das sieht dann so aus. | |||
<pre> | |||
tart_daemon () | |||
{ | |||
# Mount if install is finished | |||
if [ -f ${INSTALL_DIR}/var/installed ]; then | |||
# Make sure we don't mount twice | |||
grep -q "${CHROOTTARGET}/proc " /proc/mounts || mount -t proc proc ${CHROOTTARGET}/proc | |||
grep -q "${CHROOTTARGET}/sys " /proc/mounts || mount -t sysfs sys ${CHROOTTARGET}/sys | |||
grep -q "${CHROOTTARGET}/dev " /proc/mounts || mount -o bind /dev ${CHROOTTARGET}/dev | |||
grep -q "${CHROOTTARGET}/dev/pts " /proc/mounts || mount -o bind /dev/pts ${CHROOTTARGET}/dev/pts | |||
# TeamSpeak3 | |||
[ ! -d ${CHROOTTARGET}/dev/shm ] && mkdir -p ${CHROOTTARGET}/dev/shm | |||
grep -q "${CHROOTTARGET}/dev/shm " /proc/mounts || mount -t tmpfs tmpfs ${CHROOTTARGET}/dev/shm | |||
# Start all services | |||
${INSTALL_DIR}/app/start.py | |||
fi | |||
} | |||
stop_daemon () | |||
{ | |||
# Stop running services | |||
${INSTALL_DIR}/app/stop.py | |||
# Unmount | |||
umount ${CHROOTTARGET}/dev/pts | |||
umount ${CHROOTTARGET}/dev | |||
umount ${CHROOTTARGET}/sys | |||
umount ${CHROOTTARGET}/proc | |||
# TeamSpeak3 | |||
umount ${CHROOTTARGET}/dev/shm | |||
} | |||
</pre> | |||
==Server per Cron starten und stoppen== | |||
Falls man den Server per Cron ein und aus schalten möchte sind folgende dinge zu tun. | |||
ins chroot Verzeichniss wechslen | |||
<pre> | |||
cd /volume1/@appstore/debian-chroot/var/chroottarget/etc | |||
</pre> | |||
und dort die Datei "crontab" bearbeiten | |||
<pre> | |||
nano crontab | |||
</pre> | |||
und folgende Zeilen hinzufügen: | |||
<pre> | |||
00 18 * * * root cd /opt/teamspeak3-server_linux-x86 && ./ts3server_startscript.sh start | |||
00 22 * * * root cd /opt/teamspeak3-server_linux-x86 && ./ts3server_startscript.sh stop | |||
</pre> | |||
anschließend cron einmal stoppen und wieder starten: (WICHTIG: Vorher aber ins chroot einloggen da wir ja den cron vom chroot verändern!) | |||
<pre> | |||
/var/packages/debian-chroot/scripts/start-stop-status chroot | |||
/etc/init.d/cron stop | |||
/etc/init.d/cron start | |||
</pre> | |||
anschließend mit exit das chroot verlassen und konsole schließen. |
Aktuelle Version vom 29. Dezember 2013, 18:26 Uhr
Installation eines Teamspeak 3 Server in Debian Chroot
Die Diskussion da zu findet ihr hier ab ca Seite 32 statt.
http://www.synology-forum.de/showthread.html?33834-DS412-und-Teamspeak-3/page32
Voraussetzungen
- Eine DiskStation mit x86 Architektur (Liste der Prozessortypen)
- Angepasste Debian Chroot spk vom User DI4bI0
- Phyton von der SynoCommunty
- Linux Basis wissen von vorteil
Installation
als erstes Installieren wir das Phytonpaket von der SynoCommunity zufinden im Paketmanager - ohne diese Paket lässt sich Debian Chroot Paket nicht Installieren. Anschliessend Installieren wir das Debian Chroot Paket von DI40bI0.
http://www52.zippyshare.com/v/79909794/file.html für x86
http://www12.zippyshare.com/v/22653393/file.html für Cedarview CPU
Diese Paket wurde für den TS3 Server etwas angepasst. Mehr dazu weiter unten "Updates"
wenn diese Paket erfolgreich Installiert wurde Loggen wir uns mit Putty auf der Synology mit root ein.
mit folgendem befehl gelangen wir in das Chroot
/var/packages/debian-chroot/scripts/start-stop-status chroot
Nun befindet ihr euch im chroot, da angekommen gebt ihr bitte diese befehle nacheinander ein:
aptitude update aptitude upgrade aptitude install locales dpkg-reconfigure locales dpkg-reconfigure tzdata
Wenn das alles abgeschlossen ist, wechselt ihr in das verzeichniss /opt
mit
"cd /opt"
dort laden wir unseren TeamSpeak3 Server rein. Führt nun folgende Befehle aus:
wget http://dl.4players.de/ts/releases/3.0.10.2/teamspeak3-server_linux-x86-3.0.10.2.tar.gz tar -xvzf teamspeak3-server_linux-x86-3.0.10.2.tar.gz
Jetzt könnt ihr mit "exit" aus dem chroot raus, da wir jetzt soweit alles benötigte abgeschlossen haben. Die Konsole kann auch geschlossen werden.
Als letzten schritt loggt ihr euch auf der DSM oberfläche als admin ein und öffnet das debian-chroot GUI sollte dieses noch nicht erscheinen, müsst ihr über das Packet Zentrum dieses starten.
In diesem angekommen geht ihr auf den Menüpunkt Services und klickt auf Add.
Name: TeamSpeak 3 Server Launch script: /opt/teamspeak3-server_linux-x86/ts3server_startscript.sh Status command: ps -p $(cat /opt/teamspeak3-server_linux-x86/ts3server.pid)
Das sollte dann soweit alles sein. Wenn ihr eure DS neustartet wird der TeamSpeak3 Server automatisch hochgefahren ohne das ihr was machen müsst! Ihr könnt das ganze auch ohne Neustart machen einfach den erstellten Service anklicken und auf start klicken.
Wenn es sich um einen neu aufgesetzten Server handelt machst du folgendes um an dem Server Adminkey zu gelangen:
1. Ins chroot einloggen mit:
/var/packages/debian-chroot/scripts/start-stop-status chroot
2. In das Verzeichniss wechseln wo der TemSpeak3 Server liegt (wenn du es genau so gemacht hast wie beschrieben! Ansonsten pfade anpassen!):
cd /opt/teamspeak3-server_linux-x86
3. Server stoppen (falls dieser noch läuft)
./ts3server_startscript.sh stop
4. Die vom Server erstellte Datenbank löschen:
rm ts3server.sqlitedb
5. Server starten (nun wird eine neue Datenbank erstellt und der key auf der Konsole angezeigt):
./ts3server_minimal_runscript.sh
6. Wenn du den key abgespeichert hast server wieder stoppen:
mit strg+c
7. chroot verlassen und konsole schließen:
exit
8. Teamspeak3 Server wieder wie gewohnt über die GUI im DSM (debian-chroot) starten.
Wenn man zuvor einen TS3 Server betrieben hat kann man dessen ts3server.sqlitedb einfach in das Verzeichniss vom neuen Server kopieren. Damit sind dann die Räume und Einstellungen wieder hergestellt. Wenn der Server vorher über den Paket Manager installiert war. (bis Version 3.0.7.2) können wir mit
cp /volume1/@appstore/ts3server/teamspeak3-server_linux-x86/ts3server.sqlitedb /volume1/@appstore/debian-chroot/var/chroottarget/opt/teamspeak3-server_linux-x86/ts3server.sqlitedb
UPDATES
Wenn man das Paket updatet, wenn bspw die Synology community eine neue Version released, dann kann man das start-stop-status script auch händisch nachbessern.
Einfach nach:
cd /var/packages/debian-chroot/scripts
Da findet man das start-stop-status script
Hier muss dann folgendes hinzugefügt werden:
# TeamSpeak3 [ ! -d ${CHROOTTARGET}/dev/shm ] && mkdir -p ${CHROOTTARGET}/dev/shm grep -q "${CHROOTTARGET}/dev/shm " /proc/mounts || mount -t tmpfs tmpfs ${CHROOTTARGET}/dev/shm und # TeamSpeak3 umount ${CHROOTTARGET}/dev/shm
das sieht dann so aus.
tart_daemon () { # Mount if install is finished if [ -f ${INSTALL_DIR}/var/installed ]; then # Make sure we don't mount twice grep -q "${CHROOTTARGET}/proc " /proc/mounts || mount -t proc proc ${CHROOTTARGET}/proc grep -q "${CHROOTTARGET}/sys " /proc/mounts || mount -t sysfs sys ${CHROOTTARGET}/sys grep -q "${CHROOTTARGET}/dev " /proc/mounts || mount -o bind /dev ${CHROOTTARGET}/dev grep -q "${CHROOTTARGET}/dev/pts " /proc/mounts || mount -o bind /dev/pts ${CHROOTTARGET}/dev/pts # TeamSpeak3 [ ! -d ${CHROOTTARGET}/dev/shm ] && mkdir -p ${CHROOTTARGET}/dev/shm grep -q "${CHROOTTARGET}/dev/shm " /proc/mounts || mount -t tmpfs tmpfs ${CHROOTTARGET}/dev/shm # Start all services ${INSTALL_DIR}/app/start.py fi } stop_daemon () { # Stop running services ${INSTALL_DIR}/app/stop.py # Unmount umount ${CHROOTTARGET}/dev/pts umount ${CHROOTTARGET}/dev umount ${CHROOTTARGET}/sys umount ${CHROOTTARGET}/proc # TeamSpeak3 umount ${CHROOTTARGET}/dev/shm }
Server per Cron starten und stoppen
Falls man den Server per Cron ein und aus schalten möchte sind folgende dinge zu tun.
ins chroot Verzeichniss wechslen
cd /volume1/@appstore/debian-chroot/var/chroottarget/etc
und dort die Datei "crontab" bearbeiten
nano crontab
und folgende Zeilen hinzufügen:
00 18 * * * root cd /opt/teamspeak3-server_linux-x86 && ./ts3server_startscript.sh start 00 22 * * * root cd /opt/teamspeak3-server_linux-x86 && ./ts3server_startscript.sh stop
anschließend cron einmal stoppen und wieder starten: (WICHTIG: Vorher aber ins chroot einloggen da wir ja den cron vom chroot verändern!)
/var/packages/debian-chroot/scripts/start-stop-status chroot /etc/init.d/cron stop /etc/init.d/cron start
anschließend mit exit das chroot verlassen und konsole schließen.