Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Linux Servers

Support::Linux Servers Support forum for Linux EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 06-09-2009, 01:52 PM
rainwalkerx
Fire Beetle
 
Join Date: Mar 2009
Location: Nowhere
Posts: 5
Default Recurring Problem

Hey Everyone,

I've been trying to get a public server up and running over the course of about 100 hours over the past year and half. Still no luck. Actually, I think I may have had it working the other day, briefly, but I decided to delete the day's work so that I could repeat the "working" process. Now it doesn't work anymore. Here's the error that I've struggled with for the past 15 months:

Code:
main@userv:~/eqserver$ ./start
+ LNAME=zone
+ [  = test ]
+ pwd
+ P=/home/main/eqserver
+ export LD_LIBRARY_PATH=:/home/main/eqserver
+ mkdir -p logs
+ [ ! -e .lock-zones -a ! -e .lock-world ]
+ [ logs/eqemu_*.log = logs/eqemu_commands_zone.log ]
+ rm -f logs/eqemu_*.log
+ [ ! -e .lock-world ]
+ touch .lock-world
+ + sleep 15
./persist_world
./persist_world: 14: ./world: Permission denied
./persist_world: 14: ./world: Permission denied
The "Permission denied" message just keeps looping. I've used a great blend of guides in trying to set this up and since they haven't been much updated (and since I'm inexperienced with linux) I have no idea where potential errors may be.

If I had to guess, I'd guess it was an issue with MySQL, because the day that I *thought* I had it finally working, I think I may have had it hooked up to an old PEQ database (I've been experimenting with ax_classic for the last few months). My eqemu source, including all files, are from ax_classic but, since I've been getting this error with every single package I've ever tried (including stock eqemulator.net), I don't think it's specific to ax_classic.

Huge thanks, in advance.

rainwalker
Reply With Quote
  #2  
Old 06-09-2009, 02:30 PM
Kobaz
Hill Giant
 
Join Date: Nov 2008
Location: Gold Coast, Oz
Posts: 119
Default

Does the problem go away if you run the server as root? If so the problem is that you've got file permissions or ownership messed up. Check that the targets of symlinks belong to the user you are running as, and that directories have execute permission for the user you are running as.

Since you say you don't know much about linux, you may have to do some reading on the unix permissions system, and the chown and chmod commands.

If running as root does make the problem go away, try to avoid the temptation to simply run as root all the time - this is the easiest way to have your box owned.
Reply With Quote
  #3  
Old 06-09-2009, 03:18 PM
gaeorn
Developer
 
Join Date: Apr 2009
Location: USA
Posts: 478
Default

One more thing to check is if world has the executable bit set. If not, it could give that error even if you run as root.
Reply With Quote
  #4  
Old 06-09-2009, 03:53 PM
pfyon's Avatar
pfyon
Discordant
 
Join Date: Mar 2009
Location: Ottawa
Posts: 495
Default

Try:
chmod +x world

If that doesn't work, try running as root. If that does work, you have to create a user and give it permissions to run that file.
Reply With Quote
  #5  
Old 06-09-2009, 04:34 PM
rainwalkerx
Fire Beetle
 
Join Date: Mar 2009
Location: Nowhere
Posts: 5
Default

Thanks Kobaz, gaeorn, and pfyon. Still getting the same error.

I tried the following two ways to run it as root:
Code:
main@userv:~/eqserver$ sudo ./start
main@userv:~/eqserver$ su root
main@userv:~/eqserver$ ./start
Also, a couple times throughout the installation, when permissions seemed incorrect, I ran this:
Code:
main@userv:~/eqserver$ sudo chown -R main:root /home/main/eqserver
main@userv:~/eqserver$ sudo chmod -R 775 /home/main/eqserver
...per one of the guide's instructions. Shouldn't that have made sure that my user had correct permissions? After this, I also selected all of the items in the folder, right-clicked, and check that executable option.

I also tried your suggestion, pfyon, in both the main eqserver directory and eqserver/world directory.

That's why all of this leads me to suspect that it's something to do with MySQL. I might receive some kind of permission denied error if "db.ini" file had incorrect settings, right? But if that were true, I should be able to just put my root account settings in and it ought to work, right? That hasn't worked, either. So I think that that file is ok but I'm wondering if there's a problem with my MySQL user or database. Or maybe I just have no idea what I'm talking about

Anyway, would it be useful for me to post my entire setup procedure? I can download/use whatever files you all recommend or I can just tell you which ones I've been using.

Thanks again,
rainwalker

P.S. - Kobaz - how do I check the targets of the sym links?
Reply With Quote
  #6  
Old 06-09-2009, 04:47 PM
rainwalkerx
Fire Beetle
 
Join Date: Mar 2009
Location: Nowhere
Posts: 5
Default

