X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=html%2Fadminmanual-10.html;h=9e2e4e09938272c11908b28ac261f0ddd232d2df;hb=fed24311c0290fa22432d7752f75e8cccddc07c8;hp=5b030d16313f7185d5af430e9c7e82acfa10f87e;hpb=e1f91307fae936112a25ed7ce08f47214ecec766;p=spider.git diff --git a/html/adminmanual-10.html b/html/adminmanual-10.html index 5b030d16..9e2e4e09 100644 --- a/html/adminmanual-10.html +++ b/html/adminmanual-10.html @@ -2,577 +2,143 @@ - The DXSpider Installation and Administration Manual : Sysop commands + The DXSpider Installation and Administration Manual : Databases + + -Next +Next Previous Contents
-

10. Sysop commands

+

10. Databases

-

Most maintenance tasks are automatic but there are some commands that are useful for a sysop. These are listed below -in alphabetical order. The number in brackets following the command name is the permissions level needed to use the command. +

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.

-

10.1 announce sysop (5) +

10.1 Creating databases

-

announce sysop <text> -

-

Send an announcement to Sysops only -

-

10.2 connect (5) -

- -

connect <callsign> Start a connection to another DX Cluster -

-

Start a connection process that will culminate in a new connection to the -DX cluster <callsign>. This process creates a new 'client' process which will -use the script in /spider/connect/<callsign> to effect the 'chat' exchange -necessary to traverse the network(s) to logon to the cluster <callsign>. -

-

-

10.3 catch (9) -

- -

<node_call> All [<msgno> ...] Mark a message as sent -

-

When you send messages the fact that you have forwarded it to another node -is remembered so that it isn't sent again. When you have a new partner -node and you add their callsign to your /spider/msg/forward.pl file, all -outstanding non-private messages will be forwarded to them. This may well -be ALL the non-private messages. You can prevent this by using these -commmands:- -

catch GB7DJK all -catch GB7DJK 300 301 302 303 -

and to undo what you have just done:- -

uncatch GB7DJK all -uncatch GB7DJK 300 301 302 303 -

which will arrange for them to be forward candidates again. -

-

10.4 dbcreate (9) -

- -

dbcreate <name> Create a database entry
-dbcreate <name> chain <name> [<name>..] Create a chained database entry
-dbcreate <name> remote <node> Create a remote database entry
-

-

DBCREATE allows you to define a database in the system. It doesn't actually -create anything, just defines it. -

The databases that are created are simple DB_File hash databases, they are -therefore already 'indexed'. -

You can define a local database with the first form of the command eg: -

DBCREATE oblast -

You can also chain databases with the addition of the 'chain' keyword. -This will search each database one after the other. A typical example -is: -

DBCREATE sdx_qsl chain sql_ad -

No checking is done to see if the any of the chained databases exist, in -fact it is usually better to do the above statement first then do each of -the chained databases. -

Databases can exist offsite. To define a database that lives on another -node do: -

DBCREATE buckmaster remote gb7dxc -

Remote databases cannot be chained; however, the last database in a -a chain can be a remote database eg: -

DBCREATE qsl chain gb7dxc -

To see what databases have been defined do: -

DBAVAIL (or it will have been aliased to SHOW/COMMAND) -

It would be normal for you to add an entry into your local Aliases file -to allow people to use the 'SHOW/<dbname>' style syntax. So you would -need to add a line like:- +

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 ..

-  's' => [
-    ..
-    ..
-    '^sh\w*/buc', 'dbshow buckmaster', 'dbshow',
-    ..
-    ..
-   ],
+dbcreate <name>
 
-

to allow -

SH/BUCK g1tlh -

to work as they may be used to. -

See DBIMPORT for the importing of existing AK1A format data to databases. -See DBSHOW for generic database enquiry -

-

10.5 dbimport (9) -

- -

dbimport <dbname> Import AK1A data into a database -

-

If you want to import or update data in bulk to a database you can use -this command. It will either create or update entries into an existing -database. For example:- -

DBIMPORT oblast /tmp/OBLAST.FUL -

will import the standard OBLAST database that comes with AK1A into the -oblast database held locally. -

-

10.6 dbremove (9) -

- -

dbremove <dbname> Delete a database -

-

DBREMOVE will completely remove a database entry and also delete any data -file that is associated with it. -

There is no warning, no comeback, no safety net. -

For example: -

DBREMOVE oblast -

will remove the oblast database from the system and it will also remove -the associated datafile. -

I repeat: -

There is no warning, no comeback, no safety net. -

You have been warned. -

-

10.7 debug (9) -

- -

debug Set the cluster program into debug mode -

-

Executing this command will only have an effect if you are running the cluster -in debug mode i.e. +

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.

