Kann ich x86-CPU emulieren, um Teamspeak 3-Server auszuführen?

15

Lesen verschiedener Posts und Kann ich x86 emulieren, um Windows 95 auszuführen? Bis zu einem gewissen Grad scheint es möglich zu sein, eine x86-CPU zu simulieren.

In meinem speziellen Fall möchte ich einen Teamspeak-Server betreiben, der momentan nicht für ARM bereitgestellt wird. Ist es möglich, Teamspeak Server zu emulieren?

Ich weiß, dass es die native Alternative Murmeln gibt. Aber das ist für mich keine Alternative, denn in der Spielegemeinschaft bin ich in Teamspeak 3 der einzige, der verwendet wird.

keiki
quelle
2
Wenn Sie x86 emulieren müssen, bezweifle ich, dass Sie die Leistung erhalten, die Sie wünschen.
Jivings
2
Ganz zu schweigen von der Echtzeit-Soundverarbeitung in einer emulierten Umgebung. Ich denke, Sie können die Entwickler von TeamSpeak besser fragen, ob sie es (wenn möglich) nach ARM portieren können. Ich habe jedoch eine Geschichte gelesen, dass ein Russe einen x86-Emulator auf ARM erstellt hat, aber ich denke, dass er noch nicht verfügbar ist.
Ikku
1
Wenn Sie den Server hosten müssen, entscheiden Sie , welchen Client die anderen verwenden sollen. Wenn sie dagegen sind, müssen sie es selbst hosten - Teamspeak funktioniert im Moment im Raspberry Pi einfach nicht. Es gibt keinen vernünftigen Grund gegen Murmeln - es ist kostenlos, Open Source, tragbar, gute Qualität, geringer Ressourcenverbrauch usw.
Tobias Kienzler
wie auch immer, vielleicht wiki.winehq.org/ARM ist eine interessante Lektüre für Sie ...
Tobias Kienzler
1
@TobiasKienzler Ich muss den Server nicht hosten. Ich melde mich freiwillig zum Hosting des Servers. Jeder, den ich in der deutschen World of Warcraft-Community kenne, verwendet Teamspeak. Selbst wenn Sie Ihre Gildenmitglieder dazu bringen, Murmeln zu benutzen, haben Sie oft Besucher, die auch nur Teamspeak kennen.
Keiki

Antworten:

25

Ich habe Teamspeak 3 mit qemu laufen lassen, das einen x86-Debian-Squeeze ausführt. Natürlich gibt es noch Verbesserungspotential, aber für mich hat das vorerst funktioniert. Ich hoffe, ich habe etwas nicht vergessen.

Zunächst einmal vielen Dank an Dietmar und Meigrafd vom Himbeer-Pi-Forum. Ohne ihre Arbeit wäre es mir nicht gelungen.

Wie man

Qemu installieren

  1. Wir brauchen Software apt-get install git zlib1g-dev libsdl1.2-dev
  2. Laden Sie die Quelle von qemu ( wget 198.154.101.186/RaspberryPI/qemudidi2.rar) herunter, die bereits von Dietmar für Raspberry pi gepatcht wurde. Es ist QEMU 0.15.50 von Thoronir, da die Unterstützung für ARM-Hosts mit der aktuellen Version noch schlechter zu sein scheint.
  3. Unrar es unrar x qemuADLI.part1.rar. Du musst die unrar unfreie Version verwenden ( Link zum Howto )
  4. Konfigurieren, was zu kompilieren ist (dauert ungefähr eine Minute) ./configure --target-list="i386-softmmu" --enable-sdl --extra-cflags="-O3 -mfloat-abi=hard -mfpu=vfp -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -march=armv6zk" --audio-drv-list="alsa oss sdl pa" --audio-card-list="ac97 es1370 sb16 cs4231a adlib gus hda"
  5. Jetzt kompilieren make(dauert mindestens eine halbe Stunde)
  6. Jetzt installieren make install
  7. Jetzt ist qemu erfolgreich installiert.