Ok, maybe some progress. I tried running an ancient "bootserver" file leftover from a previous attempt and this time a world.log file was generated. I check it out and this is what it said:

Code:
[Debug] Starting Log: logs/eqemu_debug_world.log
[Debug] [COMMON__THREADS] Starting TCPServerLoop with thread ID -1215403120
[Debug] [COMMON__THREADS] Starting TCPServerLoop with thread ID -1223795824
[Debug] [RULES__CHANGE] Resetting running rules to default values
[Debug] [WORLD__INIT] Loading server configuration..
[Debug] [WORLD__INIT] Log settings loaded from log.ini
[Debug] [WORLD__INIT] CURRENT_WORLD_VERSION:EQEMu 0.7.0
[Debug] [WORLD__INIT] Connecting to MySQL...
[Error] Starting Log: logs/eqemu_error_world.log
[Error] Failed to connect to database: Error: #1045: Access denied for user 'eq'@'localhost' (using password: YES)
[Debug] [WORLD__INIT_ERR] Cannot continue without a database connection.
[Debug] [COMMON__THREADS] Ending TCPServerLoop with thread ID -1223795824
[Debug] [COMMON__THREADS] Ending TCPServerLoop with thread ID -1215403120
The interesting part is that I don't have a user named 'eq' in MySQL. Perhaps I created one a long time ago but not via Webmin nor MySQL do I see a user called 'eq' anywhere. Is there (hopefully) a really easy way to fix this?
Reply With Quote
  #7  
Old 06-09-2009, 04:54 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Quote:
[Error] Failed to connect to database: Error: #1045: Access denied for user 'eq'@'localhost' (using password: YES)
That means that your config file for the server has eq set as the username to get into the database, which is the default username in that file. This probably means that you did not edit your config file, which you definitely need to do before the server will work.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #8  
Old 06-09-2009, 05:04 PM
rainwalkerx
Fire Beetle
 
Join Date: Mar 2009
Location: Nowhere
Posts: 5
Default

Thanks trevius. Well, I think I edited the eqemu_config.xml files correctly. When I run that old bootserver file, though, it still shows me as trying to connect with user 'eq'. Which other files was I supposed to edit?
Reply With Quote
  #9  
Old 06-09-2009, 05:13 PM
gaeorn
Developer
 
Join Date: Apr 2009
Location: USA
Posts: 478
Default

Try logging in to the mysql server with the mysql CLI using the same username and password you have in the eqemu_config.xml file.

This should prompt you for the password:

Code:
mysql -u <your mysql username here> -p
If that works, then you know you have the correct username and password. However, there is still a possibility that your config file has an error. So I would suggest you post your config file here.

NOTE: Make sure to remove/replace the username and password before posting the config. We don't need to know that information
Reply With Quote
  #10  
Old 06-09-2009, 10:53 PM
rainwalkerx
Fire Beetle
 
Join Date: Mar 2009
Location: Nowhere
Posts: 5
Default

gaeorn - I am positively able to login to MySQL with the code you supplied.

Here's my full xml config file:

Code:
<?xml version="1.0">
<server>
	<world>
		<shortname>RegnumImbrium</shortname>
		<longname>Regnum Imbrium</longname>

		<!-- Only specify these two if you really think you need to.  (read: You dont) -->
		<!-- <address></address> -->
		<!-- <localaddress></localaddress> -->

		<!-- Loginserver information.  Defaults shown -->
		<loginserver>
			<host>www.regnumimbrium.net</host>
			<port>5999</port>
			<account></account>
			<password></password>
		</loginserver>

		<!-- Server status.  Default is unlocked -->
		<!--<locked/>-->
		<!-- <unlocked/> -->

		<!-- Sets the ip/port for the tcp connections.  Both zones and console (if enabled).  Defaults are shown -->
		<tcp ip="localhost" port="9000" telnet="disable"/>

		<!-- Sets the shared key used by zone/launcher to connect to world -->
		<key>some long random string</key>
		
		<!-- Enable and set the port for the HTTP service.  Defaults are shown -->
		<http port="9080" enabled="false" mimefile="mime.types" />
	</world>

	<!-- Chatserver (channels) information.  Defaults shown -->
	<chatserver>
		<host>channels.eqemulator.net</host>
		<port>7778</port>
	</chatserver>

	<!-- Mailserver (in-game mail) information.  Defaults shown -->
	<mailserver>
		<host>channels.eqemulator.net</host>
		<port>7779</port>
	</mailserver>

	<zones>
		<defaultstatus>20</defaultstatus>

		<!-- Sets port range for world to use to auto configure zones -->
		<ports low="7000" high="7100"/>
	</zones>

	<!-- Database configuration, replaces db.ini.  Defaults shown -->
	<database>
		<host>localhost</host>
		<port>3306</port>
		<username>myusername</username>
		<password>mypassword</password>
		<db>eqemu</db>
	</database>

	<!-- Launcher Configuration -->
	<launcher>
		<!-- <logprefix>logs/zone-</logprefix> -->
		<!-- <logsuffix>.log</logsuffix> -->
		<!-- <exe>zone.exe or ./zone</exe> -->
		<!-- <timers restart="10000" reterminate="10000"> -->
	</launcher>

	<!-- File locations.  Defaults shown -->
	<files>
		<!-- <spells>spells_us.txt</spells> -->
		<!-- <opcodes>opcodes.conf</opcodes> -->
		<!-- <logsettings>log.ini</logsettings> -->
		<!-- <eqtime>eqtime.cfg</eqtime> -->
	</files>
	<!-- Directory locations.  Defaults shown -->
	<directories>
		<!-- <maps>Maps</maps> -->
		<!-- <quests>quests</quests> -->
		<!-- <plugins>plugins</plugins> -->
	</directories>
