X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=html%2Fadminmanual-4.html;h=9faec43772389c921bd621159da7e775fe48fa0e;hb=a79ed63d7b2c53c1f360512afa2a68ba311b9554;hp=7e9aa735ed49d31564476b700f50e97a14fd8580;hpb=c42f6d2e451d149bd3ee9059ed8a9a4589c47f6d;p=spider.git diff --git a/html/adminmanual-4.html b/html/adminmanual-4.html index 7e9aa735..9faec437 100644 --- a/html/adminmanual-4.html +++ b/html/adminmanual-4.html @@ -2,7 +2,7 @@ - The DXSpider Installation and Administration Manual : Automating things + The DXSpider Administration Manual v1.48: Databases @@ -13,65 +13,129 @@ Previous Contents
-

4. Automating things

+

4. Databases

-

Ok, you should now have DXSpider running nicely and allowing connects by cluster -nodes or users. However, it has to be shutdown and restarted manually and if -connection scripts fail they have to be started again manually too, not much use -if you are not at the console! So, in this section we will automate both. -Firstly starting the cluster. +

Spider allows the creation of local or remote databases. It supports +chained databases, allowing several different databases to be scanned +with one simple command. Importing of databases is limited at present +to the standard AK1A databases such as OBLAST and the DB0SDX QSL +database but will expand with time.

-

4.1 Autostarting the cluster +

4.1 Creating databases

-

This is not only a way to start the cluster automatically, it also works as a -watchdog, checking the sanity of DXSpider and respawning it should it crash for -any reason. Before doing the following, shutdown the cluster as you did earlier. +

Creating a database could not be more simple. All the commands are +sent from the cluster prompt as the sysop user. +

To create a database you use the command dbcreate. It can +be used in 3 different ways like so ..

-

Login as root and bring up the /etc/inittab file in your favourite editor. Add -the following lines to the file near the end ... +

+
+dbcreate <name>
+
+
+

To simply create a database locally, you just tell the command the +name of the database. This does not create the actual database, it +simply defines it to say that it exists.

-##Start DXSpider on bootup and respawn it should it crash
-DX:3:respawn:/bin/su -c "/usr/bin/perl -w /spider/perl/cluster.pl" sysop >/dev/tty7
+dbcreate <name> chain <name> [<name>...]
 
+

This creates a chained database entry. The first database will be +scanned, then the second, the third etc...

-

This will automatically start DXSpider on tty7 (ALT-F7) on bootup and restart -it should it crash for any reason. +

+
+dbcreate <name> remote <name>
+
+
+

This creates a remote entry. the first name field is the database +name at the remote node, then the remote switch, then the actual +node_call of the remote node, for example...

-

As root type the command telinit q. DXSpider should start up -immediately. You will see the output on tty7 and if you login as sysop -you should find everything running nicely. +

+
+dbcreate buckmaster remote gb7dxc
+
+
+

Remote databases cannot be chained, however, the last database in a +chain can be a remote database. +

+

4.2 Importing databases +

+ +

The only databases that Spider can currently import are the standard +AK1A databases such as OBLAST or the DB0SDX qsl and address database. +This will be added to with time. +

To import such a database, first put the file somewhere useful like /tmp +and then issue the following command ...

-

So far so good, now to automate script connections... +

+
+dbimport oblast /tmp/OBLAST.FUL
+
+
+

This will update the existing local oblast database or create it if +it does not exist.

-

4.2 The crontab file +

4.3 Checking available databases

-

Login as sysop and create a file in /spider/local_cmd called crontab. -Edit it with your favourite editor and add a line like this (I have included -a comment) +

Once a database is created, you will want to check that it has been +added. To do this use the dbavail command. This will +output the available databases. For example ...

-# check every 10 minutes to see if gb7xxx is connected and if not
-# start a connect job going
+dbavail
+DB Name          Location   Chain
+qsl              Local
+buck             GB7ADX
+hftest           GB7DXM
+G0VGS de GB7MBC  3-Feb-2001 1925Z >
+
+
+

+

4.4 Looking up databases +

-0,10,20,30,40,50 * * * * start_connect('gb7xxx') if !connected('gb7xxx') +

To look for information in a defined database, simply use the dbshow +command, for example ... +

+

+
+dbshow buckmaster G0YLM
+
+
+

will show the information for the callsign G0YLM from the buckmaster +database if it exists. To make things more standard for the users +you can add an entry in the Aliases file so that it looks like a standard +show command like this ... +

+

+
+'^sh\w*/buc', 'dbshow buckmaster', 'dbshow',
 
+

Now you can simply use show/buckmaster or an abreviation.

-

The callsign involved will be the callsign of the cluster node you are -going to connect to. This will now check every 10 minutes to see if -gb7xxx is connected, if it is then nothing will be done. If it is not, -then a connect attempt will be started. +

4.5 Removing databases +

+ +

To delete an existing database you use the dbremove command. +For example ...

-

There are probably lots of other things you could use this crontab file for. -If you want to know more about it, look at the -DXSpider website -at the cron page where it is explained more fully. +

+
+dbremove oblast
+
+
+

would remove the oblast database and its associated datafile from the +system. There are no warnings or recovery possible from this command. +If you remove a database it ceases to exist and would have to be created +from scratch if you still required it.


Next