Debian-Image vorbereiten (mit Windows als Host)

  1. Qemu für Windows herunterladen und installieren ( Link )

  2. Laden Sie das Debian-Netinstall-Image herunter ( squeeze ). Ich habe Squeeze benutzt, aber Keuchen könnte auch gut sein.

  3. Bild erstellen mit qemu-img.exe create -f qcow2 G:\debian.img 1500M(kleinere Größe sollte auch ausreichen)

  4. Installieren Sie debian x86. Ich empfehle kein Metapaket zu wählen.qemu -cpu 486 -hda G:\debian.img -cdrom G:\debian-6.0.4-i386-netinst.iso -boot d -m 512 -smp 1

  5. Führen Sie nach der Installation den Befehl qemu erneut aus, jedoch mit einigen Änderungen qemu -cpu 486 -hda G:\debian.img -boot d -m 512 -smp 1 -redir tcp:9022::22 -redir udp:1234::9987. -redir wird verwendet, um das Netzwerk vom Gast auf die Host-Ports umzuleiten.

  6. Installieren Sie jetzt weniger und Ihren bevorzugten Editor (wie Nano, Vim, etc.), Den Sie verwenden möchten apt-get install less vim

  7. Installieren Sie OpenSSH Server apt-get install openssh-server

  8. Installieren Sie Teamspeak wie gewohnt.

  9. Stellen Sie über localhost: 1234 eine Verbindung zu teamspeak von Ihrem Windows-Host her (denken Sie daran, dass wir den Port umgeleitet haben)

  10. Testen Sie die Verbindung über ssh / putty mit localhost: 9022

  11. Fahren Sie shutdown -hP nowdas Image herunter und kopieren Sie es per scp (winscp) auf Ihr pi.

Führen Sie es auf dem Pi aus (Verwenden Sie ein SSH für die folgenden Befehle)

  1. Holen Sie sich das fehlende Qemu-Bios wget -O /usr/share/qemu/sgabios.bin http://qemu.weilnetz.de/w32/2012-06-28/sgabios.bin

  2. Beginne es! qemu -cpu 486 -hda debian.img -m 150m -smp 1 -redir tcp:9022::22 -redir udp:9055::9987 --nographic

  3. Wenn Sie einen Speicherfehler bekommen, versuchen Sie es ein paar Mal.

  4. Wenn es heißt, dass Grub gestartet wird, warten Sie einige Minuten (es wird im Hintergrund gebootet, aber Sie werden hier nie eine Eingabeaufforderung erhalten!). Melden Sie sich jetzt mit einem anderen SSH-Terminal an, um sich bei 'ssh root @ localhost -p 9022' anzumelden.

  5. Starten Sie nun Teamspeak und versuchen Sie, sich an Port 9055 des Pi anzumelden.

  6. Fahren Sie den qemu-Gast erneut herunter.

  7. Starten Sie es erneut, aber fügen Sie -daemonize hinzu, damit es auch dann ausgeführt wird, wenn Sie sich abmelden. Ich habe auch ein Skript erstellt , um mir zu helfen.

Performance

Mein Pi ist die 256 MB Version, die mit raspi-config auf 1000 Mhz übertaktet wurde.

Der Pi läuft konstant mit 70% CPU-Auslastung. Sie variiert zwischen 50% (bei 700 MHz) und nahezu 100% bei 1000 MHz. Aber die Last zeigt "0,77, 0,83, 0,80", was in Ordnung ist.

In Zukunft hoffe ich, entweder eine native Teamspeak-Version zu verwenden (meine Hoffnung ist noch offen) oder qemu im Benutzermodus und mit einer aktuelleren Version eine bessere Leistung zu erzielen. Wir werden sehen :)

Ich habe die Leistung von teamspeak selbst noch nicht getestet, ob es für Spielsituationen geeignet ist. Ich bemerkte einige Millisekunden Latenz, aber noch nicht zu viel, um mir Sorgen zu machen.