</server>
Like I said, what I find really strange is that the one log file seems to indicate that somewhere, something is trying to login with 'eq' when clearly I've changed it in the xml file. Maybe it's time to try the stock eqemulator.net emulator again.
Reply With Quote
  #11  
Old 06-09-2009, 11:11 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Quote:
Originally Posted by rainwalkerx View Post
Thanks trevius. Well, I think I edited the eqemu_config.xml files correctly. When I run that old bootserver file, though, it still shows me as trying to connect with user 'eq'. Which other files was I supposed to edit?
Your problem is probably due to whatever old bootserver you are running, then. You should not need to use anything like that to get a server running. It comes with everything you need other than the start.bat and shortcuts.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #12  
Old 06-09-2009, 11:30 PM
rainwalkerx
Fire Beetle
 
Join Date: Mar 2009
Location: Nowhere
Posts: 5
Default

No, I tried that out of desperation. I normally and continue to use start, stop, and persist_world (taken from the Debian Linux guide).

Just for reference, here's the steps I'm trying tonight:

Code:
1. Extract EQEmu server 554 (from angelox) to directory.
2. Open terminal, type "su - root" to switch to root user.
3. "apt-get update"
4. "apt-get install mysql-server"
5. "apt-get install libmysqlclient15-dev"
6. "apt-get install gcc g++ make libio-stringy-perl libperl-dev unzip"
7. "chown -R root:root /my_server_directory"
8. "chmod -R 775 /my_server_directory"
9. Open my_server_directory/utils/Makefile and change gmake to make. Also open my_server_directory/world/client.cpp and, at the top, add "#include <limits.h>". While still in terminal, in my_server_directory, type "make".
10. 	"mysql -p"
	"USE mysql;"
	" SELECT Host,User FROM user;"
	"insert into user set Host='localhost', User='equser', Password=password('eqpassword');"
	"CREATE DATABASE eqemu;"
	"GRANT ALL PRIVILEGES ON eqemu TO equser;"
	"FLUSH PRIVILEGES;"
	"exit"
11. Extract ax_classic SQL files (core and version) to my_server_directory, as well as plugins and quests.
12. Open terminal, type "su - root" to switch to root user.
13. 	"mysql -p -u equser eqemu"
	"source ax_classic_3.10o_R42.sql"
	"source version.sql"
14. 
	"ln -s /my_server_directory/utils/defaults/* ."
	"ln -s /my_server_directory/utils/patch_* ."
	"ln -s /my_server_directory/utils/cleanipc"
	"ln -s /my_server_directory/world/world"
	"ln -s /my_server_directory/zone/zone"
	"ln -s /my_server_directory/EMuShareMem/libEMuShareMem.so"
	"ln -s /my_server_directory/eqlaunch/eqlaunch"
15. Copy persist_world, stop, and start files. In terminal, type ./start to start world.
It's basically the same thing that I've been doing, except that I kept out a lot of different directories from more "modern" source codes, such as the new public login server and bot files. I doubt it'll work but I'll repost in the morning. If any extra ideas were waiting for me, it'd be awesome
Reply With Quote
  #13  
Old 06-10-2009, 01:39 AM
AndMetal
Developer
 
Join Date: Mar 2007
Location: Ohio
Posts: 648
Default

Paste the results from the following command:
Code:
ls -la /home/main/eqserver
Also, paste the ./start, ./stop, and ./persist_world scripts as you have them saved.
__________________
GM-Impossible of 'A work in progress'
A non-legit PEQ DB server
How to create your own non-legit server

My Contributions to the Wiki
Reply With Quote
  #14  
Old 06-10-2009, 03:21 AM
Kobaz
Hill Giant
 
Join Date: Nov 2008
Location: Gold Coast, Oz
Posts: 119
Default

Just FYI about dereferencing symlinks:

