Linux script and loginserver hash
http://proskeptic.com/wordpress/?p=5
I'm in the process of adapting this script to incorporate cmake and generally work again on a ubuntu-debian based machine. Post when ready. I have run into a very peculiar account password issue - I'm playing on my compiled server, I have two accounts with the same password, but one doesnt log in on one location and the other not on the other location. Turns out the loginserver receives a different hash for the same password - I've tried three machines, of which two XP's and one 7, all three titanium. Anyone have any idea where to look for this issue? X. |
Hash issue seems to have vanished, for now. Now all clients are able to log in and the hashes are made the same way.
Script still a work-in-progress, wondering if I should have it install phpmyadmin by default as well, to allow remote database changes more easily. Would that be something you guys would want? Once it's there, it should be complete to the point you could run it on any Debian or Ubuntu system, and you could get a cheap dedicated server/vps or run your own server with it, just run the script, follow instructions and presto, instant-EQ. Cheers, Xumtiil |
Builds for virtual machines is a good idea. This could help simplify for those who want a linux based server but are not as familiar with linux.
Regarding your password issue, the intention of hashes is that they are unique. A different key can be used for each hash. It seems maybe there was some other issue present you resolved. |
Trying to figure out if it's worth automating cmake with a script, or if I'll just leave it with -i and just paste instructions on what to choose - the problem with the second thing is that it won't take away any of the "OMG what's going on why isn't it working" if zlib or mysql include or any of the other folders aren't automatically found.
Anyone here happen to have a cmake installer script lying around that I could use/mess around with? I'm learning as I go, myself. X. |
Once you generate the cache in interactive mode, you don't need to do interactive anymore unless you remove the cache.
|
Granted, but I'm just trying to make it as easy as possible for the first run of a compilation, for us poor noobs out there :)
Not having to go through an interactive cmake will make a difference. |
Script is done. Server compiles, starts, I'm having someone test the login now.
Adaptable to compile either on 32 or 64 bits Ubuntu or Debian, willing to test and adapt on other OS if you give me some pointers. Change the initial variables to suit your needs, paste it into a .sh file (eg install_eqemu.sh) make it executable (chmod ugo+x /home/install_eqemu.sh) and run it on your OS and follow the instructions. Based largely on http://proskeptic.com/wordpress/?p=5 (Tim Little), who provided the base for me to work with, and adapt to the current process. apt-get install phpmyadmin will allow you to access the database from the outside (with username eqemu and password whatever you put as the eqemupass variable). Make sure to select Apache2 as your webserver. Also looking into shamelessly stealing AxClassic's web interface because it's awesome, but I'll probably PM/ask on the axclassic forums about that. Code:
clear |
You'll probably want to update it to pull the source from git now.
|
Done, but it will have to wait until tomorrow before I can verify that it works.
Once I have it verified, I'll post an updated script. X. |
Git doesn't have the login_util/linux/ folder, which you need to compile the loginserver :/ So either I need to do some patchwork and host the files myself somewhere until they're in git, somehow manage to upload the folder to git myself, or just use subversion and hope it gets updated as well.
X. |
|
If someone's awake, can they have a stab at connection to the following server:
debian.kludde.net:5998/5999 (depending on client, as always) user: test pass: account Compiled on Debian with the git repositories, I will consider it a success if A) You can log in (25%) B) You see the server (50%) C) You can create a character (75%) D) You can kill something (97% - something's always broken) X. |
Any updates, Xumtil?
Is it working, or failing? |
Installs like a charm. Automatically sets up the server, database, source, compiles, it does everything except the dishes.
And then, when you select the server to log into, it just kicks you back to the loginscreen. I'm setting up a new one on Ubuntu to see if it's Debian that's giving me crap, or if there's something else that's fishy - it's hard to find anything wrong in either the installation, compilation or startup logs. I'll give you SSH access to the machine and/or login info for the server I'm setting up now, if you want to have a look (you can't break anything that I can't fix, so don't be shy :D) |
I'm certainly no expert, but when I tested the script before, the IP address would never resolve correctly. Don't know if that's the case here.
is there an easy way to pull the info from something like www.whatsmyip.com ? |
It tries to pull it from your network config, but the variables section at the start of the script allows you to change it to a default setting. Honestly, I think I'm just going to get rid of the autodetect and just tell you to enter it manually. You should be able to find your IP address, anyway, even if you just use a script to install EQ.
With some patchwork (have some changes to make on the script, again), I got a server up and running at ubuntu.kludde.net. Feel free to try to log in (user test, pwd account), or PM me if you want to have root access to the server to fiddle around with it. X. |
did you see the changelog update about shared memory?
also, do you have a GIT version I can test out? |
I had a few perl errors with ubuntu 12.04 , the first was at the Cmake something about library's then a pathing error about perl library path the first one was populated ok. I re-ran the script but error with mysql password which i think i can correct by uninstalling it.
I'm going to start again from scratch tonight and load perl before I run the script. |
Before you do, use this updated script
Also, re-running the script will give a mysql password error, because the script assumes MYSQL wasn't installed and that the password is empty, so it tries to change it - afterwards, it will use the same password that was set at the start, so it will go through automagically and still reload the database correctly (unless you changed the Mysql password in between the run and the rerun) Updated script: Code:
clear |
Once the script is working, it can easily be adapted to be a "Resource and recompile" version, but there's no point in investing time in that until we have a working system in the first place.
EDIT: Just looked at the changelog. Interesting - however, it does not tell me what the name of the folder should be. Digging. |
Script update. Shared memory change fixed.
Code:
|
just got this;
A trunk/icontest.php Checked out revision 5. ./install_eqemu.sh: line 164: allaclone-eoc-read-only: command not found +--------------------------------------------------------------+ ! Copying some files around, we're still in business ! +--------------------------------------------------------------+ ./install_eqemu.sh: line 185: /home/eqemu/server/worldui/: No such file or directory +--------------------------------------------------------------+ ! Loading the database (could take a few minutes)... ! +--------------------------------------------------------------+ [ Press [ENTER] to continue... ] Loading database -- please wait... ./install_eqemu.sh: line 201: syntax error near unexpected token `newline' ./install_eqemu.sh: line 201: `echo "set password for 'root'@'localhost' = PASSWORD('$ROOTPASS');" > ' root@EQEMU-SERVER:/home# is this error in the script or in a file ? |
Bug in the code, memo to me - don't paste with the tablet, it stinks (it put stuff on new lines, which obviously makes code break - uncommenting parts of comments and stuff like that)
Should be fixed below Code:
|
LordAdakos Shouts 'ERROR MESSAGE INCOMING. TRAIN TO NEXT POST'
IMAGE HERE CHECK IT OUT http://i.imgur.com/gZLlfdU.png |
As expected - Did you try with the bugfixed script for the borked tablet-based post?
|
I used the most recent post. Will attempt again. (using Ubuntu 12.04 with the script from post #23)
edit: Error Code:
Loading the database. |
I got the same error ;
Loading the database. ./install_eqemu.sh Line 215 sytax error neat unexpected token `)' ./install_eqemu.sh line 215 `muck around)' |
Copy/paste issue on line 214. Just remove the carriage return.
|
Must have missed that one. Not going to bother correcting, am on tablet. Also, this script got me fired! Yay!
Le sigh. |
Sorry to hear about getting fired, when one door closes many more open especially for people with skills.
|
damn man, im sorry, if you are around the central ohio area, we could use a programmer...
|
cmake errors
This is what I get ;
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:91 (MESSAGE): Could NOT find PerlLibs (missing: PERL_LIBRARY) (found version "5.14.2") Call Stack (most recent call first): /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:252 (_FPHSA_FAILURE_MESSAGE) /usr/share/cmake-2.8/Modules/FindPerlLibs.cmake:263 (find_package_handle_standard_args) CMakeLists.txt:141 (FIND_PACKAGE) for this I ran sudo apt-get install php5-curl for the next error not sure if its fixed by doing the above curl install ; Variable Name: PERL_LIBRARY Description: Path to a library. Current Value: PERL_LIBRARY-NOTFOUND New Value (Enter to keep current value): I don't think it compiled I get the following ; ! Done with the installation ! !--------------------------------------------------------------! ! to start your server run ! ! /home/eqemu/server/startup.sh ! ! and to stop your server run ! ! /home/eqemu/server/killeq.sh ! +--------------------------------------------------------------+ root@EQEMU-SERVER:/home# cd /home/eqemu/server root@EQEMU-SERVER:/home/eqemu/server# startup.sh startup.sh: command not found root@EQEMU-SERVER:/home/eqemu/server# ls chatserver log.ini logs patch_RoF.conf plugins worldui.pl commands.pl login.ini mail_opcodes.conf patch_SoD.conf quests zone db.ini login_opcodes.conf mailserver patch_SoF.conf shared eqemu_config.xml login_opcodes_sod.conf Maps patch_Titanium.conf shared_memory eqlaunch loginserver opcodes.conf patch_Underfoot.conf startup.sh killeq.sh LoginServer.ini patch_6.2.conf plugin.pl world root@EQEMU-SERVER:/home/eqemu/server# ./startup.sh Starting Login Server... Waiting about 5 seconds before starting World Server... ./startup.sh: line 10: ./loginserver: No such file or directory ./startup.sh: line 14: ./shared_memory: No such file or directory Waiting 10 seconds before starting the zones via launcher ./startup.sh: line 17: ./world: No such file or directory The server is mostly ready... give it a couple of minutes to load stuff from the databases for the zones and users can start logging in. root@EQEMU-SERVER:/home/eqemu/server# ./startup.sh: line 21: ./eqlaunch: No such file or directory Here is all of the output; Code:
+--------------------------------------------------------------+ |
I'm not sure what to install for this (what perl library is it looking for?)
Variable Name: PERL_LIBRARY Description: Path to a library. Current Value: PERL_LIBRARY-NOTFOUND New Value (Enter to keep current value): |
https://github.com/EQEmu/Server/tree...r/dependencies is empty - this should have held the dependencies files for perl
Can't fix the script now but if you download and add them in cmake from the old.svn source it should compile (see here:http://www.eqemulator.net/wiki/wikka...CMake#problems) X. |
Quote:
But thanks, I guess :) |
When trying to log in with Titanium client:
[03.04. - 21:43:36] Unable to convert EQ opcode 0x0003 to an Application opcode. [03.04. - 21:44:00] Unable to convert EQ opcode 0x0003 to an Application opcode. And both Titanium and SoD seem to give a logged in from world unsupported, disconnecting error :/ Opcodes.conf are the same as with a working server, however, so I don't really understand how this one can have unknown opcodes coming in. Any thoughts? |
Full debug log:
Code:
root@debian:/home/eqemu/server/logs# cat eqemu_debug_3491.log Code:
[Debug] [03.04.13 - 21:42:59] Logging System Init. |
I just tried installing locally on a VM on my machine; same stuff. Unknown OP Code, I see the server but won't let me log in (no error on EQ client, just get black screen and then a blank server select screen - log out and in and I see the server again, both on Titanium or Underfoot client)
Going to see if I can find a way to have it on a physical machine, and not a VM, and check if that works. Did you guys have any luck with getting the Perl dependencies in there? I might have time to have another stab at the script sometime next week, but feel free to suggest additions/replacements/etc where needed. X. |
Any Luck
I am getting the same thing .. any luck on a resolution yet?
I have tried 3 other linux builds and this one has got me the closest .. hopefully someone more knowledgeable can help figure the issue out. well done thank you also there is another carriage return on line 247 i think it was. |
I'm currently swamped personally. I foresee getting some more time after the 10th, however since I lost my job I also lost access to free Linux servers :p I have a Linux OS dual booted on my machine, but no EQ on it. I'll have to invest some time getting that working first, so I can test my builds myself.
I will crack this. Too close to give up. |
All times are GMT -4. The time now is 05:07 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.