keiki
quelle
2
Ordentlich in der Tat! Ich schätze, ich habe die "300 MHz Pentium-Äquivalenz" des Pi unterschätzt ...
Tobias Kienzler
Ich muss noch auf die Leistung achten. Wie viele Teamspeak-Slots können auf diese Weise verarbeitet werden?
Keiki
Dietmar ist es bereits gelungen, den Benutzermodus in der aktuellen QEMU-Version mit einem großen Leistungsschub für Wein zum Laufen zu bringen.
Keiki
Haben Sie aktuellere Informationen dazu?
Die Wellenlänge
@TheWavelength Nicht wirklich. Für mich war es ein Experiment, um es zum Laufen zu bringen. Aber ich würde es nicht empfehlen, weil es auf der einen Seite eine Menge Arbeit ist und auf der anderen Seite eine sehr instabile Sache mit schlechter Leistung. Ich habe mir zu diesem Zweck einen günstigen vserver gemietet und bin damit einverstanden. Ich brauchte sowieso nur mehr Serverleistung :)
Keiki
1

Neben QEMU können Sie ExaGear Desktop zur Emulation von x86 auf Raspberry Pi und zum Ausführen von Teamspeak 3 Server auf RPi verwenden. ExaGear Desktop ist viel schneller als QEMU und ermöglicht dem ts3-Server die Verwaltung von ca. 50-100 Clients auf RPi3. Auch die Installation ist einfacher.

  1. Installieren Sie ExaGear Desktop, mit dem Sie x86-Software auf Raspberry ausführen können (beachten Sie, dass ExaGear nicht kostenlos ist und Sie die Lizenz erwerben müssen).

    tar -xvzpf exagear-desktop-rpi2.tar.gz
    sudo ./install-exagear.sh
    
  2. Führen Sie ExaGear aus

    exagear
    

    Jetzt bist du in die x86-Welt gekommen.

  3. Ich empfehle, Teamspeak 3 Server nicht unter root auszuführen. So erstellen Sie einen speziellen Benutzer

    sudo adduser teamspeak
    sudo passwd teamspeak
    
  4. Erstellen Sie ein Installationsverzeichnis und machen Sie den teamspeak-Benutzer zum Eigentümer dieses Verzeichnisses:

    sudo mkdir /usr/local/teamspeak
    sudo chown teamspeak /usr/local/teamspeak
    
  5. Melden Sie sich als teamspeak-Benutzer an, laden Sie den ts3-Server herunter und entpacken Sie das Archiv:

    su teamspeak
    cd /usr/local/teamspeak
    wget http://dl.4players.de/ts/releases/3.0.11.4/teamspeak3-server_linux-x86-3.0.11.4.tar.gz
    tar -xzvf teamspeak3-server_linux-x86-3.0.11.4.tar.gz
    rm teamspeak3-server_linux-x86-3.0.11.4.tar.gz
    
  6. Starten Sie den ts3-Server

     /usr/local/teamspeak/teamspeak3-server_linux-x86/ts3server_minimal_runscript.sh
    

    Bildbeschreibung hier eingeben Ihr ts3-Server läuft. Sie sollten die Anmeldeinformationen kopieren, die für die Verbindung mit dem teamspeak 3-Client erforderlich sind.

  7. Drücken Sie STRG + C und starten Sie den Server im Hintergrund

    /usr/local/teamspeak/teamspeak3-server_linux-x86/ts3server_startscript.sh start
    

Die Anleitung basiert auf diesem Beitrag

vadik_lyutiy
quelle
Ich möchte Ihre Antwort nicht schlecht machen. Aber für mich scheint es, dass Sie für ExaGear arbeiten. Und so wäre diese Antwort Werbung. Wenn dies der Fall ist, geben Sie dies bitte in der Antwort am Anfang an. Vielen Dank.
Keiki
-1

Mit dem kürzlich veröffentlichten RPI 2 ist es möglich, einen funktionierenden Teamspeak-Server mithilfe von Linaro Ubuntu und Exagear Desktop zu installieren (der letzte, den Sie für 30 Dollar kaufen können).

Es ist eine einfache Installation:

  1. installiere linaro ubuntu

  2. kaufe und installiere exagear (was ich manuell machen musste, aber du wirst es auch leicht tun können)

  3. download und entpacke teamspeak3-server_linux-x86-3.0.11.2.tar in deiner / home / linaro / downloads map 4: starte exagear 5: starte teamspeak

und Sie können loslegen :) (oh, und vergessen Sie nicht, eine Portweiterleitung durchzuführen, wenn Sie sich hinter einer Firewall befinden)

Roelvisje
quelle