Posso emulare la CPU x86 per eseguire il server Teamspeak 3?


15

Lettura di post diversi e Posso emulare x86 per eseguire Windows 95? sembra essere possibile in una certa misura simulare la CPU x86.

Nel mio caso speciale, voglio eseguire un server Teamspeak, che al momento non è fornito per ARM. È possibile emulare il server Teamspeak?

So che esiste il mumble alternativo nativo. Ma questa non è un'alternativa per me, perché nella comunità di gioco sono in Teamspeak 3 è l'unico usato.


2
Se devi emulare x86, allora dubito che otterrai le prestazioni che desideri.
Jivings,

2
Per non parlare del fatto che l'elaborazione del suono in tempo reale in un ambiente emulato. Penso che puoi chiedere agli sviluppatori di TeamSpeak se (se possibile) possono portarlo su ARM. Ho comunque letto una storia secondo cui alcuni russi hanno creato un emulatore x86 su ARM, ma penso che non sia ancora disponibile.
ikku,

1
re la tua modifica: Beh, se si deve gestire il server, poi si deciderà quale client gli altri dovrebbero usare. Se si oppongono, devono ospitarlo da soli - Teamspeak semplicemente non funzionerà al Raspberry Pi al momento. Non vi è alcuna ragione ragionevole per contrastare Mumble: è gratuito, open source, portatile, di grande qualità, basso consumo di risorse, ecc.
Tobias Kienzler

comunque, forse wiki.winehq.org/ARM è una lettura interessante per te ...
Tobias Kienzler

1
@TobiasKienzler Non devo ospitare il server. Mi offro volontario per ospitare il server. Tutti quelli che conosco nella comunità tedesca di World of Warcraft usano Teamspeak. Anche quando fai in modo che i membri della tua gilda utilizzino il mumble, spesso hai visitatori, che conoscono anche Teamspeak.
keiki

Risposte:


25

Ho fatto funzionare Teamspeak 3 usando qemu con una compressione Debian x86. C'è sicuramente un certo margine di miglioramento, ma per ora è quello che ha funzionato per me. Spero di non aver dimenticato qualcosa.

Innanzitutto grazie a Dietmar e meigrafd del forum Raspberry Pi. Senza il loro lavoro non ci sarei riuscito.

Come