Code:
john@paranoia:~$ ls -l eqemu
lrwxrwxrwx 1 john john 19 2009-05-04 13:15 eqemu -> ../etch/home/eqemu/
john@paranoia:~$ ls -lL | grep eqemu
drwxr-xr-x 13 john john       4096 2009-05-11 06:51 eqemu
john@paranoia:~$ ls -lL eqemu
total 84
-rwxr-xr-x   1 root root   287 2008-12-20 06:03 checkoutPeq.sh
drwxr-xr-x   4 root root  4096 2009-04-09 13:16 database
-rw-r--r--   1 john john  2558 2009-05-11 06:51 eqbuild.tgz
drwxr-xr-x   2 root root  4096 2008-12-20 06:03 files
-rwxr-xr-x   1 root root    94 2008-12-20 06:03 getEmuSource.sh
-rwxr-xr-x   1 root root    82 2008-12-20 06:03 getEmuSource.sh~
drwxr-xr-x   2 john john  4096 2009-04-10 08:23 LS
drwxr-xr-x   2 root root 24576 2009-01-19 07:20 maps
drwxr-xr-x   8 john john  4096 2009-05-11 13:42 new
drwxr-xr-x  11 root root  4096 2009-04-08 09:54 oldsource
drwxr-xr-x  11 root root  4096 2009-01-14 08:55 oldsource.1
drwxr-xr-x   4 root root  4096 2009-04-08 10:53 projecteqemu-read-only
drwxr-xr-x 194 root root  4096 2009-04-08 11:36 quests
drwxr-xr-x   2 root root  4096 2009-05-11 09:52 server
drwxr-xr-x  11 root root  4096 2009-04-09 07:39 source
drwxr-xr-x   3 root root  4096 2009-04-08 12:31 working_source
john@paranoia:~$
The first ls gives the permissions in the current directory.
The last ls gives the permissions in the target of the symlink
The middle ls with a grep gives the permissions of the target of the symlink

There is another option for ls that does the middle one without a grep, but my mind is too small to keep track of all the possible options for gnu ls.

Oh, and the reason because it looks like everything in the target belongs to root is because my eqemu runs in a chroot with a really wierd etc/passwd. This protects the server from my 170+ IQ 13 year old hacker son. He keeps me on my toes!

Last edited by Kobaz; 06-10-2009 at 11:26 AM.. Reason: clarification
Reply With Quote
  #15  
Old 06-10-2009, 11:00 AM
rainwalkerx
Fire Beetle
 
Join Date: Mar 2009
Location: Nowhere
Posts: 5
Default

Thanks AndMetal. Here's the results:

