Jump to content

Native Linux server (with management scripts)


Alloc

Recommended Posts

Not with the scripts as they are as you would have to create two completely independent engine folders. But if you modify the start-script to point to an instanced-path for the engine and create those folders manually this should work.

 

Thank you, but it's too difficult for me :hypnotysed:

Link to comment
Share on other sites

just edit the bootstrap.sh and install ?

 

installManagementScripts() {

echo -e "Downloading and installing management scripts\n"

wget -nv http://illy.bz/fi/7dtd/management_scripts.tar.gz -O /tmp/management_scripts.tar.gz

tar --touch --no-overwrite-dir -xzf /tmp/management_scripts.tar.gz -C /

 

chown root.root /etc/7dtd_secondserver.conf

chmod 0600 /etc/7dtd_secondserver.conf

 

chown sdtd.sdtd /home/sdtd_secondserver -R

 

chown root.root /etc/init.d/7dtd_secondserver.sh

chown root.root /etc/bash_completion.d/7dtd_secondserver

chown root.root /etc/cron.d/7dtd-backup_secondserver

chown root.root /usr/local/bin/7dtd_secondserver.sh

chown root.root /usr/local/lib/7dtd_secondserver -R

chmod 0755 /etc/init.d/7dtd_secondserver.sh

chmod 0755 /etc/bash_completion.d/7dtd_secondserver

chmod 0755 /etc/cron.d/7dtd-backup_secondserver

chmod 0755 /usr/local/bin/7dtd_secondserver.sh

chmod 0755 /usr/local/lib/7dtd_secondserver -R

Link to comment
Share on other sites

just edit the bootstrap.sh and install ?

...

That alone won't do it, there's a lot more to change. As I said the easier route would be to "just" edit the start-script to look for a different location of the engine and then copy the engine to each of these locations.

 

alloc, can you add some constans in the next patch like instanceconfigfolder = pathtofolder,

or each instances have a independant /configfolder for the *.xml files in the future

Nope, that's quite a bunch of overhead that won't apply to a lot of people. You would basically create multiple copies of the ~2 GiB server files.

 

(Things like these will probably come when the game has better modding support)

Link to comment
Share on other sites

Hello all together I hope I'm right here. If not I'm sorry.

I tried to install the server on my Debian VServer once with the bootstrap.sh and once manual and everytime I get a message that the scripts are maybe not working with the build. I continued the installation without further errors but as expected if I tried to start an instance it failed.

Is there somthing not up to date with the files? or is there any logfile that could help me?

 

Sorry for my english and greetings from germany :)

Link to comment
Share on other sites

  • 2 weeks later...

It would appear hook parameters are missing (at least for playerConnect) in v.85 (2015-04-29), only instance name (1) is passed.

 

2015-04-30 07:57:28.568 [1] qInit.php: Initializing, parameters: /home/sdtd/hooks/playerConnect/qTrigger-playerConnect.sh instance-name [1]

Edited by qriff (see edit history)
Link to comment
Share on other sites

It would appear hook parameters are missing (at least for playerConnect) in v.85 (2015-04-29), only instance name (1) is passed.

 

2015-04-30 07:57:28.568 [1] qInit.php: Initializing, parameters: /home/sdtd/hooks/playerConnect/qTrigger-playerConnect.sh instance-name [1]

Log stuff fixed, thanks to behemoth.

Has been some time since I have been working on the scripts :(

Link to comment
Share on other sites

  • 4 weeks later...

Alloc: I presume this is related to your patches needing some recompile against v11.5.

 

Missing method EasyAntiCheat.Server.EasyAntiCheatServer::Update() in assembly /home/sdtd/engine/7DaysToDie_Data/Managed/EasyAntiCheat.Server.dll, referenced in assembly /home/sdtd/engine/7DaysToDie_Data/Managed/Assembly-CSharp.dll

Link to comment
Share on other sites

With latest versions, in current_output.log, now receiving:

 

2014.08.27 10:47:58: [b]Error in Allocs telnetListenThread: Too many open files[/b]
2014.08.27 10:47:58: Stack Trace:   at System.Net.Sockets.Socket.Accept () [0x00000] in <filename unknown>:0
2014.08.27 10:47:59: at System.Net.Sockets.TcpListener.AcceptTcpClient () [0x00000] in <filename unknown>:0
2014.08.27 10:47:59: at AllocsNetTelnetServer.telnetListenThread () [0x00000] in <filename unknown>:0

 

This has apparently been manifesting earlier as daemon crashes but without error messages (or lost) and now failing to start (on Debian, latest).

 

# 7dtd.sh status one
Instance: one

Status: Running
Open ports:
   25000 (udp)
   25001 (udp)
   25002 (udp)
   27036 (udp)
   37720 (tcp)
   8081 (tcp)
/usr/local/lib/7dtd/[b]common.sh: line 186:  5231 Killed[/b]                  nc 127.0.0.1 $TEL_PORT 0<&3
Players:

Game info:
   Server name:    One
   Password:
   Max players:    64
   World:          Random Gen

Network info:
   Port:           25000
   Public:         true
   Control Panel:  off
   Telnet:         Port 8081, Pass

 

Fix, insert/raise http://unix.stackexchange.com/a/85458 in /etc/security/limits.conf from default of 4096 with:

sdtd       hard     nofile     16384
sdtd       soft     nofile      8192

 

Note: Relogin required!

 

Diagnostics: http://www.cyberciti.biz/tips/linux-procfs-file-descriptors.html

 

I had again some issues with max open files running

ulimit -n <number>

fixed it for me.

During the startup there are about 36k open files and when the server is running 45k.

Link to comment
Share on other sites

I had again some issues with max open files running
ulimit -n <number>

fixed it for me.

During the startup there are about 36k open files and when the server is running 45k.

 

I'm sorry but afaik running the command alone only sets the limit for that single shell instance, you need to edit your limits.conf to make it permanent. This is a extremely common misconception.

Link to comment
Share on other sites

  • 1 month later...
I assume your mod is updated via the script update. Which doesn't for some reason seem to behave.

Yes and no ;)

