Hosting a Linux Server – DayZ
From Bohemia Interactive Community
Download SteamCMD
Debian:
sudo apt-get install lib32gcc-s1
RHEL:
sudo yum install glibc.i686 libstdc++.i686
Arch Linux:
sudo pacman -Syy glibc lib32-glibc nano
After installing these packages, do the following:
mkdir -p ~/servers/steamcmd && cd ~/servers/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
Download DayZ Server
Without Mods
Stable branch:
~/servers/steamcmd/steamcmd.sh +force_install_dir ~/servers/dayz-server/ +login your_login +app_update 223350 +quit
Experimental branch:
~/servers/steamcmd/steamcmd.sh +force_install_dir ~/servers/dayz-server/ +login your_login +app_update 1042420 +quit
With Mods
Let's install two mods on a stable branch: Community Framework and Community Online Tools:
~/servers/steamcmd/steamcmd.sh +force_install_dir ~/servers/dayz-server/ +login yout_login +app_update 223350 +workshop_download_item 221100 1559212036 +workshop_download_item 221100 1564026768 +quit
Run DayZ Server
Without Mods
сd ~/servers/dayz-server/
./DayZServer -config=serverDZ.cfg -port=2301 -BEpath=battleye -profiles=profiles -dologs -adminlog -netlog -freezecheck
With Mods
In this example, there will still be two mods: Community Framework and Community Online Tools.
cd ~/servers/dayz-server/
ln -s ~/servers/dayz-server/steamapps/workshop/content/221100/1559212036 ~/servers/dayz-server/1559212036
ln -s ~/servers/dayz-server/steamapps/workshop/content/221100/1564026768 ~/servers/dayz-server/1564026768
ln -s ~/servers/dayz-server/steamapps/workshop/content/221100/1559212036/keys/* ~/servers/dayz-server/keys/
./DayZServer -config=serverDZ.cfg -port=2301 "-mod=1559212036;1564026768;" -BEpath=battleye -profiles=profiles -dologs -adminlog -netlog -freezecheck
Ctrl + C - Close the server.
As Daemon With Restart and Auto-Update
Create The Initial Scripts
- Depending on mods:
- Without mods: nano ~/servers/dayz-server/update.sh
/home/your_username/servers/steamcmd/steamcmd.sh +force_install_dir /home/your_username/servers/dayz-server/ +login your_login +app_update 223350 +quit
- With mods: nano ~/servers/dayz-server/update.sh
/home/your_username/servers/steamcmd/steamcmd.sh +force_install_dir /home/your_username/servers/dayz-server/ +login your_login +app_update 223350 +workshop_download_item 221100 1559212036 +workshop_download_item 221100 1564026768 +quit rm /home/your_username/servers/dayz-server/1559212036 /home/your_username/servers/dayz-server/1564026768 /home/your_username/servers/dayz-server/keys/Jacob_Mango_V3.bikey ln -s /home/your_username/servers/dayz-server/steamapps/workshop/content/221100/1559212036 /home/your_username/servers/dayz-server/1559212036 ln -s /home/your_username/servers/dayz-server/steamapps/workshop/content/221100/1564026768 /home/your_username/servers/dayz-server/1564026768 ln -s /home/your_username/servers/dayz-server/steamapps/workshop/content/221100/1559212036/keys/* /home/your_username/servers/dayz-server/keys/
- Without mods: nano ~/servers/dayz-server/update.sh
- Ctrl + O
- Ctrl + X
- sudo chmod +x ~/servers/dayz-server/update.sh
- sudo nano /etc/systemd/system/dayz-server.service
[Unit] Description=DayZ Dedicated Server Wants=network-online.target After=syslog.target network.target nss-lookup.target network-online.target [Service] ExecStartPre=/home/your_username/servers/dayz-server/update.sh ExecStart=/home/your_username/servers/dayz-server/DayZServer -config=serverDZ.cfg -port=2301 "-mod=1559212036;1564026768;" -BEpath=battleye -profiles=profiles -dologs -adminlog -netlog -freezecheck WorkingDirectory=/home/your_username/servers/dayz-server/ LimitNOFILE=100000 ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s INT $MAINPID User=your_username Group=users Restart=on-failure RestartSec=5s [Install] WantedBy=multi-user.target
- sudo systemctl daemon-reload
Daemon Commands
- sudo systemctl enable dayz-server - Enables server autostart when the OS starts.
- sudo systemctl disable dayz-server - Disables server autostart when the OS starts.
- sudo systemctl start dayz-server - Starting the server.
- sudo systemctl restart dayz-server - Restarting the server.
- sudo systemctl stop dayz-server - Stopping the server.
- sudo systemctl status dayz-server - Checking the server status.