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 