Code:
root@userv:/home/main/testserv# ls -la /home/main/eqserver
total 40052
drwxrwxr-x  22 main root     4096 2009-06-09 21:45 .
drwxr-xr-x  44 main root     4096 2009-06-10 09:28 ..
drwxrwxr-x  10 main root     4096 2009-06-08 23:58 ax_classic
-rwxrwxr-x   1 main root      163 2009-06-09 15:34 bootserver
-rw-rw-r--   1 main root      154 2008-12-11 23:05 bootserver~
-rwxrwxr-x   1 main root   214530 2009-05-21 06:34 changelog.txt
drwxrwxr-x   4 main root     4096 2009-06-09 00:25 chatserver
lrwxrwxrwx   1 main root       34 2009-06-09 12:22 cleanipc -> /home/main/eqserver/utils/cleanipc
drwxrwxr-x   2 main root    32768 2009-06-09 00:07 client_maps
drwxrwxr-x   2 main root     4096 2009-06-09 00:07 client_patch_files
lrwxrwxrwx   1 main root       46 2009-06-09 12:22 commands.pl -> /home/main/eqserver/utils/defaults/commands.pl
drwxrwxr-x   6 main root    12288 2009-06-09 00:23 common
-rw-r--r--   1 main root     1032 2009-06-09 21:45 crashlog
-rw-rw-r--   1 main root       71 2009-06-09 12:01 db.ini~
-rwxrwxr-x   1 main root       49 2008-10-12 08:12 .directory
drwxrwxr-x   4 main root     4096 2009-06-09 00:05 EMuShareMem
lrwxrwxrwx   1 main root       51 2009-06-09 12:22 eqemu_config.xml -> /home/main/eqserver/utils/defaults/eqemu_config.xml
-rw-r--r--   1 main root      147 2009-06-09 15:48 eqemu_config.xml~
lrwxrwxrwx   1 main root       56 2009-06-09 12:22 eqemu_config.xml.full -> /home/main/eqserver/utils/defaults/eqemu_config.xml.full
-rw-r--r--   1 main root     2366 2009-06-09 21:40 eqemu_config.xml.full~
drwxrwxr-x   4 main root     4096 2009-06-09 00:23 eqlaunch
-rwxrwxr-x   1 main root       71 2008-09-29 12:30 GPL.txt
lrwxrwxrwx   1 main root       49 2009-06-09 12:22 libEMuShareMem.so -> /home/main/eqserver/EMuShareMem/libEMuShareMem.so
lrwxrwxrwx   1 main root       42 2009-06-09 12:22 log.ini -> /home/main/eqserver/utils/defaults/log.ini
-rwxrwxr-x   1 main root      260 2008-12-11 22:19 LoginServer.ini~
drwxrwxr-x   2 main root     4096 2009-06-09 21:37 logs
drwxrwxr-x   4 main root     4096 2009-06-09 00:24 mailserver
-rwxrwxr-x   1 main root      410 2009-01-01 13:20 Makefile
drwxrwxr-x   2 main root    12288 2009-06-08 09:43 Maps
lrwxrwxrwx   1 main root       45 2009-06-09 12:22 mime.types -> /home/main/eqserver/utils/defaults/mime.types
drwxrwxr-x   2 main root     4096 2009-06-08 09:43 new_maps
drwxrwxr-x   2 main root     4096 2009-06-09 21:39 NewPublicLogin
lrwxrwxrwx   1 main root       40 2009-06-09 12:22 patch_6.2.conf -> /home/main/eqserver/utils/patch_6.2.conf
lrwxrwxrwx   1 main root       48 2009-06-09 12:22 patch_Anniversary.conf -> /home/main/eqserver/utils/patch_Anniversary.conf
lrwxrwxrwx   1 main root       41 2009-06-09 12:22 patch_Live.conf -> /home/main/eqserver/utils/patch_Live.conf
lrwxrwxrwx   1 main root       40 2009-06-09 12:22 patch_SoF.conf -> /home/main/eqserver/utils/patch_SoF.conf
lrwxrwxrwx   1 main root       45 2009-06-09 12:22 patch_Titanium.conf -> /home/main/eqserver/utils/patch_Titanium.conf
drwxrwxr-x   4 main root     4096 2009-06-08 09:43 peq
-rwxrwxr-x   1 main root      213 2008-12-11 22:23 persist_world
lrwxrwxrwx   1 main root       44 2009-06-09 12:22 plugin.pl -> /home/main/eqserver/utils/defaults/plugin.pl
drwxrwxr-x   3 main root     4096 2009-06-09 00:07 plugins
drwxrwxr-x 170 main root     4096 2009-06-09 00:09 quests
-rwxrwxr-x   1 main root      292 2009-01-11 13:41 README_FIRST!!!
-rwxrwxr-x   1 main root     6196 2009-01-31 10:17 Server71.sln
drwxrwxr-x   2 main root     4096 2009-05-03 08:38 server_conf_files
-rwxrwxr-x   1 main root     1961 2008-09-29 12:30 Server.dsw
-rwxrwxr-x   1 main root 33582080 2009-04-13 07:41 Server.ncb
-rwxrwxr-x   1 main root     8487 2009-04-13 07:30 Server.sln
-rwxrwxr-x   1 main root  2149759 2005-10-17 12:32 spells_en.txt
-rwxrwxr-x   1 main root  4772239 2005-10-28 19:04 spells_us.txt
-rwxrwxr-x   1 main root      898 2008-12-11 22:22 start
-rwxrwxr-x   1 main root      307 2008-12-11 22:23 stop
drwxrwxr-x   6 main root     4096 2009-05-22 07:09 .svn
lrwxrwxrwx   1 main root       44 2009-06-09 12:22 templates -> /home/main/eqserver/utils/defaults/templates
drwxrwxr-x  15 main root     4096 2009-06-09 00:25 utils
drwxrwxr-x   4 main root     4096 2009-06-09 15:30 world
-rw-r--r--   1 root root      861 2009-06-09 15:52 world.log
-rw-r--r--   1 main root        0 2009-06-09 21:45 .world_shutdown
lrwxrwxrwx   1 main root       42 2009-06-09 12:22 worldui -> /home/main/eqserver/utils/defaults/worldui
lrwxrwxrwx   1 main root       45 2009-06-09 12:22 worldui.pl -> /home/main/eqserver/utils/defaults/worldui.pl
drwxrwxr-x   4 main root    12288 2009-06-09 00:23 zone
-rw-r--r--   1 main root        0 2009-06-09 21:45 .zone_shutdown
./start script
Code:
#!/bin/sh

#ulimit -c 99999999

rm -f .zone_shutdown
rm -f .world_shutdown

set -x

LNAME="zone"     #launcher name
if [ "$1" = "test" ]; then
        LNAME="test"
fi

P=`pwd`
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$P"

#make sure we have a place to log
mkdir -p logs 2>&1 > /dev/null

