made some detail changes to the installation manual
[spider.git] / html / installation_en-1.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
2 <HTML>
3 <HEAD>
4  <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.21">
5  <TITLE>The DXSpider Installation Manual v1.50: Linux Installation </TITLE>
6  <LINK HREF="installation_en-2.html" REL=next>
7
8  <LINK HREF="installation_en.html#toc1" REL=contents>
9 <link rel=stylesheet href="style.css" type="text/css" title="default stylesheet">
10 </HEAD>
11 <BODY>
12 <A HREF="installation_en-2.html">Next</A>
13 Previous
14 <A HREF="installation_en.html#toc1">Contents</A>
15 <HR>
16 <H2><A NAME="s1">1.</A> <A HREF="installation_en.html#toc1">Linux Installation </A></H2>
17
18 <H2><A NAME="ss1.1">1.1</A> <A HREF="installation_en.html#toc1.1">Introduction</A>
19 </H2>
20
21 <P>This section describes the installation of DX Spider v1.50 on a 
22 <A HREF="http://www.redhat.com">RedHat</A> Linux Distribution.
23 Wherever possible I will try to include differences for other distributions.  </P>
24
25 <P>I am assuming a general knowledge of Linux and its commands.  You should 
26 know how to use <EM>tar</EM> and how to edit files using your favourite editor.</P>
27
28 <P>The crucial ingredient for all of this is 
29 <A HREF="http://www.perl.org">Perl</A>.  Earlier versions of
30 Spider required perl 5.004, however it is now <I>STRONGLY</I> recommended
31 that you use at least version 5.6.1 as this is the version being used
32 in the development of Spider.</P>
33
34 <P>In addition to the standard Red Hat distribution you will require the 
35 following modules from 
36 <A HREF="http://www.cpan.org/modules/by-module/">http://www.cpan.org/modules/by-module/</A> , please note however that with later versions of perl, some of these
37 modules may be included with the distribution.  Get the modules anyway and try
38 to install as below.  If they complain, they are probably already a part of your
39 perl distribution.</P>
40
41 <P>
42 <UL>
43 <LI> 
44 <A HREF="http://www.cpan.org/modules/by-module/Data/Data-Dumper-2.101.tar.gz">Data-Dumper-2.101.tar.gz</A>  <EM> this is included in perl 5.6.1 and above </EM></LI>
45 <LI> 
46 <A HREF="http://www.cpan.org/modules/by-module/Date/TimeDate-1.10.tar.gz">TimeDate-1.10.tar.gz</A></LI>
47 <LI> 
48 <A HREF="http://www.cpan.org/modules/by-module/IO/IO-1.20.tar.gz">IO-1.20.tar.gz</A>  (<EM>for perl 5.00403 and lower</EM>)</LI>
49 <LI> 
50 <A HREF="http://www.cpan.org/modules/by-module/Net/Net-Telnet-3.03.tar.gz">Net-Telnet-3.03.tar.gz</A></LI>
51 <LI> 
52 <A HREF="http://www.cpan.org/modules/by-module/Curses/Curses-1.06.tar.gz">Curses-1.06.tar.gz</A></LI>
53 <LI> 
54 <A HREF="http://www.cpan.org/modules/by-module/Time/Time-HiRes-01.20.tar.gz">Time-HiRes-01.20.tar.gz</A></LI>
55 <LI> 
56 <A HREF="http://www.cpan.org/modules/by-module/Digest/Digest-SHA1-2.01.tar.gz">Digest-SHA1-2.01.tar.gz</A></LI>
57 </UL>
58 </P>
59
60 <P>Copy the CPAN modules listed above to a convenient place on your computer. One good 
61 place would be /usr/local/packages, and the instructions which follow will assume that 
62 that's where you have put them.</P>
63
64 <P>Log in as 'root', and make sure you're at '/root' before you continue. Here are exactly the commands you must issue next: -</P>
65 <P>
66 <PRE>
67 # tar xvfz /usr/local/packages/TimeDate-1.10.tar.gz
68 # cd TimeDate-1.10
69 # perl Makefile.PL
70 # make test
71 # make install
72 # cd ..
73 #
74 # tar xvfz /usr/local/packages/Net-Telnet-3.03.tar.gz
75 # cd Net-Telnet-3.02
76 # perl Makefile.PL
77 # make test
78 # make install
79 # cd ..
80 #
81 # tar xvfz /usr/local/packages/Curses-1.06.tar.gz
82 # cd Curses-1.06
83 # perl Makefile.PL
84 # make test
85 # make install
86 # cd ..
87 #
88 # tar xvfz /usr/local/packages/Time-HiRes-01.20.tar.gz 
89 # cd Time-HiRes-01.20
90 # perl Makefile.PL
91 # make test
92 # make install
93 # cd ..
94 #
95 # tar xvfz /usr/local/packages/Digest-SHA1-2.01.tar.gz
96 # cd Digest-SHA1-2.01
97 # perl Makefile.PL
98 # make test
99 # make install
100 # cd ..
101 </PRE>
102 </P>
103
104 <P>Only if you need to do these (because your perl is old):-</P>
105 <P>
106 <PRE>
107 #
108 # tar xvfz /usr/local/packages/IO-1.20.tar.gz
109 # cd IO-1.20
110 # perl Makefile.PL
111 # make test
112 # make install UNINST=1
113 # cd ..
114 #
115 # tar xvfz /usr/local/packages/Data-Dumper-2.101.tar.gz
116 # cd Data-Dumper-2.101
117 # perl Makefile.PL
118 # make test
119 # make install
120 # cd ..
121 #
122 </PRE>
123 </P>
124
125 <P>Do not fall into the trap of thinking they're all the same, just because they 
126 nearly are! Pay particular attention to the instructions of <EM>IO</EM>, above.</P>
127
128
129 <H2><A NAME="ss1.2">1.2</A> <A HREF="installation_en.html#toc1.2">Preparation</A>
130 </H2>
131
132 <P>I will assume that you have already downloaded the latest tarball of 
133 the DXSpider software and are ready to install it. I am assuming version 
134 1.50 for this section but of course you would use the latest version.</P>
135
136 <P>Login as root and create a user to run the cluster under.  <B><I>UNDER 
137 NO CIRCUMSTANCES USE ROOT AS THIS USER!</I></B>.  I am going to use 
138 the name <EM>sysop</EM>.  You can call it anything you wish.  Depending 
139 on your security requirements you may wish to use an existing user, 
140 however this is your own choice.</P>
141 <P>
142 <BLOCKQUOTE><CODE>
143 <PRE>
144 # adduser -m sysop
145 </PRE>
146 </CODE></BLOCKQUOTE>
147 </P>
148
149 <P>For SuSE distributions, the command would be ..</P>
150 <P>
151 <BLOCKQUOTE><CODE>
152 <PRE>
153 # useradd -m sysop
154 </PRE>
155 </CODE></BLOCKQUOTE>
156 </P>
157
158 <P>Now set a password for the user ...</P>
159 <P>
160 <BLOCKQUOTE><CODE>
161 <PRE>
162 # passwd sysop
163 # New UNIX password:
164 # Retype new UNIX password:
165 passwd: all authentication tokens updated successfully
166 </PRE>
167 </CODE></BLOCKQUOTE>
168 </P>
169
170 <H2><A NAME="ss1.3">1.3</A> <A HREF="installation_en.html#toc1.3">Installing the software</A>
171 </H2>
172
173 <P>Now to unpack the DX Spider distribution, set symbolic links and group 
174 permissions.  Copy the tarball to /home/sysop and do the following.</P>
175 <P>
176 <BLOCKQUOTE><CODE>
177 <PRE>
178 # cd ~sysop
179 # tar xvfz spider-1.50.tar.gz
180 # ln -s ~sysop/spider /spider
181 # groupadd -g 251 spider       (or another number)
182 </PRE>
183 </CODE></BLOCKQUOTE>
184 </P>
185
186 <P>If you do not have the command <EM>groupadd</EM> available to you simply 
187 add a line in /etc/group by hand.</P>
188 <P>
189 <BLOCKQUOTE><CODE>
190 <PRE>
191 # vi /etc/group                (or your favorite editor)
192 </PRE>
193 </CODE></BLOCKQUOTE>
194 </P>
195
196 <P>You also need to add some others to the group, including your own callsign 
197 (this will be used as an alias) and root.  The finished line in /etc/group 
198 should look something like this</P>
199 <P><CODE>spider:x:251:sysop,g0vgs,root</CODE></P>
200
201 <P>The next step is to set the permissions on the Spider directory tree and files ....</P>
202 <P>
203 <BLOCKQUOTE><CODE>
204 <PRE>
205 # chown -R sysop.spider spider
206 # find . -type d -exec chmod 2775 {} \;
207 # find . -type f -exec chmod 775 {} \;
208 </PRE>
209 </CODE></BLOCKQUOTE>
210 </P>
211
212 <P>This last step allows various users of the group <EM>spider</EM> to have 
213 write access to all the directories.  This is not really needed just yet 
214 but will be useful when web interfaces start to appear.</P>
215
216 <P>Finally, you need to fix the permissions on the ax25_call and netrom_call 
217 programs.  Check where they are with the <EM>locate</EM> command and alter 
218 the permissions with the <EM>chmod</EM> command like this ..</P>
219 <P>
220 <BLOCKQUOTE><CODE>
221 <PRE>
222 # chown root ax25_call netrom_call
223 # chmod 4775 ax25_call netrom_call
224 </PRE>
225 </CODE></BLOCKQUOTE>
226 </P>
227
228 <H2><A NAME="ss1.4">1.4</A> <A HREF="installation_en.html#toc1.4">Setting callsigns etc</A>
229 </H2>
230
231 <P>Now login to your machine as the user you created earlier.  In my case that 
232 user is called <EM>sysop</EM>.  Once logged in, issue the following commands ....</P>
233 <P>
234 <BLOCKQUOTE><CODE>
235 <PRE>
236 $ cd /spider
237 $ mkdir local
238 $ mkdir local_cmd
239 $ cp perl/DXVars.pm.issue local/DXVars.pm
240 $ cd local
241 $ vi DXVars.pm (or your favourite editor)
242 </PRE>
243 </CODE></BLOCKQUOTE>
244 </P>
245
246 <P>Using the distributed DXVars.pm as a a template, set your cluster callsign, 
247 sysop callsign and other user info to suit your own environment. </P>
248 <P>
249 <BLOCKQUOTE><CODE>
250 <PRE>
251 $mycall = "GB7DJK";     
252 </PRE>
253 </CODE></BLOCKQUOTE>
254 </P>
255
256 <P>This is the call sign of your cluster.  Here in the UK we have 
257 separate callsigns for our cluster nodes. If you can't use a different callsign I suggest
258 you use an SSID of '-2' for the node callsign '$mycall'.</P>
259 <P>
260 <BLOCKQUOTE><CODE>
261 <PRE>
262 $myalias = "G1TLH";
263 </PRE>
264 </CODE></BLOCKQUOTE>
265 </P>
266
267 <P>This is the sysop user callsign, normally your own.</P>
268
269 <P><B>PLEASE USE CAPITAL LETTERS FOR CALLSIGNS</B></P>
270
271 <P>Note that this a perl file which will be parsed and executed as part of the 
272 cluster. If you get it wrong then perl will complain when you start the cluster 
273 process.  It is important only to alter the text of any section.  Some of the 
274 lines look a little odd.  Take this line for example ....</P>
275 <P><CODE>$myemail = "ianmaude\@btinternet.com";</CODE></P>
276
277 <P>There appears to be an extra slash in there.  However this has to be there 
278 for the file to work so leave it in.</P>
279
280 <P>DON'T alter any file in /spider/perl, they are overwritten with every
281 release. Any files or commands you place in /spider/local or /spider/local_cmd 
282 will automagically be used in preference to the ones in /spider/perl EVEN 
283 while the cluster is running!</P>
284
285 <P>Save the new file and change directory to ../perl ....</P>
286 <P>
287 <BLOCKQUOTE><CODE>
288 <PRE>
289 $ cd ../perl
290 </PRE>
291 </CODE></BLOCKQUOTE>
292 </P>
293
294 <P>Now type the following command which creates the basic user file with you as 
295 the sysop.</P>
296 <P>
297 <BLOCKQUOTE><CODE>
298 <PRE>
299 $ ./create_sysop.pl
300 </PRE>
301 </CODE></BLOCKQUOTE>
302 </P>
303
304 <H2><A NAME="ss1.5">1.5</A> <A HREF="installation_en.html#toc1.5">The client program</A>
305 </H2>
306
307 <P>In earlier versions of Spider, all the processes were Perl scripts.  This
308 was fine but with a lot of users your computer memory would soon be used up.
309 To combat this a new client was written in "C".  This client only works for
310 <EM>incoming</EM> connects at the moment.  Before you can use it though it
311 has to be "made".  CD to /spider/src and type <EM>make</EM>.  You
312 should see the output on your screen and hopefully now have a small C program
313 called <EM>client</EM>.  Leave it in this directory.</P>
314
315
316 <H2><A NAME="ss1.6">1.6</A> <A HREF="installation_en.html#toc1.6">Starting up for the first time</A>
317 </H2>
318
319 <P>We can now bring spider up for the first time and see if all is well or not!  
320 It should look something like this ...</P>
321 <P>
322 <BLOCKQUOTE><CODE>
323 <PRE>
324 $ ./cluster.pl
325 DXSpider DX Cluster Version 1.50
326 Copyright (c) 1998 Dirk Koopman G1TLH
327 loading prefixes ...
328 loading band data ...
329 loading user file system ...
330 starting listener ...
331 reading existing message headers
332 reading cron jobs
333 orft we jolly well go ...
334 </PRE>
335 </CODE></BLOCKQUOTE>
336 </P>
337
338 <P>If all is well then login on another term or console as <EM>sysop</EM> and 
339 cd to /spider/src.  Now issue the following command ...</P>
340 <P>
341 <BLOCKQUOTE><CODE>
342 <PRE>
343 $ ./client
344 </PRE>
345 </CODE></BLOCKQUOTE>
346 </P>
347
348 <P>This should log you into the cluster as the sysop under the alias callsign we 
349 set earlier.  In this case the callsign is G0VGS.  The cluster callsign is set 
350 in the DXVars.pm file in /spider/local.  In this case we will assume that this 
351 was set as GB7MBC.  You should therefore see this when you login ....</P>
352 <P>
353 <BLOCKQUOTE><CODE>
354 <PRE>
355 G0VGS de GB7MBC 19-Nov-1999 2150Z >
356 </PRE>
357 </CODE></BLOCKQUOTE>
358 </P>
359
360 <P>If you do, congratulations!  If not, look over the instructions again, you 
361 have probably missed something out.  You can shut spider down again with the 
362 command ....</P>
363 <P>
364 <BLOCKQUOTE><CODE>
365 <PRE>
366 shutdown
367 </PRE>
368 </CODE></BLOCKQUOTE>
369 </P>
370
371 <P>and both the cluster and the client should return to Linux prompts.</P>
372
373
374 <HR>
375 <A HREF="installation_en-2.html">Next</A>
376 Previous
377 <A HREF="installation_en.html#toc1">Contents</A>
378 </BODY>
379 </HTML>