Install TeamSpeak Server on Raspberry Pi

By default you can’t install TeamSpeak Server on a Raspberry Pi. That’s because TeamSpeak is made for x86 processors and Raspberry Pi only comes with ARM processors.

To install TeamSpeak Server on a Raspberry Pi you need to install an emulator. In other words you have to make your ARM processor understand packages made for x86 processors.

In this guide I will use the Box86 emulator.

Setup the Raspberry Pi for Box86

1: First we have to update the system with these two commands:

sudo apt update
sudo apt upgrade

2: Now we need to install all the necessary packages to compile Box86:

sudo apt install git build-essential cmake

3: Now clone the latest GitHub version:

git clone https://github.com/ptitSeb/box86

If you have a 64-bit operating system follow these steps. If your operating system is 32-bit; don’t!

(4): Add the 32-bit architecture to the package manager:

sudo dpkg --add-architecture armhf

(5): Update the package manager:

sudo apt update

(6): Install the needed packages:

sudo apt install gcc-arm-linux-gnueabihf libc6:armhf libncurses5:armhf libstdc++6:armhf
Compile Box86

1: Change into the driectory where we downloaded Box86 to:

cd ~/box86

2: Make a new directory called ‘Build’ and change into it:

mkdir build
cd build

3: Now choose the right command for your Raspberry Pi and OS:

For Raspberry Pi 4, 32-bit:

cmake .. -DRPI4=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo

For Raspberry Pi 4, 64-bit:

cmake .. -DRPI4ARM64=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo

For Raspberry Pi 3:

cmake .. -DRPI3=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo

For Raspberry Pi 2:

cmake .. -DRPI2=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo

4: Now we have to compile Box86. This can take a very long time!

make -j$(nproc)

5: Once finished we have to install the compiled Box86 emulator:

sudo make install

6: Now we have to restart the systemd-binfmt service:

sudo systemctl restart systemd-binfmt

7: All we have to do now is reboot:

sudo reboot
Setup and install TeamSpeak Server

1: Start by updating:

sudo apt update
sudo apt upgrade

2: Install ‘jq’:

sudo apt install jq

3: Create user ‘teamspeak’:

sudo adduser teamspeak

Just hit Enter and skip through and confirm with Y(es).

4: Switch user to ‘teamspeak’:

sudo su - teamspeak

5: Download the latest Linux x86 version of TeamSpeak Server:

wget $(curl -Ls 'https://www.teamspeak.com/versions/server.json' | jq -r '.linux.x86.mirrors | values[]')

6: Extract the downloaded package:

tar xvf teamspeak3-server_linux_x86-*

7: Remove the package from where we extracted:

rm teamspeak3-server_linux_x86-*

8: Change into the TeamSpeak Server directory:

cd teamspeak3-server_linux_x86

9: If you agree to the TeamSpeak license agreement:

touch .ts3server_license_accepted

10: Start the server for the first time:

./ts3server

11: On the first startup it will post an admin token (privilege key) that you will need later in the TeamSpeak Client.
Copy it and save it!

12: When you have copied the token you can shutdown the server for now by pressing Ctrl+C

13: Exit the ‘teamspeak’ user:

exit
Configure the server to start at boot/reboot

1: Create a service file:

sudo nano /etc/systemd/system/teamspeak3.service

2: Copy-paste the following into the service file:

[Unit]
Description=TeamSpeak 3 Server
After=network.target

[Service]
WorkingDirectory=/home/teamspeak/teamspeak3-server_linux_x86/
User=teamspeak
ExecStart=/home/teamspeak/teamspeak3-server_linux_x86/ts3server
Restart=always
RestartSec=15
Restart=on-failure

[Install]
WantedBy=multi-user.target

3: Save and exit the file by pressing Ctrl+X, then Y and then Enter.

4: Reload systemctl daemon:

sudo systemctl daemon-reload

5: Enable the TeamSpeak Server service:

sudo systemctl enable teamspeak3

6: Start the TeamSpeak Server:

sudo systemctl start teamspeak3

7: Check the status of the TeamSpeak Server:

sudo systemctl status teamspeak3

8: Exit by pressing Ctrl+C

Conclusion

Congratulations! If you have followed every step of this tutorial you should now have a working TeamSpeak3 Server running on your Raspberry Pi.

If you have any questions or comments please post them below.

Versions

1.0 28-09-2022 First post

Install imagick on Debian Apache

If you’re running a fresh install of WordPress chances are that you will see the error
“The optional module, imagick, is not installed, or has been disabled.”

To solve this error go to command line and type:

sudo apt install php-imagick

When the install is done you need to restart Apache:

sudo service apache2 restart

If you go to your WordPress site and refresh the error should now be gone.

Install curl on Debian Apache

Often if you install WordPress on Debian Apache you will get the error
“The optional module, curl, is not installed, or has been disabled.”

To install curl go to your command line and type:

sudo apt install curl php-curl

When it’s done installing you need to restart apache:

sudo service apache2 restart

curl is now installed and if you go to your WordPress installation now the error should be gone.

Configure Pi-hole with Apache

Follow these simple steps if you wan’t to set up Pi-hole on an existing Apache web server or if you wan’t to install Apache later on.

If you have allready installed Pi-hole with the included lighttpd web server this will not work.

Run the Pi-hole install:

curl -sSL https://install.pi-hole.net | bash

When asked “Do you wish to install the web server” select “No”.

Finish the Pi-hole installation process and run:

sudo usermod -a -G pihole www-data

Then install sqlite3:

sudo apt install php-sqlite3

Restart Apache:

sudo service apache2 restart

If you don’t allready have PHP installed you will also need to run:

sudo apt install php libapache2-mod-php

And restart Apache again:

sudo service apache2 restart

If you have successfully set up Pi-hole with Apache the address http://ip-address/admin should now work.