Puis-je émuler un processeur x86 pour exécuter le serveur Teamspeak 3?

15

Lecture de différents articles et puis-je émuler x86 pour exécuter Windows 95? il semble possible dans une certaine mesure de simuler le processeur x86.

Dans mon cas spécial, je veux exécuter un serveur Teamspeak, qui n'est pas fourni pour ARM pour le moment. Est-il possible d'émuler le serveur Teamspeak?

Je sais qu'il existe l'alternative native marmonner. Mais ce n'est pas une alternative pour moi, car dans la communauté de jeu, je suis dans Teamspeak 3 est le seul utilisé.

keiki
la source
2
Si vous devez émuler x86, je doute que vous obtiendrez les performances souhaitées.
Jivings
2
Sans parler du fait que le traitement du son en temps réel dans un environnement émulé. Je pense que vous pouvez mieux demander aux développeurs de TeamSpeak si (si possible) ils peuvent le porter sur ARM. J'ai cependant lu une histoire selon laquelle certains russes ont créé un émulateur x86 sur ARM, mais je pense qu'il n'est pas encore disponible.
ikku
1
re votre édition: Eh bien, si vous devez héberger le serveur, vous décidez quel client les autres doivent utiliser. S'ils s'y opposent, ils doivent l'héberger eux-mêmes - Teamspeak ne fonctionnera tout simplement pas pour le Raspberry Pi pour le moment. Il n'y a aucune raison raisonnable contre Mumble - c'est gratuit, open source, portable, de grande qualité, faible utilisation des ressources, etc.
Tobias Kienzler
de toute façon, peut - être que wiki.winehq.org/ARM est une lecture intéressante pour vous ...
Tobias Kienzler
1
@TobiasKienzler Je n'ai pas à héberger le serveur. Je me porte volontaire pour héberger le serveur. Tout le monde que je connais dans la communauté allemande de World of Warcraft utilise Teamspeak. Même lorsque vous demandez à vos membres de guilde d'utiliser marmonner, vous avez souvent des visiteurs qui ne connaissent que Teamspeak.
keiki

Réponses:

25

J'ai fait fonctionner Teamspeak 3 en utilisant qemu exécutant une compression Debian x86. Il y a certes une marge d'amélioration, mais pour l'instant c'est ce qui a fonctionné pour moi. J'espère que je n'ai pas oublié quelque chose.

Tout d'abord merci à Dietmar et meigrafd du forum Raspberry Pi. Sans leur travail, je n'aurais pas réussi.

Comment

Installer qemu

  1. Nous avons besoin d'un logiciel apt-get install git zlib1g-dev libsdl1.2-dev
  2. Téléchargez la source de qemu ( wget 198.154.101.186/RaspberryPI/qemudidi2.rar) déjà corrigée par Dietmar pour Raspberry pi. Il s'agit de qemu 0.15.50 de Thoronir, car la prise en charge de l'hôte ARM semble être encore pire avec la version actuelle.
  3. Ne le faites pas unrar x qemuADLI.part1.rar. Vous devez utiliser la version non-libre d'ARR ( lien vers le guide )
  4. Configurer quoi compiler (prend environ une 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. Compilez maintenant make(cela prend au moins une demi-heure)
  6. Maintenant installez make install
  7. Maintenant qemu est installé avec succès.

Préparer l'image Debian (en utilisant Windows comme hôte)

  1. Téléchargez et installez qemu pour Windows ( Lien )

  2. Téléchargez l'image Debian netinstall ( squeeze ). J'ai utilisé la compression, mais la respiration sifflante pourrait aussi être bonne.

  3. Créer une image en utilisant qemu-img.exe create -f qcow2 G:\debian.img 1500M(une taille plus petite devrait également suffire)

  4. Installez debian x86. Je recommande de ne choisir aucun méta-package.qemu -cpu 486 -hda G:\debian.img -cdrom G:\debian-6.0.4-i386-netinst.iso -boot d -m 512 -smp 1

  5. Après l'installation, exécutez à nouveau la commande qemu, mais avec quelques modifications qemu -cpu 486 -hda G:\debian.img -boot d -m 512 -smp 1 -redir tcp:9022::22 -redir udp:1234::9987. -redir est utilisé pour rediriger le réseau de l'invité vers les ports hôtes.

  6. Maintenant, installez moins et votre éditeur préféré (comme nano, vim, etc.) que vous aimez utiliser apt-get install less vim

  7. Installer le serveur OpenSSH apt-get install openssh-server

  8. Installez Teamspeak comme vous le feriez habituellement.

  9. Connectez-vous à teamspeak depuis votre hôte Windows en utilisant localhost: 1234 (rappelez-vous ci-dessus que nous avons redirigé le port)

  10. Testez pour vous y connecter via ssh / putty en utilisant localhost: 9022

  11. Arrêtez shutdown -hP nowl'image et copiez-la via scp (winscp) sur votre pi.

Exécutez-le sur le Pi (utilisez un SSH pour les commandes suivantes)

  1. Obtenez le bios qemu manquant wget -O /usr/share/qemu/sgabios.bin http://qemu.weilnetz.de/w32/2012-06-28/sgabios.bin

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

  3. Si vous obtenez une erreur de mémoire, essayez-la plusieurs fois.

  4. S'il indique le démarrage de Grub, attendez quelques minutes (il démarre en arrière-plan, mais vous ne recevrez jamais d'invite ici!). Connectez-vous maintenant avec un autre terminal SSH pour vous connecter 'ssh root @ localhost -p 9022'

  5. Démarrez maintenant Teamspeak et essayez de vous connecter sur le port 9055 du Pi.

  6. Arrêtez à nouveau l'invité qemu.

  7. Redémarrez-le mais ajoutez -daemonize pour qu'il s'exécute même lorsque vous vous déconnectez. J'ai aussi fait un script pour m'aider.

