Linux Server Installation
This guide contains a comprehensive guide on installing an open.mp server on Ubuntu or another Debian based Linux. Whether you're a beginner or just looking to refresh your knowledge, this guide may have something useful for you!
If you are using the SA:MP server and didn't convert to open.mp yet, please stop here and read this guide first.
Good news for FCNPC users! The legacy FCNPC plugin has been replaced with the official open.mp NPC component, which provides the same functionality with better performance and native integration. Simply convert your code to the built-in NPC component instead.
Prerequisites
Before starting, you should have:
- A machine running Ubuntu (20.04 or later recommended) or another Debian based Linux;
- WinSCP or Filezilla for file transfers;
- PuTTY or your hosting SSH solution;
If you install WinSCP, the installer will prompt you to install PuTTY! It's up to you if you want to install it or not, but you can always download it later!
Phase 1: Preparing the Environment
- Connecting via SSH:
- Use PuTTY or your hosting SSH solution to connect to your instance.
Seek online guides or your hosting provider's documentation if you're unsure how to connect to your Linux Instance.
-
Updating your Linux Instance:
- Before proceeding, let's ensure your system is up to date by running:
sudo apt updatesudo apt upgrade -
Creating a secure service account:
- For security reasons, we should create a dedicated service account without a home directory:
sudo useradd -M svc-omp-server -
Locking the service account:
- Let's prevent the service account from being used for login:
sudo usermod -L svc-omp-server -
Adding your user to the service group:
- Add your current user to the svc-omp-server group so you can manage files:
sudo usermod -aG svc-omp-server $USERwarningYou need to log out and log back in for group changes to take effect!
-
Creating a directory for the server files:
- We will use the /opt directory, this is the standard location for third-party applications:
sudo mkdir /opt/omp-server -
Setting permissions for the directory:
- Changing the group of the directory to match the service account:
sudo chgrp svc-omp-server /opt/omp-server- Give the group read, write, and execute permissions:
sudo chmod g+rwx /opt/omp-server- Setting the g+s flag so new files inherit the correct group:
sudo chmod g+s /opt/omp-server- Remove access for others:
sudo chmod o-rwx /opt/omp-server
Phase 2: Installing open.mp Server Files
-
Let's navigate to the server directory:
- We need to move to the /opt/omp-server directory where the server will be stored:
cd /opt/omp-server -
Downloading the open.mp server files:
- Download the latest release of the open.mp server:
sudo -u svc-omp-server wget https://github.com/openmultiplayer/open.mp/releases/download/vX.X.X.XXXX/open.mp-linux-x86.tar.gz
You should ALWAYS check for the latest release at the open.mp GitHub Releases page! https://github.com/openmultiplayer/open.mp/releases
- Extracting the server files:
- Once downloaded, extract the files:
sudo -u svc-omp-server tar -xzf open.mp-linux-x86.tar.gz
Phase 3: Configuring and Starting the Server
-
Installing the required packages:
- Since the server runs as a 32-bit application, you need to enable 32-bit architecture support and install screen:
sudo dpkg --add-architecture i386sudo apt updatesudo apt install libc6:i386 screen -
Making the server executable:
- Change the permissions so the server can be executed (only required once!):
cd /opt/omp-server/Server/sudo chmod +x omp-server -
Starting the server:
- Use screen to start the server in a detachable session as the service account:
sudo -u svc-omp-server screen -dmS omp-server ./omp-serverподсказкаThis creates a detached screen session named "omp-server" running as the service account. You can attach to it anytime to see the console!
Phase 4: Managing the Server
-
Viewing the server console:
- To attach to the running server and see the console output:
sudo -u svc-omp-server screen -r omp-server- To detach from the screen session (leave it running), press:
Ctrl+AthenD
-
Stopping the server:
- Attach to the screen session (step 14), then stop the server gracefully by typing
/exitin the console or pressingCtrl+C - Alternatively, you can kill the screen session:
sudo -u svc-omp-server screen -X -S omp-server quit - Attach to the screen session (step 14), then stop the server gracefully by typing
-
Checking if the server is running:
- To see all screen sessions:
sudo -u svc-omp-server screen -ls
Phase 5: Uploading Your Gamemode and Files
- Upload your custom gamemodes and scripts:
- Use WinSCP or Filezilla to transfer your gamemodes and scripts to the /opt/omp-server directory. Important: Make sure to use .so files for Linux plugins, as .dll files are only supported on Windows.
Help
If you're still experiencing issues setting up the server, join the official open.mp Discord server: https://discord.gg/samp
Post your question in the #openmp-support channel and mention this guide so we can improve it.