Hosting a Linux Server – DayZ
| No edit summary | Lou Montana (talk | contribs)  m (Some wiki formatting) | ||
| Line 1: | Line 1: | ||
| {{TOC|side}} | {{TOC|side}} | ||
| {{Feature|warning| | {{Feature|warning| | ||
| Do '''not''' run the server as {{hl|root}}! This way, if your  | Do '''not''' run the server as {{hl|root}}! This way, if your {{dayz}} server is compromised, the attacker will find it more difficult to access the rest of the operating system.<br> | ||
| All actions in this guide were performed as a normal user or under {{hl|sudo}}. | All actions in this guide were performed as a normal user or under {{hl|sudo}}. | ||
| }} | }} | ||
| == Download SteamCMD == | == Download SteamCMD == | ||
| Line 26: | Line 27: | ||
| </syntaxhighlight> | </syntaxhighlight> | ||
| == Download  | |||
| == Download {{dayz}} Server == | |||
| {{Feature|informative| | {{Feature|informative| | ||
| Line 52: | Line 54: | ||
| </syntaxhighlight> | </syntaxhighlight> | ||
| == Run  | |||
| == Run {{dayz}} Server == | |||
| {{Feature|important|Do not forget to {{Link|DayZ:Server Configuration|configure}} the server before running.}} | {{Feature|important|Do not forget to {{Link|DayZ:Server Configuration|configure}} the server before running.}} | ||
| Line 97: | Line 100: | ||
| # {{Controls|Ctrl|X}} | # {{Controls|Ctrl|X}} | ||
| # sudo chmod +x ~/servers/dayz-server/update.sh | # sudo chmod +x ~/servers/dayz-server/update.sh | ||
| # sudo nano /etc/systemd/system/dayz-server.service<syntaxhighlight lang="ini"> | # sudo nano /etc/systemd/system/dayz-server.service <syntaxhighlight lang="ini"> | ||
| [Unit] | [Unit] | ||
| Description=DayZ Dedicated Server | Description=DayZ Dedicated Server | ||
| Line 127: | Line 130: | ||
| * '''sudo systemctl stop dayz-server''' - Stopping the server. | * '''sudo systemctl stop dayz-server''' - Stopping the server. | ||
| * '''sudo systemctl status dayz-server''' - Checking the server status. | * '''sudo systemctl status dayz-server''' - Checking the server status. | ||
| {{GameCategory|dayz}} | {{GameCategory|dayz}} | ||
| {{GameCategory|dayz|Server}} | {{GameCategory|dayz|Server}} | ||
| {{GameCategory|dayz|Editing}} | {{GameCategory|dayz|Editing}} | ||
Latest revision as of 18:26, 13 April 2024
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.
