This version of dxspider requires perl5 (it is written entirely in perl5 and makes extensive use of perl objects). This program is known to work with RedHat 5.1 perl5_004.
In addition to the standard perl5 distribution you will require to load the the following modules:-
# perl -MCPAN -e shell cpan> install Bundle::CPAN cpan> q
Please sure there were no errors, be particularly careful when installing libwww stuff, I would suggest 'no host lookups' and pressing <space> and enter for each of the offered default hostnames.
I have monitored a typical load of CPAN which you can look at here
As you have so carefully loaded it, I suggest you use the CPAN system above:-
# perl -MCPAN -e shell cpan> install Date::Parse .. .. cpan> install MLDBM .. .. cpan> install IO::Select
In order to use IO::Select you will need to
# cd /root/.cpan/build/IO-1.20 # make install UNINST=1
The 'cd' is to the place where CPAN sets up its local cache. The example shown is for Linux defaults.
I say again DO NOT USE root.
Pick an existing user or create a new one. Don't care which. I don't know your security requirements.
# cd ~jim # tar xvfz spider-x.x.tar.gz # ln -s ~jim/spider /spider # groupadd -g 251 spider (or another number) # vi /etc/group (or your favorite editor)
add jim (or whatever) and root to the group spider it should look something like:-
spider:x:251:jim,root :x # chown -R jim.spider spider # find . -type d -exec chmod 2775 {} \; # find . -type f -exec chmod 775 {} \;
This last step allows various users of group spider to have write access to all the directories. Not really needed for now but will be useful when web interfaces start to appear.
exec /spider/perl/client.pl <callsign> telnet
Don't forget to give them a real password. This is really for network cluster logins. The telnet argument does two things, it sets the EOL convention to \n rather than AX25's \r and it automatically reduces the privilege of the <callsign> to a 'safe[r]' level.
[ether] NOCALL * * * * * * L default * * * * * * - jim /spider/perl/client.pl client.pl %u ax25 <bbs> NOCALL * * * * * * L default * * * * * * - jim /spider/perl/client.pl client.pl %u ax25
where ether and bbs are appropriate KNOWN WORKING axport and nrport names respectively.
Obviously you can use different names, callsigns or whatever for your purposes, but it is up to you to get it to work.
Note I use BPQ over ethernet which why I have the port names I have.
# chown root ax25_call netrom_call # chmod 4775 ax25_call netrom_call
This has to be done to allow you to specify the correct callsigns on outgoing connects
$ startx (much easier to use X) $ cd /spider $ mkdir local $ mkdir local_cmd $ cp perl/DXVars.pm local $ cd local $ vi DXVars.pm
now alter your cluster callsign, sysop callsign and other user info as you wish. Note that this a perl file which will parsed and executed as part of the cluster. If you get it wrong then perl will complain when you start the cluster process.
PLEASE USE CAPITAL LETTERS FOR CALLSIGNS
DON'T alter the DXVars.pm (or any other file) in /spider/perl, they are overwritten with every release. Any files or commands you place in /spider/local or /spider/local_cmd will automagically be used in preference to the ones in /spider/perl EVEN whilst the cluster is running!
:x $ cd ../perl
now create the basic user file with you as the sysop.
$ create_sysop.pl
try and run the cluster program and see whether all the various rivets are flying in approximate formation...
$ cluster.pl DXSpider DX Cluster Version x.x Copyright (c) 1998 Dirk Koopman G1TLH loading prefixes ... loading band data ... loading user file system ... starting listener ... reading existing message headers reading cron jobs orft we jolly well go ...
$ client.pl
you should now see a normal cluster prompt.
at the cluster prompt:-
G1JIM de GB7JIM 10-Sep-98 1000Z> set/node GB7XXX
for every dxcluster you expect to connect to or from.
G1JIM de GB7JIM 10-Sep-98 1001Z> shutdown
The cluster and the client should both go back to prompts
Restart the cluster.
The callsigns should be the sysop callsign and the cluster callsign as per your modified DXVars.pm. You can check that the cluster connections will work by:-
$ client.pl gb7xxx (doesn't have to be uppercase). PC38^GB7JIM^~ <- the cluster thinks this is a cluster ^C <- to get out