#clear out old logs, if both are stopped
if [ ! -e .lock-zones -a ! -e .lock-world ] ; then
  for f in logs/eqemu_*.log
  do
        if [ "$f" = "logs/eqemu_commands_zone.log" ]; then
                continue;
        fi

        rm -f $f
  done
fi

#boot up world
if [ ! -e .lock-world ] ; then
        touch .lock-world
#       ./world 2>&1 > logs/world &
        ./persist_world 2>&1 > logs/world &
        # wait for shared memory to load
        sleep 15
fi

#start up the official launcher
if [ ! -e .lock-launcher ]; then
        touch .lock-launcher
        ./eqlaunch $LNAME 2>&1 > logs/launcher &
fi
./persist_world
Code:
#!/bin/sh

#ulimit -c 99999999

while true
do
        ./world "$@"
        if [ -r ".world_shutdown" ]; then
                exit 0
        fi

        echo `date` "World crashed." >>crashlog
        sleep 2
done
./stop
Code:
#!/bin/sh

touch .zone_shutdown
touch .world_shutdown

killall world eqlaunch zone
sleep 3

if ps ax|grep -e 'w[o]rld' -e 'z[o]ne' -e 'eq[l]aunch' >/dev/null; then
                killall -9 world eqlaunch zone
                sleep 2
fi

./cleanipc
rm -f .lock-zones .lock-world .lock-login .lock-launcher

...and here's those commands that you recommended, Kobaz:

ls -l eqserver

