Могу ли я эмулировать процессор x86 для запуска сервера Teamspeak 3?

15

Читая разные посты и могу ли я эмулировать x86 для запуска Windows 95? Кажется, в некоторой степени возможно моделировать процессор x86.

В моем особом случае я хочу запустить сервер Teamspeak, который в данный момент не предназначен для ARM. Можно ли эмулировать сервер Teamspeak?

Я знаю, что существует местная альтернативная бормотание. Но это не альтернатива для меня, потому что в игровом сообществе я нахожусь в Teamspeak 3, который используется только один.

Keiki
источник
2
Если вам нужно эмулировать x86, то я сомневаюсь, что вы получите желаемую производительность.
Jivings
2
Не говоря уже о фактической обработке звука в реальном времени в эмулируемой среде. Я думаю, вы можете лучше спросить разработчиков TeamSpeak, могут ли они (если возможно) перенести его на ARM. Однако я читал историю о том, что некоторые русские создали эмулятор x86 для ARM, но я думаю, что он пока недоступен.
ikku
1
Если вы хотите разместить сервер, то вы решаете, какой клиент использовать другие. Если они выступают против, они должны принять его сами - Teamspeak просто не будет работать в Raspberry Pi в данный момент. Нет никакой разумной причины против бормотания - это бесплатно, с открытым исходным кодом, портативно, отличное качество, низкое использование ресурсов и т. Д.
Тобиас Кинцлер
в любом случае, может быть, wiki.winehq.org/ARM - интересное чтение для вас ...
Тобиас Кинцлер
1
@TobiasKienzler Мне не нужно размещать сервер. Я добровольно принимаю сервер. Все, кого я знаю в немецком сообществе World of Warcraft, используют Teamspeak. Даже когда вы заставляете членов вашей гильдии использовать бормотание, у вас часто бывают посетители, которые также знают только Teamspeak.
Keiki

Ответы:

25

Я запустил Teamspeak 3, используя qemu под управлением Debian x86. Конечно, есть место для улучшений, но сейчас это работает для меня. Надеюсь, я чего-то не забыл.

Прежде всего, благодаря Dietmar и meigrafd из форума Raspberry Pi. Без их работы я бы не справился.

Как

Установка qemu

  1. Нам нужно программное обеспечение apt-get install git zlib1g-dev libsdl1.2-dev
  2. Загрузите исходный код qemu ( wget 198.154.101.186/RaspberryPI/qemudidi2.rar), уже исправленный Dietmar для Raspberry pi. Это qemu 0.15.50 от Thoronir, потому что поддержка хоста ARM кажется еще хуже в текущей версии.
  3. Unrar это unrar x qemuADLI.part1.rar. Вы должны использовать несвободную версию unrar ( ссылка на инструкцию )
  4. Настроить, что компилировать (занимает около минуты) ./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. Теперь скомпилируйте make(занимает не менее получаса)
  6. Сейчас устанавливаем make install
  7. Теперь qemu успешно установлен.

Подготовка образа Debian (с использованием Windows в качестве хоста)

  1. Скачайте и установите qemu для Windows ( ссылка )

  2. Загрузите образ Debian netinstall ( squeeze ). Я использовал сжатие, но, возможно, тоже будет хорошо.

  3. Создайте изображение, используя qemu-img.exe create -f qcow2 G:\debian.img 1500M(меньшего размера тоже должно быть достаточно)

  4. Установите Debian x86. Я рекомендую не выбирать метапакет.qemu -cpu 486 -hda G:\debian.img -cdrom G:\debian-6.0.4-i386-netinst.iso -boot d -m 512 -smp 1

  5. После установки снова запустите команду qemu, но с некоторыми изменениями qemu -cpu 486 -hda G:\debian.img -boot d -m 512 -smp 1 -redir tcp:9022::22 -redir udp:1234::9987. -redir используется для перенаправления сети с гостевой на порты хостов.

  6. Теперь установите меньше и ваш любимый редактор (например, nano, vim и т. apt-get install less vim

  7. Установите сервер OpenSSH apt-get install openssh-server

  8. Установите Teamspeak как обычно.

  9. Подключитесь к teampeak с вашего хоста Windows, используя localhost: 1234 (помните, что мы перенаправили порт)

  10. Протестируйте для подключения к нему через ssh / putty используя localhost: 9022

  11. Закройте shutdown -hP nowизображение и скопируйте его через scp (winscp) на свой пи.

Запустите его на Pi (используйте SSH для следующих команд)

  1. Получить недостающий биос QEMU wget -O /usr/share/qemu/sgabios.bin http://qemu.weilnetz.de/w32/2012-06-28/sgabios.bin

  2. Начни это! qemu -cpu 486 -hda debian.img -m 150m -smp 1 -redir tcp:9022::22 -redir udp:9055::9987 --nographic

  3. Если вы получили ошибку памяти, попробуйте несколько раз.

  4. Если он говорит, что запускает Grub, подождите несколько минут (он загружается в фоновом режиме, но вы никогда не получите подсказку здесь!). Теперь войдите в систему с помощью другого SSH-терминала, чтобы войти 'ssh root @ localhost -p 9022'

  5. Теперь запустите Teamspeak и попробуйте войти в порт 9055 Pi.

  6. Выключите снова гостя QEMU.

  7. Запустите его снова, но добавьте -daemonize, чтобы он работал, даже когда вы выходите из системы. Я также сделал сценарий, чтобы помочь мне.

Производительность

My Pi - это версия с 256 МБ, разогнанная до 1000 МГц с использованием raspi-config.

Pi работает постоянно при средней загрузке процессора 70%. Он варьируется между 50% (при использовании 700 МГц) и почти 100% при использовании 1000 МГц. Но нагрузка показывает «0,77, 0,83, 0,80», что нормально.

В будущем я надеюсь либо использовать собственную версию Teamspeak (надеюсь, что она все еще работает), либо использовать qemu в пользовательском режиме и повысить производительность с более свежей версией. Время покажет :)