Installazione di qemu

  1. Abbiamo bisogno di un po 'di software apt-get install git zlib1g-dev libsdl1.2-dev
  2. Scarica la fonte di qemu ( wget 198.154.101.186/RaspberryPI/qemudidi2.rar) già patchata da Dietmar per Raspberry pi. È qemu 0.15.50 di Thoronir, perché il supporto per l'host ARM sembra peggiorare ulteriormente con la versione attuale.
  3. Annulla tutto unrar x qemuADLI.part1.rar. Devi usare la versione non libera non ordinata ( Link a howto )
  4. Configura cosa compilare (richiede circa 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. Ora compila make(impiega almeno mezz'ora)
  6. Ora installa make install
  7. Ora qemu è installato correttamente.

Preparazione di Debian Image (usando Windows come host)

  1. Scarica e installa qemu per Windows ( Link )

  2. Scarica l'immagine di Debian netinstall ( squeeze ). Ho usato la compressione, ma anche il respiro sibilante potrebbe essere buono.

  3. Crea immagine usando qemu-img.exe create -f qcow2 G:\debian.img 1500M(anche le dimensioni più piccole dovrebbero essere sufficienti)

  4. Installa debian x86. Consiglio di non scegliere nessun meta pacchetto.qemu -cpu 486 -hda G:\debian.img -cdrom G:\debian-6.0.4-i386-netinst.iso -boot d -m 512 -smp 1

  5. Dopo l'installazione, eseguire nuovamente il comando qemu, ma con alcune modifiche qemu -cpu 486 -hda G:\debian.img -boot d -m 512 -smp 1 -redir tcp:9022::22 -redir udp:1234::9987. -redir è usato per reindirizzare la rete dal guest alle porte degli host.

  6. Ora installa meno e il tuo editor preferito (come nano, vim, ecc.) Che ti piace usare apt-get install less vim

  7. Installa OpenSSH Server apt-get install openssh-server

  8. Installa Teamspeak come faresti di solito.

  9. Connettiti a teamspeak dal tuo host di Windows usando localhost: 1234 (ricorda che sopra abbiamo reindirizzato la porta)

  10. Prova a connetterti tramite ssh / putty usando localhost: 9022

  11. Chiudi shutdown -hP nowl'immagine e copiala tramite scp (winscp) sul tuo pi.

Eseguilo sul Pi (usa un SSH per i seguenti comandi)

  1. Ottieni il BIOS qemu mancante wget -O /usr/share/qemu/sgabios.bin http://qemu.weilnetz.de/w32/2012-06-28/sgabios.bin

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

  3. Se ricevi un errore di memoria, provalo alcune volte.

  4. Se dice che avvia Grub, attendi qualche minuto (si avvia in background, ma qui non riceverai mai un messaggio!). Ora accedi con un altro terminale SSH per accedere 'ssh root @ localhost -p 9022'

  5. Ora avvia Teamspeak e prova ad accedere alla porta 9055 del Pi.

  6. Spegni di nuovo l'ospite qemu.

  7. Riavviarlo ma aggiungere -daemonize, quindi viene eseguito anche quando ci si disconnette. Ho anche realizzato una sceneggiatura per aiutarmi.

Prestazione

My Pi è la versione da 256 MB overcloccata a 1000 Mhz usando raspi-config.

Il Pi funziona costantemente al 70% di carico medio della CPU. Varia tra il 50% (usando 700 MHz) e quasi il 100% usando 1000 MHz. Ma il carico mostra "0,77, 0,83, 0,80", il che va bene.

In futuro spero di utilizzare una versione Teamspeak nativa (la mia speranza è ancora alta) o di usare qemu in modalità utente e prestazioni migliori con una versione più attuale. Il tempo lo dirà :)

Devo ancora testare le prestazioni di teamspeak stesso, se è utilizzabile per situazioni di gioco. Ho notato un po 'di latenza di millisecondi, ma non è ancora troppo preoccupante.


2
Davvero pulito! Immagino di sottovalutare l'equivalenza del Pentium a 300 MHz del Pi ...
Tobias Kienzler,

Devo ancora cercare la performance. Quante slot teampeak può gestire in quel modo.
keiki

Dietmar è già riuscito a far funzionare la modalità utente nell'attuale versione qemu con un notevole aumento delle prestazioni per il vino.
keiki,

Hai informazioni più recenti al riguardo?
The Wavelength

@TheWavelength Non proprio. Per me è stato un esperimento per farlo funzionare. Ma non consiglierei di usarlo, perché da un lato è un sacco di lavoro e dall'altro è una cosa molto instabile con cattive prestazioni. Mi sono noleggiato un vserver economico per quello scopo e sto bene. Avevo solo bisogno di più potenza del server :)
keiki


1

Oltre a QEMU, è possibile utilizzare ExaGear Desktop per l'emulazione x86 su Raspberry Pi ed eseguire Teamspeak 3 Server su RPi. ExaGear Desktop è molto più veloce di QEMU e consente al server ts3 di gestire circa 50-100 client su RPi3. Anche l'installazione è più semplice.

  1. Installa ExaGear Desktop, che consente di eseguire il software x86 su Raspberry (nota che ExaGear non è gratuito e devi ottenere la licenza)

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

    exagear
    

    Ora sei entrato nel mondo x86.

  3. Consiglio di non eseguire Teamspeak 3 Server sotto root. Quindi crea un utente speciale

    sudo adduser teamspeak
    sudo passwd teamspeak
    
  4. Crea la directory di installazione e rendi l'utente di teamspeak il proprietario di questa directory:

    sudo mkdir /usr/local/teamspeak
    sudo chown teamspeak /usr/local/teamspeak
    
  5. Accedi come utente di teamspeak, scarica il server ts3 e scompatta l'archivio:

    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. Avviare il server ts3

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

    inserisci qui la descrizione dell'immagine Il tuo server ts3 è in esecuzione. Dovresti copiare le credenziali che saranno necessarie per la connessione con il client di teamspeak 3.

  7. Premere CTRL + C e quindi avviare il server in background

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

Le istruzioni si basano su questo post


Non voglio rendere la tua risposta negativa. Ma a me sembra che tu stia lavorando per ExaGear. E quindi questa risposta sarebbe pubblicità. In tal caso, si prega di dichiararlo nella risposta all'inizio. Grazie.
keiki

-1

con l'RPI 2 che è stato recentemente rilasciato, è possibile installare un server di teamspeak funzionante utilizzando Linaro Ubuntu ed exagear desktop (l'ultimo che è possibile acquistare per 30 dollari).

è un'installazione semplice:

  1. installa linaro ubuntu

  2. acquista e installa exagear (cosa che dovevo fare manualmente, ma sarai in grado di farlo anche facilmente)

  3. scarica e decomprime teamspeak3-server_linux-x86-3.0.11.2.tar nella tua mappa / home / linaro / download 4: start exagear 5: start teamspeak

e sei attivo e funzionante :) (oh, e non dimenticare di fare un port forwarding se sei dietro un firewall)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.