You’re going to first start of by updating Ubuntu to ensure the latest bug and security updates are patched.
sudo apt-get update
You will next need to install some dependencies for Arma 3 and steamcmd to use, we will also be installing screen
sudo apt-get install lib32stdc++6 lib32gcc1 screen -y
We advise against using the root user for security reasons, so we will be creating a new user for the server
sudo adduser arma3
The following command needs to still be ran as root to allow your new user to access screen
chmod o+rw /dev/pts/0
Now we can switch to our new user to start creating the server
sudo -i -u arma3
We will now create a new directory for SteamCMD
mkdir ~/steamcmd && cd ~/steamcmd
Start the download of the steamcmd installer by entering the following:
wget http://media.steampowered.com/installer/steamcmd_linux.tar.gz
We can extract the contents of the steamcmd installer simply by entering:
tar -xvzf steamcmd_linux.tar.gz
Running the SteamCMD command line is the next step. Once the extraction has completed we can start with the download of the Arma 3 server files.:
./steamcmd.sh
You will then need to login to Steamcmd using a valid steam account (Note this does not need to have Arma installed, Valve recommends using a blank steam account for this)
login myusername
Next we will specify where to install the server:
force_install_dir ./arma3/
Next we will download the Arma 3 Linux dedicated server files:
app_update 233780 validate
We can now exit SteamCMD:
exit
We will now create the directories for the profile files and Arma3.cfg file
mkdir -p ~/".local/share/Arma 3" && mkdir -p ~/".local/share/Arma 3 - Other Profiles"
To launch the server run the following
script /dev/null
screen -S armaserver
cd arma3
./arma3server -name=server -config=server.cfg
You can then exit screen using Control + A + D
[Configuring the server]
You can edit most the server settings in the config file
cd ~/steamcmd/arma3
nano server.cfg
You can read the documentation here:BIStudio wiki