¿Puedo emular la CPU x86 para ejecutar el servidor Teamspeak 3?

15

Leyendo diferentes publicaciones y ¿Puedo emular x86 para ejecutar Windows 95? parece posible hasta cierto punto simular la CPU x86.

En mi caso especial, quiero ejecutar un servidor Teamspeak, que no está disponible para ARM en este momento. ¿Es posible emular el servidor Teamspeak?

Sé que existe el murmullo alternativo nativo. Pero eso no es una alternativa para mí, porque en la comunidad de juegos en la que estoy, Teamspeak 3 es el único que se usa.

keiki
fuente
2
Si tiene que emular x86, dudo que obtenga el rendimiento que desea.
Jivings
2
Sin mencionar el hecho de procesamiento de sonido en tiempo real en un entorno emulado. Creo que puede preguntar mejor a los desarrolladores de TeamSpeak si (si es posible) pueden portarlo a ARM. Sin embargo, leí una historia de que algunos rusos crearon un emulador x86 en ARM, pero creo que aún no está disponible.
ikku
1
volver a tu edición: Bueno, si usted tiene que alojar el servidor, entonces usted decidir qué cliente los otros deben utilizar. Si se oponen, tienen que organizarlo ellos mismos: Teamspeak simplemente no funcionará en la Raspberry Pi en este momento. No hay una razón razonable contra el murmullo: es gratuito, de código abierto, portátil, de gran calidad, bajo uso de recursos, etc.
Tobias Kienzler
de todos modos, quizás wiki.winehq.org/ARM es una lectura interesante para ti ...
Tobias Kienzler
1
@TobiasKienzler No tengo que alojar el servidor. Me ofrezco para alojar el servidor. Todos los que conozco en la comunidad alemana de World of Warcraft usan Teamspeak. Incluso cuando consigues que los miembros de tu gremio usen murmullos, a menudo tienes visitantes, que también solo conocen Teamspeak.
keiki

Respuestas:

25

Obtuve Teamspeak 3 ejecutándose usando qemu ejecutando un apretón x86 de Debian. Sin duda hay margen de mejora, pero por ahora eso fue lo que funcionó para mí. Espero no haber olvidado algo.

En primer lugar, gracias a Dietmar y meigrafd del foro raspberry pi. Sin su trabajo no habría tenido éxito.

Cómo

Instalar qemu

  1. Necesitamos algo de software apt-get install git zlib1g-dev libsdl1.2-dev
  2. Descargue la fuente de qemu ( wget 198.154.101.186/RaspberryPI/qemudidi2.rar) ya parcheada por Dietmar para Raspberry pi. Es qemu 0.15.50 de Thoronir, porque el soporte para el host ARM parece ser aún peor con la versión actual.
  3. Descomprimirlo unrar x qemuADLI.part1.rar. Tienes que usar la versión no gratuita de unrar ( Enlace al tutorial )
  4. Configurar qué compilar (toma aproximadamente un minuto) ./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. Ahora compila make(toma media hora al menos)
  6. Ahora instalar make install
  7. Ahora qemu está instalado con éxito.

Preparación de la imagen de Debian (usando Windows como host)

  1. Descargue e instale qemu para Windows ( Enlace )

  2. Descargue la imagen netinstall de Debian ( squeeze ). Solía ​​apretar, pero las sibilancias también podrían ser buenas.

  3. Crear imagen usando qemu-img.exe create -f qcow2 G:\debian.img 1500M(un tamaño más pequeño también debería ser suficiente)

  4. Instalar debian x86. Recomiendo elegir no metapaquete.qemu -cpu 486 -hda G:\debian.img -cdrom G:\debian-6.0.4-i386-netinst.iso -boot d -m 512 -smp 1

  5. Después de la instalación, ejecute el comando qemu nuevamente, pero con algunos cambios qemu -cpu 486 -hda G:\debian.img -boot d -m 512 -smp 1 -redir tcp:9022::22 -redir udp:1234::9987. -redir se utiliza para redirigir la red desde el invitado a los puertos de los hosts.

  6. Ahora instale menos y su editor favorito (como nano, vim, etc.) que le gusta usar apt-get install less vim

  7. Instalar el servidor OpenSSH apt-get install openssh-server

  8. Instale Teamspeak como lo haría normalmente.

  9. Conéctese a teamspeak desde su host de Windows usando localhost: 1234 (recuerde que anteriormente redirigimos el puerto)

  10. Prueba para conectarte a través de ssh / putty usando localhost: 9022

  11. Apague shutdown -hP nowla imagen y cópiela a través de scp (winscp) a su pi.