Performance

Mon Pi est la version 256 Mo overclockée à 1000 Mhz en utilisant raspi-config.

Le Pi fonctionne constamment à 70% de charge CPU en moyenne. Elle varie entre 50% (en utilisant 700 MHz) et près de 100% en utilisant 1000 MHz. Mais la charge affiche "0,77, 0,83, 0,80", ce qui est correct.

À l'avenir, j'espère soit utiliser une version native de Teamspeak (mon espoir est toujours en place), soit utiliser qemu en mode utilisateur et de meilleures performances avec une version plus récente. Le temps nous le dira :)

Je n'ai pas encore testé les performances de teamspeak lui-même, s'il est utilisable pour les situations de jeu. J'ai remarqué une latence de quelques millisecondes au-dessus, mais pas trop de soucis pour le moment.

keiki
la source
2
Bien sûr! Je suppose que je sous-estimais "l'équivalence Pentium 300 MHz" du Pi ...
Tobias Kienzler
Je dois encore faire attention à la performance. Combien d'emplacements de teamspeak il peut gérer de cette façon.
keiki
Dietmar a déjà réussi à faire fonctionner le mode utilisateur dans la version actuelle de qemu avec une forte augmentation des performances pour le vin.
keiki
Avez-vous des informations plus récentes à ce sujet?
The Wavelength
@TheWavelength Pas vraiment. Pour moi, c'était une expérience pour le faire fonctionner. Mais je ne recommanderais pas de l'utiliser, car d'un côté c'est beaucoup de travail et de l'autre c'est une chose très instable avec de mauvaises performances. Je me suis loué un vserver bon marché à cet effet et je suis d'accord avec ça. J'avais juste besoin de plus de puissance serveur de toute façon :)
keiki
4

Pensez à utiliser plutôt Murmur (le serveur pour Mumble) , qui peut être exécuté nativement, comme cela a déjà été fait sur le Pi , alors qu'il existe également des versions x86 pour Linux, Mac, Windows, iOS, ...

Tobias Kienzler
la source
1
Il y a aussi uMurmur qui est plus convivial pour un Rpi (même si j'ai eu du mal à le compiler).
David Strencsev
1

À côté de QEMU, vous pouvez utiliser ExaGear Desktop pour l'émulation x86 sur Raspberry Pi et exécuter Teamspeak 3 Server sur RPi. ExaGear Desktop est beaucoup plus rapide que QEMU et permet au serveur ts3 de gérer environ 50 à 100 clients sur RPi3. L'installation est également plus simple.

  1. Installez ExaGear Desktop, qui permet d'exécuter le logiciel x86 sur Raspberry (notez qu'ExaGear n'est pas gratuit et que vous devez obtenir la licence)

    tar -xvzpf exagear-desktop-rpi2.tar.gz
    sudo ./install-exagear.sh
    
  2. Exécutez ExaGear

    exagear
    

    Vous êtes maintenant entré dans le monde x86.

  3. Je recommande de ne pas exécuter Teamspeak 3 Server sous root. Alors créez un utilisateur spécial

    sudo adduser teamspeak
    sudo passwd teamspeak
    
  4. Créez le répertoire d'installation et rendez l'utilisateur teamspeak propriétaire de ce répertoire:

    sudo mkdir /usr/local/teamspeak
    sudo chown teamspeak /usr/local/teamspeak
    
  5. Connectez-vous en tant qu'utilisateur teamspeak, téléchargez le serveur ts3 et décompressez l'archive:

    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. Démarrer le serveur ts3

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

    entrez la description de l'image ici Votre serveur ts3 est en cours d'exécution. Vous devez copier les informations d'identification qui seront nécessaires pour la connexion avec le client teamspeak 3.

  7. Appuyez sur CTRL + C, puis démarrez le serveur en arrière-plan

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

L'instruction est basée sur ce poste

vadik_lyutiy
la source
Je ne veux pas rendre votre réponse mauvaise. Mais il me semble que vous travaillez pour ExaGear. Et donc cette réponse serait une publicité. Si tel est le cas, veuillez l'indiquer dans la réponse au début. Je vous remercie.
keiki
-1

avec le RPI 2 qui vient de sortir, il est possible d'installer un serveur teamspeak fonctionnel en utilisant linaro ubuntu et exagear desktop (le dernier que vous pouvez acheter pour 30 dollars).

c'est une installation simple:

  1. installer linaro ubuntu

  2. acheter et installer exagear (ce que je devais faire manuellement, mais vous pourrez aussi le faire facilement)

  3. téléchargez et décompressez teamspeak3-server_linux-x86-3.0.11.2.tar dans votre / home / linaro / téléchargements map 4: démarrez exagear 5: démarrez teamspeak

et vous êtes opérationnel :) (oh, et n'oubliez pas de faire un transfert de port si vous êtes derrière un pare-feu)

roelvisje
la source