-        perl -d cluster.pl
+dbcreate <name> chain <name> [<name>...]
 
-

It will interrupt the cluster just after the debug command has finished. -

-

10.8 directory (5) -

- -

Works just like the user command except that sysops can see ALL messages. -

-

10.9 disconnect (8) -

- -

disconnect <call> [<call> ...] Disconnect a user or node -

-

Disconnect any <call> connected locally -

-

10.10 export (9) -

- -

export <msgno> <filename> Export a message to a file -

-

Export a message to a file. This command can only be executed on a local -console with a fully privileged user. The file produced will be in a form -ready to be imported back into the cluster by placing it in the import -directory (/spider/msg/import). -

This command cannot overwrite an existing file. This is to provide some -measure of security. Any files written will owned by the same user as the -main cluster, otherwise you can put the new files anywhere the cluster can -access. For example:- -

EXPORT 2345 /tmp/a -

-

10.11 forward/opername (1) -

- -

forward/opername <call> Send out information on this <call> to all clusters -

-

This command sends out any information held in the user file which can -be broadcast in PC41 protocol packets. This information is Name, QTH, Location -and Homenode. PC41s are only sent for the information that is available. -

-

10.12 init (5) -

- -

init <node call> Re-initialise a link to an AK1A compatible node -

-

This command attempts to re-initialise a link to a (usually) AK1A node -that has got confused, usually by a protocol loop of some kind. It may -work - but you usually will be better off simply disconnecting it (or -better, if it is a real AK1A node, doing an RCMD <node> DISC/F <your -node>). -

Best of luck - you will need it. -

-

10.13 kill (5) -

- -

kill <msgno> [<msgno> ...] Remove or erase a message from the system
-kill from <call> Remove all messages from a callsign
-kill to <call> Remove all messages to a callsign
-

-

You can get rid of any message to or originating from your callsign using -this command. You can remove more than one message at a time. -

As a sysop you can kill any message on the system. -

-

10.14 kill full (5) -kill full <msgno> [<msgno>] Delete a message from the whole cluster

- -

Delete a message (usually a 'bulletin') from the whole cluster system. -

This uses the subject field, so any messages that have exactly the same subject -will be deleted. Beware! -

-

10.15 load/aliases (9) -

- -

load/aliases Reload the command alias table -

-

Reload the /spider/cmd/Aliases file after you have editted it. You will need to -do this if you change this file whilst the cluster is running in order for the -changes to take effect. -

-

10.16 load/baddx (9) -load/baddx Reload the bad DX table

- -

Reload the /spider/data/baddx.pl file if you have changed it manually whilst -the cluster is running. This table contains the DX Calls that, if spotted, -will not be passed on. FR0G and TEST are classic examples. -

-

10.17 load/badmsg (9) -

- -

load/badmsg Reload the bad message table -

-

Reload the /spider/msg/badmsg.pl file if you have changed it manually whilst -the cluster is running. This table contains a number of perl regular -expressions which are searched for in the fields targetted of each message. -If any of them match then that message is immediately deleted on receipt. -

-

10.18 load/badwords (9) -

- -

load/badwords Reload the badwords file -

-

Reload the /spider/data/badwords file if you have changed it manually whilst -the cluster is running. This file contains a list of words which, if found -on certain text portions of PC protocol, will cause those protocol frames -to be rejected. It will all put out a message if any of these words are -used on the announce, dx and talk commands. The words can be one or -more on a line, lines starting with '#' are ignored. -

-

10.19 load/bands (9) -

- -

load/bands Reload the band limits table -

-

Reload the /spider/data/bands.pl file if you have changed it manually whilst -the cluster is running. -

-

10.20 load/cmd_cache (9) -

- -

load/cmd_cache Reload the automatic command cache -

-

Normally, if you change a command file in the cmd or local_cmd tree it will -automatially be picked up by the cluster program. Sometimes it can get confused -if you are doing a lot of moving commands about or delete a command in the -local_cmd tree and want to use the normal one again. Execute this command to -reset everything back to the state it was just after a cluster restart. -

-

10.21 load/forward (9) -

- -

load/forward Reload the msg forwarding routing table -

Reload the /spider/msg/forward.pl file if you have changed it -manually whilst the cluster is running. -

-

10.22 load/messages (9) -

- -

load/messages Reload the system messages file -

-

If you change the /spider/perl/Messages file (usually whilst fiddling/writing ne -commands) you can have them take effect during a cluster session by executing this -command. You need to do this if get something like :- -

unknown message 'xxxx' in lang 'en' -

-

10.23 load/prefixes (9) -

- -

load/prefixes Reload the prefix table -

-

