Requirements
- Should work with most versions of Linux. *BSDs can't run the panel, but should work fine with the monitor.
- You'll need mono: http://www.mono-project.com. You can download the source and build it, or install your distro's package. Tested against 1.9, therefore that version or greater is recommended.
- You have two options for hosting the panel. You can use apache with the mod_mono apache module: http://www.mono-project.com/Mod_mono or you can use xsp2, included in the mono package.
- Xsp2 a simplistic web server, it works great and is easy to setup: http://www.mono-project.com/ASP.NET#ASP ... g_with_XSP
- You'll need P7zip (http://sourceforge.net/projects/p7zip) to support archive info/decompression of archives on Linux. Build it yourself or get your distro's package.
What works, what doesn't, and other limitations
- Almost all of the features supported under windows are supported under Linux.
- Setting process priorities to anything above normal doesn't work if running as a non-root user.
- MySQL and SQLite databases are both supported on Linux.
- CPU monitoring currently is not supported.
Reference the monitor installation section.
Starting monitor at boot
Add the following lines to /etc/rc.local. Tailor the paths to the actual location of mono and mono-service.exe. The path after the -d: option should point to the folder that the monitor was installed to.
Code: Select all
rm /tmp/ugccmonsvc.exe.lock
/usr/local/bin/mono /usr/local/lib/mono/2.0/mono-service.exe -d:/common/ugccmon ugccmonsvc.exe </dev/null >& /dev/null &
--SRCDS doesn't require this anymore--left here incase other game servers may require it--
Most game servers for Linux seem to use shell scripts to start the game server. This doesn't work too well as the process identifier returned to UGCC is usually that of the script and not the game server. Some scripts seem to work ok, so your mileage might vary. SRCDS is one that I'm aware of that doesn't work, if you add ".:bin" to your LD_LIBRARY_PATH (in /etc/bashrc or /etc/profile ie. add export LD_LIBRARY_PATH=".:./bin:$LD_LIBRARY_PATH") you may then directly call the srcds_amd/i686/etc executable directly. If using mod_mono you can add 'MonoSetEnv LD_LIBRARY_PATH=".:bin:/usr/local/lib"' to do the same in the httpd.conf or mod_mono.conf file.
Troubleshooting steps
- First thing to do is view the ugccmon.log and/or ugccweb.log files. These should give you a hint if it's a handled error.
- Next review the system messages log file. Typically /var/log/messages or /var/log/syslog. Typing tail /var/log/messages will give you the last few lines of the log file. Sometimes this information may be helpful. You can also search for the text mono or ugcc to find specific entries.
- Running dmesg will sometimes help
- If unable to connect to the monitor, make sure it's actually running. Starting the monitor creates a file in /tmp/ugccmonsvc.exe.lock. If the monitor is not running, you can try to delete this file and see if it'll start.
- If you're having trouble with the monitor, try running it with the --debug option to see if it throws an error message. ie. "mono-service2 ugccmonsvc.exe --debug"
- Feel free to contact us for more help.
My mod_mono.conf file:
Code: Select all
# mod_mono.conf
# Acthung! This file may be overwritten
# Use 'include mod_mono.conf' from other configuration file
# to load mod_mono module.
MonoSetEnv LD_LIBRARY_PATH=".:bin:/usr/local/lib"
MonoServerPath /usr/local/bin/mod-mono-server2
<IfModule !mod_mono.c>
LoadModule mono_module /usr/lib/httpd/modules/mod_mono.so
AddType application/x-asp-net .aspx
AddType application/x-asp-net .asmx
AddType application/x-asp-net .ashx
AddType application/x-asp-net .asax
AddType application/x-asp-net .ascx
AddType application/x-asp-net .soap
AddType application/x-asp-net .rem
AddType application/x-asp-net .axd
AddType application/x-asp-net .cs
AddType application/x-asp-net .config
AddType application/x-asp-net .Config
AddType application/x-asp-net .dll
DirectoryIndex index.aspx
DirectoryIndex Default.aspx
DirectoryIndex default.aspx
</IfModule>