Мне еще предстоит протестировать производительность самого teampeak, если он пригоден для игровых ситуаций. Я заметил задержку в несколько миллисекунд, но не слишком много, чтобы волноваться.

Keiki
источник
2
Опрятный действительно! Я полагаю, что недооценил «эквивалентность Pentium 300 МГц» Пи ...
Тобиас Кинцлер
Я все еще должен высматривать представление. Сколько слотов teampeak он может обработать таким образом.
Keiki
Dietmar уже удалось запустить пользовательский режим в текущей версии qemu с большим приростом производительности для вина.
Кейки
У вас есть более свежая информация об этом?
Длина волны
@TheWavelength Не совсем. Для меня это был эксперимент, чтобы заставить его работать. Но я бы не рекомендовал его использовать, потому что с одной стороны это много работы, а с другой стороны, это очень нестабильная вещь с плохой производительностью. Я арендовал себе дешевый сервер для этой цели, и я в порядке. В любом случае мне просто нужно больше мощности сервера :)
keiki
4

Попробуйте вместо этого использовать Murmur (сервер для Mumble) , который может быть запущен изначально, как уже было сделано на Pi , в то время как есть также версии x86 для Linux, Mac, Windows, iOS, ...

Тобиас Кинцлер
источник
1
Есть также uMurmur, который более дружествен к ресурсам для Rpi (хотя я плохо его компилировал).
Давид Стренцев
1

Помимо QEMU, вы можете использовать ExaGear Desktop для эмуляции x86 на Raspberry Pi и запуска сервера Teamspeak 3 на RPi. ExaGear Desktop намного быстрее, чем QEMU, и позволяет серверу TS3 управлять примерно 50-100 клиентами на RPi3. Также установка проще.

  1. Установите ExaGear Desktop, который позволяет запускать программное обеспечение x86 на Raspberry (обратите внимание, что ExaGear не бесплатен, и вам необходимо получить лицензию)

    tar -xvzpf exagear-desktop-rpi2.tar.gz
    sudo ./install-exagear.sh
    
  2. Запустите ExaGear

    exagear
    

    Теперь вы вошли в мир x86.

  3. Я рекомендую не запускать сервер Teamspeak 3 под пользователем root. Так что создайте специального пользователя

    sudo adduser teamspeak
    sudo passwd teamspeak
    
  4. Создайте каталог установки и сделайте пользователя teampeak владельцем этого каталога:

    sudo mkdir /usr/local/teamspeak
    sudo chown teamspeak /usr/local/teamspeak
    
  5. Авторизуйтесь как пользователь teampeak, скачайте ts3 сервер и распакуйте архив:

    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. Запустите сервер ts3

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

    введите описание изображения здесь Ваш сервер TS3 работает. Вы должны скопировать учетные данные, которые потребуются для соединения с клиентом teampeak 3.

  7. Нажмите CTRL + C, а затем запустите сервер в фоновом режиме

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

Инструкция основана на этом посте

vadik_lyutiy
источник
Я не хочу, чтобы ваш ответ был плохим. Но мне кажется, что вы работаете на ExaGear. И таким ответом будет реклама. Если это так, пожалуйста, укажите это в ответе в начале. Спасибо.
Кейки
-1

с недавно выпущенным RPI 2 можно установить работающий сервер teampeak, используя linaro ubuntu и рабочий стол exagear (последний можно купить за 30 долларов).

это прямая установка:

  1. установить linaro убунту

  2. купить и установить exagear (что я должен был сделать вручную, но вы сможете сделать это также легко)

  3. скачать и распаковать teampeak3-server_linux-x86-3.0.11.2.tar на вашей / home / linaro / карте загрузок 4: запустить exagear 5: запустить teampeak

и все готово :) (о, и не забудьте сделать переадресацию портов, если вы находитесь за брандмауэром)

roelvisje
источник