Reload the /spider/data/prefix_data.pl file if you have changed it manually whilst -the cluster is running. -

-

10.24 merge (5) -

- -

merge <node> [<no spots>/<no wwv>] Ask for the latest spots and WWV -

-

MERGE allows you to bring your spot and wwv database up to date. By default -it will request the last 10 spots and 5 WWVs from the node you select. The -node must be connected locally. -

You can request any number of spots or wwv and although they will be appended -to your databases they will not duplicate any that have recently been added -(the last 2 days for spots and last month for WWV data). -

-

10.25 msg (9) -

- -

msg <cmd> <msgno> [data ...] Alter various message parameters -

-

Alter message parameters like To, From, Subject, whether private or bulletin -or return receipt (RR) is required or whether to keep this message from timing -out. +

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

-  MSG TO <msgno> <call>     - change TO callsign to <call>
-  MSG FRom <msgno> <call>   - change FROM callsign to <call>
-  MSG PRrivate <msgno>      - set private flag
-  MSG NOPRrivate <msgno>    - unset private flag
-  MSG RR <msgno>            - set RR flag
-  MSG NORR <msgno>          - unset RR flag
-  MSG KEep <msgno>          - set the keep flag (message won't be deleted ever)
-  MSG NOKEep <msgno>        - unset the keep flag
-  MSG SUbject <msgno> <new> - change the subject to <new>
-  MSG WAittime <msgno>      - remove any waitting time for this message
-  MSG NOREad <msgno>        - mark message as unread
-  MSG REad <msgno>          - mark message as read
-  MSG QUeue                 - queue any outstanding bulletins
-  MSG QUeue 1               - queue any outstanding private messages
+dbcreate <name> remote <name>
 
-

You can look at the status of a message by using:- -

STAT/MSG <msgno> -

This will display more information on the message than DIR does. -

-

10.26 pc (8) -

- -

pc <call> <text> Send text (eg PC Protocol) to <call> -

-

Send some arbitrary text to a locally connected callsign. No processing is done on -the text. This command allows you to send PC Protocol to unstick things if problems -arise (messages get stuck etc). eg:- -

pc gb7djk PC33^GB7TLH^GB7DJK^400^ -

You can also use in the same way as a talk command to a connected user but -without any processing, added of "from <blah> to <blah>" or whatever. -

pc G1TLH Try doing that properly!!! -

-

10.27 ping (1) -

- -

ping <node> Send a ping command to another cluster node -

-

This command is used to estimate the quality of the link to another cluster. -The time returned is the length of time taken for a PC51 to go to another -cluster and be returned. -

Any visible cluster node can be PINGed. -

-

10.28 rcmd (1) -

- -

rcmd <node call> <cmd> Send a command to another DX cluster -

-

This command allows you to send nearly any command to another DX Cluster -node that is connected to the system. -

Whether you get any output is dependant on a) whether the other system knows -that the node callsign of this cluster is in fact a node b) whether the -other system is allowing RCMDs from this node and c) whether you have -permission to send this command at all. -

-

10.29 read (5) -

- -

read <msgno> Read a message on the system -

-

As a sysop you may read any message on the system -

-

10.30 set/debug (9) -

- -

set/debug <name> Add a debug level to the debug set -

-

You can remove this level with unset/debug <name> -

-

10.31 set/isolate (9) -

- -

set/isolate <node call> Isolate a node from the rest of the network -

-

Connect a node to your system in such a way that you are a full protocol -member of its network and can see all spots on it, but nothing either leaks -out from it nor goes back into from the rest of the nodes connected to you. -

You can potentially connect several nodes in this way. -

You can see which nodes are isolated with the show/isolate (1) command. -

You can remove the isolation with the command unset/isolate. -

-

10.32 set/sys_location (9) -

- -

set/sys_location <lat & long> Set your cluster latitude and longitude -

-

In order to get accurate headings and such like you must tell the system -what your latitude and longitude is. If you have not yet done a SET/QRA -then this command will set your QRA locator for you. For example:- -

SET/LOCATION 52 22 N 0 57 E -

-

10.33 set/lockout (9) -

- -

set/lockout <call> Stop a callsign connecting to the cluster -

-

You can show who is locked out with the show/lockout (9) command. -

To allow the user to connect again, use the command unset/lockout -

-

10.34 set/node (9) -

- -

set/node <call> [<call> ...] Make the callsign an AK1A cluster -

-

Tell the system that the call(s) are to be treated as AK1A cluster and -fed PC Protocol rather normal user commands. -

From version 1.41 you can also set the following types of cluster +

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...

+

-set/spider
-set/dxnet
-set/clx
-set/arcluster
+dbcreate buckmaster remote gb7dxc
 
-

To see what your nodes are set to, use the show/nodes command. -