Currently the updatescripts command updated whatever was in the scripts-archive. And as before A12 the mod was already directly related to a specific server build and before A10 the scripts even *required* the fixes to be installed I bundled it.

But if I don't do a new scripts build you currently won't get the new fixes by updating the scripts (which actually does nothing as there is nothing new). Updates to the scripts are listed there: https://7dtd.illy.bz/wiki/Release%20Notes

 

 

We also appear to run a more recent? version "(697925)".

Yep, as above before A12 scripts and server build had to match, those checks are totally useless by now and are already removed from my dev copy of the scripts.

 

 

Future releases of the scripts also will have no direct relation to the fixes but instead there will be an updatefixes command.

Link to comment
Share on other sites

I can't fix give / li. (give says "item not found" for everything and li gives "Listed 0 matching items.".

I've wiped /usr/local/lib/7dtd and /home/sdtd/engine.

Bootstrapped.

But give / li still not working, everything else is all good.

 

I also think https://7dtd.illy.bz/wiki/Installation - Manual installation

is missing 7dtd.sh updatescripts as it contains the magic ingredient of

cp /usr/local/lib/7dtd/server-fixes/* $SDTD_BASE/engine/ -R

which is found only in /usr/local/lib/7dtd/commands/updatescripts.sh .

Which should ideally be symlinked, as they will get wiped with 7dtd.sh updatescripts because management_scripts.tar.gz contains Mods dated 2015.07.06 and server_fixes.tar.gz contains the patches dated 2015.07.17.

 

So currently any (new / forced) installation needs to manually apply server_fixes.tar.gz to be up to date.

Edited by qriff (see edit history)
Link to comment
Share on other sites

I also think https://7dtd.illy.bz/wiki/Installation - Manual installation

is missing 7dtd.sh updatescripts as it contains the magic ingredient of

cp /usr/local/lib/7dtd/server-fixes/* $SDTD_BASE/engine/ -R

which is found only in /usr/local/lib/7dtd/commands/updatescripts.sh .

It's also in updateengine, which the instructions say to run (as you won't get any server without ;) ).

 

But yeah, as I said, this is gonna change with the next update that I'm trying to get out before the weekend. Symlinking the Mods folder is a good idea though, no idea why I didn't do that in the first place.

Link to comment
Share on other sites

As with every new Alpha, I created a new map to give Alpha 12 a try... I can connect, it asks me for my password, then it hangs...

 

I'm currently getting this in my current_output.log when I try to connect...

 

2015-07-22T22:11:49 18.854 INF [steamworks.NET] GameServer.Init successful
2015-07-22T22:11:50 19.718 INF [steamworks.NET] GameServer.LogOn successful
A client which was not in the connected player list disconnected. ???

(Filename:  Line: 1900)

2015-07-22T22:12:04 33.949 INF [NET] PlayerConnected EntityID=-1, PlayerID='', OwnerID='', PlayerName=''

 

Anyone have any ideas?

 

Weird, I made a new server and it works now... disregard my post :)

Edited by iamzombie (see edit history)
Link to comment
Share on other sites

first: big thanks for this nice script, works very good on my debian dedi

 

My existing game is broken now too. I get a ton of errors when updating. My guess is that the scripts need updating?

 

im useing the script since 12.3 today i updated to 12.4 and its working all fine (as far as i can say for now... didnt played myself on the server jet but 2 of my friends are playing on it right now)

Link to comment
Share on other sites

My existing game is broken now too. I get a ton of errors when updating. My guess is that the scripts need updating?

Scripts aren't related to how the server is running, they just start it (besides allowing to set up the config but worst case here would be an outdated option but the log would cleary state this).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...