Code:
root@userv:/home/main# ls -l eqserver
total 40036
drwxrwxr-x  10 main root     4096 2009-06-08 23:58 ax_classic
-rwxrwxr-x   1 main root      163 2009-06-09 15:34 bootserver
-rw-rw-r--   1 main root      154 2008-12-11 23:05 bootserver~
-rwxrwxr-x   1 main root   214530 2009-05-21 06:34 changelog.txt
drwxrwxr-x   4 main root     4096 2009-06-09 00:25 chatserver
lrwxrwxrwx   1 main root       34 2009-06-09 12:22 cleanipc -> /home/main/eqserver/utils/cleanipc
drwxrwxr-x   2 main root    32768 2009-06-09 00:07 client_maps
drwxrwxr-x   2 main root     4096 2009-06-09 00:07 client_patch_files
lrwxrwxrwx   1 main root       46 2009-06-09 12:22 commands.pl -> /home/main/eqserver/utils/defaults/commands.pl
drwxrwxr-x   6 main root    12288 2009-06-09 00:23 common
-rw-r--r--   1 main root     1032 2009-06-09 21:45 crashlog
-rw-rw-r--   1 main root       71 2009-06-09 12:01 db.ini~
drwxrwxr-x   4 main root     4096 2009-06-09 00:05 EMuShareMem
lrwxrwxrwx   1 main root       51 2009-06-09 12:22 eqemu_config.xml -> /home/main/eqserver/utils/defaults/eqemu_config.xml
-rw-r--r--   1 main root      147 2009-06-09 15:48 eqemu_config.xml~
lrwxrwxrwx   1 main root       56 2009-06-09 12:22 eqemu_config.xml.full -> /home/main/eqserver/utils/defaults/eqemu_config.xml.full
-rw-r--r--   1 main root     2366 2009-06-09 21:40 eqemu_config.xml.full~
drwxrwxr-x   4 main root     4096 2009-06-09 00:23 eqlaunch
-rwxrwxr-x   1 main root       71 2008-09-29 12:30 GPL.txt
lrwxrwxrwx   1 main root       49 2009-06-09 12:22 libEMuShareMem.so -> /home/main/eqserver/EMuShareMem/libEMuShareMem.so
lrwxrwxrwx   1 main root       42 2009-06-09 12:22 log.ini -> /home/main/eqserver/utils/defaults/log.ini
-rwxrwxr-x   1 main root      260 2008-12-11 22:19 LoginServer.ini~
drwxrwxr-x   2 main root     4096 2009-06-09 21:37 logs
drwxrwxr-x   4 main root     4096 2009-06-09 00:24 mailserver
-rwxrwxr-x   1 main root      410 2009-01-01 13:20 Makefile
drwxrwxr-x   2 main root    12288 2009-06-08 09:43 Maps
lrwxrwxrwx   1 main root       45 2009-06-09 12:22 mime.types -> /home/main/eqserver/utils/defaults/mime.types
drwxrwxr-x   2 main root     4096 2009-06-08 09:43 new_maps
drwxrwxr-x   2 main root     4096 2009-06-09 21:39 NewPublicLogin
lrwxrwxrwx   1 main root       40 2009-06-09 12:22 patch_6.2.conf -> /home/main/eqserver/utils/patch_6.2.conf
lrwxrwxrwx   1 main root       48 2009-06-09 12:22 patch_Anniversary.conf -> /home/main/eqserver/utils/patch_Anniversary.conf
lrwxrwxrwx   1 main root       41 2009-06-09 12:22 patch_Live.conf -> /home/main/eqserver/utils/patch_Live.conf
lrwxrwxrwx   1 main root       40 2009-06-09 12:22 patch_SoF.conf -> /home/main/eqserver/utils/patch_SoF.conf
lrwxrwxrwx   1 main root       45 2009-06-09 12:22 patch_Titanium.conf -> /home/main/eqserver/utils/patch_Titanium.conf
drwxrwxr-x   4 main root     4096 2009-06-08 09:43 peq
-rwxrwxr-x   1 main root      213 2008-12-11 22:23 persist_world
lrwxrwxrwx   1 main root       44 2009-06-09 12:22 plugin.pl -> /home/main/eqserver/utils/defaults/plugin.pl
drwxrwxr-x   3 main root     4096 2009-06-09 00:07 plugins
drwxrwxr-x 170 main root     4096 2009-06-09 00:09 quests
-rwxrwxr-x   1 main root      292 2009-01-11 13:41 README_FIRST!!!
-rwxrwxr-x   1 main root     6196 2009-01-31 10:17 Server71.sln
drwxrwxr-x   2 main root     4096 2009-05-03 08:38 server_conf_files
-rwxrwxr-x   1 main root     1961 2008-09-29 12:30 Server.dsw
-rwxrwxr-x   1 main root 33582080 2009-04-13 07:41 Server.ncb
-rwxrwxr-x   1 main root     8487 2009-04-13 07:30 Server.sln
-rwxrwxr-x   1 main root  2149759 2005-10-17 12:32 spells_en.txt
-rwxrwxr-x   1 main root  4772239 2005-10-28 19:04 spells_us.txt
-rwxrwxr-x   1 main root      898 2008-12-11 22:22 start
-rwxrwxr-x   1 main root      307 2008-12-11 22:23 stop
lrwxrwxrwx   1 main root       44 2009-06-09 12:22 templates -> /home/main/eqserver/utils/defaults/templates
drwxrwxr-x  15 main root     4096 2009-06-09 00:25 utils
drwxrwxr-x   4 main root     4096 2009-06-09 15:30 world
-rw-r--r--   1 root root      861 2009-06-09 15:52 world.log
lrwxrwxrwx   1 main root       42 2009-06-09 12:22 worldui -> /home/main/eqserver/utils/defaults/worldui
lrwxrwxrwx   1 main root       45 2009-06-09 12:22 worldui.pl -> /home/main/eqserver/utils/defaults/worldui.pl
drwxrwxr-x   4 main root    12288 2009-06-09 00:23 zone
ls -lL | grep eqserver
Code:
root@userv:/home/main# ls -lL | grep eqserver
drwxrwxr-x 22 main root   4096 2009-06-09 21:45 eqserver
ls -lL eqserver
Code:
root@userv:/home/main# ls -lL eqserver
total 40480
drwxrwxr-x  10 main root     4096 2009-06-08 23:58 ax_classic
-rwxrwxr-x   1 main root      163 2009-06-09 15:34 bootserver
-rw-rw-r--   1 main root      154 2008-12-11 23:05 bootserver~
-rwxrwxr-x   1 main root   214530 2009-05-21 06:34 changelog.txt
drwxrwxr-x   4 main root     4096 2009-06-09 00:25 chatserver
-rwxrwxr-x   1 main root    14097 2009-06-09 00:25 cleanipc
drwxrwxr-x   2 main root    32768 2009-06-09 00:07 client_maps
drwxrwxr-x   2 main root     4096 2009-06-09 00:07 client_patch_files
-rwxrwxr-x   1 main root        0 2008-09-29 12:29 commands.pl
drwxrwxr-x   6 main root    12288 2009-06-09 00:23 common
-rw-r--r--   1 main root     1032 2009-06-09 21:45 crashlog
-rw-rw-r--   1 main root       71 2009-06-09 12:01 db.ini~
drwxrwxr-x   4 main root     4096 2009-06-09 00:05 EMuShareMem
-rwxrwxr-x   1 main root      143 2009-06-09 15:48 eqemu_config.xml
-rw-r--r--   1 main root      147 2009-06-09 15:48 eqemu_config.xml~
-rwxrwxr-x   1 main root     2331 2009-06-09 21:40 eqemu_config.xml.full
-rw-r--r--   1 main root     2366 2009-06-09 21:40 eqemu_config.xml.full~
drwxrwxr-x   4 main root     4096 2009-06-09 00:23 eqlaunch
-rwxrwxr-x   1 main root       71 2008-09-29 12:30 GPL.txt
-rwxrwxr-x   1 main root   313421 2009-06-09 00:05 libEMuShareMem.so
-rwxrwxr-x   1 main root        0 2008-09-29 12:29 log.ini
-rwxrwxr-x   1 main root      260 2008-12-11 22:19 LoginServer.ini~
drwxrwxr-x   2 main root     4096 2009-06-09 21:37 logs
drwxrwxr-x   4 main root     4096 2009-06-09 00:24 mailserver
-rwxrwxr-x   1 main root      410 2009-01-01 13:20 Makefile
drwxrwxr-x   2 main root    12288 2009-06-08 09:43 Maps
-rwxrwxr-x   1 main root     1077 2008-09-29 12:29 mime.types
drwxrwxr-x   2 main root     4096 2009-06-08 09:43 new_maps
drwxrwxr-x   2 main root     4096 2009-06-09 21:39 NewPublicLogin
-rwxrwxr-x   1 main root    17432 2009-05-21 17:05 patch_6.2.conf
-rwxrwxr-x   1 main root    16596 2008-09-29 12:29 patch_Anniversary.conf
-rwxrwxr-x   1 main root    15281 2008-09-29 12:29 patch_Live.conf
-rwxrwxr-x   1 main root    20138 2009-05-21 17:05 patch_SoF.conf
-rwxrwxr-x   1 main root    17568 2009-05-21 17:05 patch_Titanium.conf
drwxrwxr-x   4 main root     4096 2009-06-08 09:43 peq
-rwxrwxr-x   1 main root      213 2008-12-11 22:23 persist_world
-rwxrwxr-x   1 main root        0 2008-09-29 12:29 plugin.pl
drwxrwxr-x   3 main root     4096 2009-06-09 00:07 plugins
drwxrwxr-x 170 main root     4096 2009-06-09 00:09 quests
-rwxrwxr-x   1 main root      292 2009-01-11 13:41 README_FIRST!!!
-rwxrwxr-x   1 main root     6196 2009-01-31 10:17 Server71.sln
drwxrwxr-x   2 main root     4096 2009-05-03 08:38 server_conf_files
-rwxrwxr-x   1 main root     1961 2008-09-29 12:30 Server.dsw
-rwxrwxr-x   1 main root 33582080 2009-04-13 07:41 Server.ncb
-rwxrwxr-x   1 main root     8487 2009-04-13 07:30 Server.sln
-rwxrwxr-x   1 main root  2149759 2005-10-17 12:32 spells_en.txt
-rwxrwxr-x   1 main root  4772239 2005-10-28 19:04 spells_us.txt
-rwxrwxr-x   1 main root      898 2008-12-11 22:22 start
-rwxrwxr-x   1 main root      307 2008-12-11 22:23 stop
drwxrwxr-x   4 main root     4096 2009-05-08 14:48 templates
drwxrwxr-x  15 main root     4096 2009-06-09 00:25 utils
drwxrwxr-x   4 main root     4096 2009-06-09 15:30 world
-rw-r--r--   1 root root      861 2009-06-09 15:52 world.log
drwxrwxr-x   3 main root     4096 2008-09-29 12:29 worldui
-rwxrwxr-x   1 main root        0 2008-09-29 12:29 worldui.pl
drwxrwxr-x   4 main root    12288 2009-06-09 00:23 zone
So, although I'm no expert, it looks like my permissions are fine. I tried doing a simpler compile last night (using the steps I posted) and it didn't work, either. Given the results of these tests, unless I interpreted them totally incorrectly, I'm still inclined to think that this is a MySQL issue. Am I totally off-base, here?