-

10.35 set/obscount (9) -

- -

set/obscount <count> <node call> Set the 'pump-up' obscelence counter -

-

From version 1.35 onwards neighbouring nodes are pinged at regular intervals (see -SET/PINGINTERVAL), usually 300 seconds or 5 minutes. There is a 'pump-up' -counter which is decremented on every outgoing ping and then reset to -the 'obscount' value on every incoming ping. The default value of this -parameter is 2. -

What this means is that a neighbouring node will be pinged twice at -(default) 300 second intervals and if no reply has been heard just before -what would be the third attempt, that node is disconnected. -

If a ping is heard then the obscount is reset to the full value. Using -default values, if a node has not responded to a ping within 15 minutes, -it is disconnected. -

-

10.36 set/pinginterval (9) -

- -

set/pinginterval <time> <node call> Set the ping time to neighbouring nodes -

-

As from version 1.35 all neighbouring nodes are pinged at regular intervals -in order to determine the rolling quality of the link and, in future, to -affect routing decisions. The default interval is 300 secs or 5 minutes. -

You can use this command to set a different interval. Please don't. -

But if you do the value you enter is treated as minutes up 60 and seconds -for numbers greater than that. -

This is used also to help determine when a link is down at the far end -(as certain cluster software doesn't always notice), see SET/OBSCOUNT -for more information. +

+

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

-

10.37 set/privilege (9) +

10.2 Importing databases

-

set/privilege <n> <call> [<call> ...] Set the privilege level on a call -

-

Set the privilege level on a callsign. The privilege levels that pertain -to commands are as default:- +

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 ...

-  0 - normal user
-  1 - allow remote nodes normal user RCMDs
-  5 - various privileged commands (including shutdown, but not disc-
-      connect), the normal level for another node.
-  8 - more privileged commands (including disconnect)
-  9 - local sysop privilege. DO NOT SET ANY REMOTE USER OR NODE TO THIS
-      LEVEL.
+dbimport oblast /tmp/OBLAST.FUL
 
-

If you are a sysop and you come in as a normal user on a remote connection -your privilege will automatically be set to 0. -

-

10.38 set/password (9) -

- -

set/password <callsign> <string> Set a users password -

-

The password for a user can only be set by a full sysop. The string -can contain any characters but any spaces are removed (you can type in -spaces - but they won't appear in the password). You can see the -result with STAT/USER. The password is the usual 30 character baycom -type password. -

-

10.39 set/sys_qra (9) -

- -

set/sys_qra <locator> Set your cluster QRA locator -

-

10.40 show/call (1) -

- -

show/call Show any callbook details on a program -This command queries an international callbook server on the internet -and returns any information available for that callsign. +

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

-

10.41 show/program (5) +

10.3 Checking available databases

-

show/program Show the locations of all the included program modules +

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 ...

-

Show the name and location where every program module was load from. This -is useful for checking where you think you have loaded a .pm file from. -

-

10.42 shutdown (5) -

- -

shutdown Shutdown the cluster -

-

Shutdown the cluster and disconnect all the users. If you have Spider -set to respawn in /etc/inittab it will of course restart. -

-

10.43 spoof (9) -

- -

spoof <callsign> <command> Run commands as another user -

-

This is a very simple yet powerful command for the sysop. It allows you to -issue commands as if you were a different user. This is very useful for the -kind of things that users seem to always get wrong.. like home_node for -example. -

-

10.44 stat/db (5) -

- -

stat/db <dbname> Show the status of a database -

-

Show the internal status of a database descriptor. -

Depending on your privilege level you will see more or less information. -This command is unlikely to be of much use to anyone other than a sysop. +

+
+dbavail
+DB Name          Location   Chain
+qsl              Local
+buck             GB7ADX
+hftest           GB7DXM
+G0VGS de GB7MBC  3-Feb-2001 1925Z >
+
+

-

10.45 stat/channel (5) +

10.4 Looking up databases

-

stat/channel <callsign> Show the status of a channel on the cluster -

-

Show the internal status of the channel object either for the channel that -you are on or else for the callsign that you asked for. -

Only the fields that are defined (in perl term) will be displayed. +

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

-

10.46 stat/msg (5) -

- -

stat/msg <msgno> Show the status of a message +

+
+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 ...

-

This command shows the internal status of a message and includes information -such as to whom it has been forwarded, its size, origin etc etc. +

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

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

-

10.47 stat/user (5) +

10.5 Removing databases

-

stat/user <callsign> Show the full status of a user -

-

Shows the full contents of a user record including all the secret flags -and stuff. -

Only the fields that are defined (in perl term) will be displayed. -

+

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

+

+
+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 +Next Previous Contents