Ejecútelo en Pi (use un SSH para los siguientes comandos)

  1. Obtenga los qemu Bios que faltan wget -O /usr/share/qemu/sgabios.bin http://qemu.weilnetz.de/w32/2012-06-28/sgabios.bin

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

  3. Si obtiene un error de memoria, inténtelo varias veces.

  4. Si dice iniciar Grub, espere unos minutos (se está iniciando en segundo plano, ¡pero nunca recibirá un mensaje aquí!). Ahora inicie sesión con otro terminal SSH para iniciar sesión 'ssh root @ localhost -p 9022'

  5. Ahora inicie Teamspeak e intente iniciar sesión en el puerto 9055 de Pi.

  6. Apague nuevamente al invitado qemu.

  7. Comience de nuevo pero agregue -daemonize, para que se ejecute incluso cuando cierre la sesión. También hice un guión para ayudarme.

Actuación

Mi Pi es la versión de 256 MB overclockeada a 1000 Mhz usando raspi-config.

El Pi funciona constantemente al 70% del promedio de carga de la CPU. Varía entre 50% (usando 700 MHz) y casi 100% usando 1000 MHz. Pero la carga muestra "0.77, 0.83, 0.80", lo cual está bien.

En el futuro espero usar una versión nativa de Teamspeak (mi esperanza aún está vigente) o usar qemu en modo de usuario y un mejor rendimiento con una versión más actual. El tiempo dirá :)

Todavía tengo que probar el rendimiento del equipo en sí mismo, si es utilizable para situaciones de juego. Noté algunos milisegundos de retraso en la sobrecarga, pero no demasiado como para preocuparme todavía.

keiki
fuente
2
Aseado de hecho! Supongo que estaba subestimando la "equivalencia Pentium de 300 MHz" de Pi ...
Tobias Kienzler
Todavía tengo que estar atento al rendimiento. Cuántas máquinas tragamonedas puede manejar de esa manera.
keiki
Dietmar ya ha logrado ejecutar el modo de usuario en la versión actual de qemu con un gran aumento de rendimiento para el vino.
keiki
¿Tienes información más reciente sobre eso?
The Wavelength
@TheWavelength No realmente. Para mí fue un experimento hacer que funcionara. Pero no recomendaría usarlo, porque por un lado es mucho trabajo y por otro lado es algo muy inestable con un mal rendimiento. Me he alquilado un servidor virtual barato para ese propósito y estoy bien con eso. Solo necesitaba más potencia del servidor de todos modos :)
keiki
4

Considere usar Murmur (el servidor para Mumble) , que se puede ejecutar de forma nativa, como ya se ha hecho en Pi , mientras que también hay versiones x86 para Linux, Mac, Windows, iOS, ...

Tobias Kienzler
fuente
1
También hay uMurmur, que es más amigable con los recursos para un Rpi (aunque tuve un mal momento compilándolo).
David Strencsev
1

Además de QEMU, puede usar ExaGear Desktop para la emulación x86 en Raspberry Pi y ejecutar Teamspeak 3 Server en RPi. ExaGear Desktop es mucho más rápido que QEMU y permite que el servidor ts3 administre alrededor de 50-100 clientes en RPi3. También la instalación es más simple.

  1. Instale ExaGear Desktop, que permite ejecutar el software x86 en Raspberry (tenga en cuenta que ExaGear no es gratuito y debe obtener la licencia)

    tar -xvzpf exagear-desktop-rpi2.tar.gz
    sudo ./install-exagear.sh
    
  2. Ejecute ExaGear

    exagear
    

    Ahora entraste en el mundo x86.

  3. Recomiendo no ejecutar Teamspeak 3 Server en la raíz. Así que crea un usuario especial

    sudo adduser teamspeak
    sudo passwd teamspeak
    
  4. Cree el directorio de instalación y haga que el usuario de teamspeak sea el propietario de este directorio:

    sudo mkdir /usr/local/teamspeak
    sudo chown teamspeak /usr/local/teamspeak
    
  5. Inicie sesión como usuario de teamspeak, descargue el servidor ts3 y descomprima el archivo:

    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. Inicie el servidor ts3

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

    ingrese la descripción de la imagen aquí Su servidor ts3 se está ejecutando. Debe copiar las credenciales que serán necesarias para conectarse con el equipo teamspeak 3.

  7. Presione CTRL + C y luego inicie el servidor en segundo plano.

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

La instrucción se basa en esta publicación.

vadik_lyutiy
fuente
No quiero que tu respuesta sea mala. Pero para mí parece que estás trabajando para ExaGear. Y entonces esta respuesta sería publicitaria. Si ese es el caso, indíquelo en la respuesta al principio. Gracias.
keiki
-1

con el RPI 2 que se lanzó recientemente, es posible instalar un servidor de trabajo en equipo de Teampeak usando linaro ubuntu y exagear desktop (el último que puedes comprar por 30 dólares).

es una instalación sencilla:

  1. instalar linaro ubuntu

  2. compre e instale exagear (lo cual tuve que hacer manualmente, pero también podrá hacerlo fácilmente)

  3. descargue y desempaquete teamspeak3-server_linux-x86-3.0.11.2.tar en su / home / linaro / descargas mapa 4: comience exagear 5: comience teamspeak

y estás funcionando :) (oh, y no olvides hacer un reenvío de puertos si estás detrás de un firewall)

roelvisje
fuente