The reasons I think it's MySQL are as follows:
1) No amount of beginner-level permissions-tweaking over the last 15 months has gotten this to work; also, the above tests seem to indicate that my permissions are correct.
2) I *think* that when it *seemed* to be working correctly a few days ago, it was hooked up to an old PEQ database, which (before I deleted it) probably had a different user and different database permissions.
3) The error log produced from that old bootserver file clearly shows some kind of critical problem with the MySQL access:

Code:
[Debug] [WORLD__INIT] Connecting to MySQL...
[Error] Starting Log: logs/eqemu_error_world.log
[Error] Failed to connect to database: Error: #1045: Access denied for user 'eq'@'localhost' (using password: YES)
[Debug] [WORLD__INIT_ERR] Cannot continue without a database connection.
For reference, here's the old bootserver file that I had tried on a whim:
Code:
echo 83886080 > /proc/sys/kernel/shmmax
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:.
rm logs/*
rm *log
./cleanipc
/home/main/eqserver/world/world 2>&1 >> world.log &
One of the lingering questions, in my mind, is why is the emulator trying to use "eq" to connect to the MySQL database, even after I modified eqemu_config.xml.full?

Anyway, thanks for sticking with this, everyone. Sorry that I'm not more experienced with Linux after a year-and-a-half of mistakes
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 06:10 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3