I'm sure there's an easier way

I’m Updating a server. and I’m betting the way I do it every time is the long hard way. is there an easier way than:

1: ) Make a new profile with the new server version.
2: ) Make a new server using that new profile
3: ) copy the world from your old server to the new server created in step 2
4: ) now run the new server created in step 2 from now on until the next time an update is needed?

I keep thinking that I could just update the profile with the new information needed and that should just propagate to every server using that profile. but as yet I haven’t been able to figure a way to make this happen.

yep. long way.
in the server.config (if I remember right) you can change the profile from vanilla180 to vanilla184
something along those lines. Hopefully you understand what I am getting at.

But I’m not running a vanilla server. I’m running a FTB server. So i have to make a custom profile each time.

This is already exactly what it does. On every server start, the files in the profile’s directory get copied over to the live servers directory if they differ. So, for your example of an FTB server, any files in this directory

/var/games/minecraft/profiles/some_ftb_profile

end up in /var/games/minecraft/servers/your_server_name.

If you update the files in the live server directory, they stay there. In fact, if there are overlapping names, the files in the live server directory will get overwritten by the ones from the profiles directory.

Incidentally, there’s a reason that profiles aren’t editable within the web-ui, and it is to avoid precisely this. You can certainly make a given profile ftb (or named whatever) and update the files within ftb every time you want to make changes to mods, etc. Each time you start the server, each live server with that profile will get those new files… and it can work just fine … but that is going against the design of profiles and needlessly risking the uptime of your server in the case of mod conflicts.

Profiles were intended to be unchanging. If you have a forge 1.7.10 profile, for example, and it’s called forge-1.7.10, there’s no reason to change the profile once it is known working. Even if you wished to have another forge 1.7.10 profile with simply different mods, you’d instead make a brand new profile named forge-1.7.10-different, and either build the profile from scratch or copy the existing profile and update it/tweak it as desired.

Regardless of which option you preferred, forge-1.7.10 should be left untouched, because if by chance the combinations of mods you wished to use breaks the server from running, you could revert. If you have instead changed an existing set of known-working files, you have nothing to go back to. Even using restore points and archives is of no use, because they’ll be overwritten with the contents of profiles upon start.

Long story short, profiles are working like you’re expecting them to–going one direction from profiles to servers…, but you are making it more difficult in your four steps than necessary.

The problem is that with FTB the Profiles don’t contain the files necessary to run the server. you have to additional steps to install the server after you the profile dumps the files into the server directory. so the current system doesn’t function that way for FTB at least. there is a FTBinstall BAT that must be run each time,

I now have a server that I can not get to come back up no matter what I do. Guess I’ll have to make a new server and copy the world to it. I tried your method of making the new profile and just changing the profile used by the server. but that ended up with a non-booting server. and changing it back left me wit a non-booting server. this method does not seem to work at all with FTB servers. I even tried running the FTBInstall.sh after changing the profile which helped not at all.
I guess i’m stuck with my 4 step process unless someone else running a FTB server has figured out a better way. I know others are running them. I have seen the occasional messages about FTB here.

If it doesn’t work, it’s almost certainly because there are files from the previous jar that don’t work with the new jar, e.g., mods.

And if a server doesn’t run, it’s also getting logged. Do you look at the logs?

T he mod pack takes care of the incompatible mods. FTB is awesome with not releasing them like that. yes I’m trying to makes sense of the logs now. but it’s not really helping me much. but admittedly I’m not a avid linux user. I have been running a linux server for several years. but they really run them selves :wink: they are so stable. As far as crash reports. the directory shows that it changes every time I try to run the server. but a crash report is never generated…

the Mineos log is not showing anything when I try to stat a server the server button blinks green but never starts. yes i know this issue has been discussed before. but I can not get it to start.

I really I am not blaming MineOS for this issue. I understand it was not designed to handle the FTB pack idiosyncrasies. All i am trying to do at this point is get my server back up for my users (friends) My grandson wants to start playing with Pa-paw he just got minecraft for his birthday. and of coarse I crashed the server ;( I will appreciate any help that is tossed my way. thanks in advance.

Lee

1 Like

Do this as user mc

cd /usr/games/minecraft
./mineos_console.py -s Infinity134 command_debug

And it will return something like:
'/usr/bin/java -server -Xmx512M -Xms512M -jar /var/games/minecraft/servers/Infinity134/minecraft_server.1.7.2.jar '

Copy/paste the line that is produced from your terminal (don’t copy the one here), without the outside quotes at start and end, to start the server. This will make the server jar run in the foreground rather than the background and should help you see exactly what the error is.

In all likelihood, if you’re not getting any good information from the server logs in the web-ui (which is just a way to display the contents of ‘log/latest.log’), it’s because something else is broken and the server jar isn’t running (and that it is stopping at the Java level).

Things that are broken could range widely:

overallocating memory to your Java instance: fix your xmx/xms values

Error occurred during initialization of VM
Could not reserve enough space for object heap

Bad Java arguments: fix your java_tweaks value in the web-ui

Error: Could not find or load main class something

Missing dependencies: apt-get install whatever it says is missing.

At any rate, whatever error you get after running the command_debug return string will provide the answer. Copy and paste it here if it doesn’t make immediate sense on how to fix it.

I’m in a different server and now since I ended up with a working 134 server working in the 141 directory with some fiddling.

but here is the result of the command you suggested.
but it really tells me nothing.

/usr/bin/java -server -Xmx4096M -Xms4096M -jar /var/games/minecraft/servers/FTB/FTBServer-1.7.10-1352.jar
A problem occurred running the Server launcher.java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at cpw.mods.fml.relauncher.ServerLaunchWrapper.run(ServerLaunchWrapper.java:43)
at cpw.mods.fml.relauncher.ServerLaunchWrapper.main(ServerLaunchWrapper.java:12)
Caused by: java.lang.NoClassDefFoundError: org/apache/logging/log4j/Level
at net.minecraft.launchwrapper.Launch.launch(Launch.java:94)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
… 6 more
Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.Level
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
… 8 more

From looking around various posts, this error crops up usually when the accompanying official mojang jar is not present. Can you verify the appropriate-versioned Mojang jar is there?

You may need to manually run the installer script again (do so as mc).