[Koha] connecting to zs39

Mark Alexander marka at pobox.com
Sat Jan 14 00:19:50 NZDT 2017


Excerpts from Solomon Mwangi's message of 2017-01-13 12:55:12 +0300:
> I have Koha running on an Linux server running Ubuntu 12.04
> 
> Koha runs fine - no issues.
> 
> I have been trying to connect to it via ZS39 but unable to connect.
> 
> Yaz client gives me this error = System (lower-layer) error
> 
> Help/ideas would be appreciated.

I assume you're talking about Z39.50?  There is a Wiki page describing
how to troubleshoot problems:

https://wiki.koha-community.org/wiki/Troubleshooting_Koha_as_a_Z39.50_server

But I've found that a few details in that document were slightly wrong
or incomplete for my installation (Koha 16.11 on Debian 8).  Here are
the notes I wrote for myself as I was getting Z39.50 to work on my
installation (all tasks performed while logged in as root):

To enable Z39.50, edit the file `/etc/koha/sites/LIBRARYNAME/koha-conf.xml`,
where LIBRARYNAME is the name you chose when you created your Koha instance.

Near the top of that file is a line that looks like this:

    <listen id="publicserver">tcp:@:nnn</listen>

Uncomment that line by removing the `<!--` and `-->` lines before and after it.
Then replace `nnn` with an unused port number, preferably something greater
than 1023.  I chose 9998.

Farther down in file, around line 180, is a section starting with a line that
looks like this:

    <!-- PUBLICSERVER'S BIBLIOGRAPHIC RECORDS -->

Below that is a line that looks like this:

    <server id="publicserver"  listenref="publicserver">

Remove the start-of-comment line (`<!--`) before that line.

Now move down to around line 260, where you will see this line:

    </serverinfo>

Remove the end-of-comment line (`-->`) after that line.

Finally, save the file and exit the editor.

Restart Zebra (the program that handles searches in Koha):

    koha-restart-zebra rpl

Verify that Zebra is now listening on the port you chose (9998 in the
example above) by doing this:

    netstat -pn --tcp --listen | grep 9998

If things are working, you should see a line that looks like this:

    tcp        0      0 0.0.0.0:9998            0.0.0.0:*               LISTEN      6986/zebrasrv   

If things are not working, you won't see any output.

As a final check, you can try making a Z39.50 connection:

    yaz-client tcp:127.0.0.1:9998/biblios

If things are working, you should see a few lines of output, including a line
that looks like this:

    Connection accepted by v3 target.

and then a prompt line:

    Z> 

If things aren't working, you'll see an error message like this:

    Connecting...error = System (lower-layer) error: Connection refused

Exit the `yaz-client` program by hitting Ctrl-D or typing `exit` followed by Enter.


More information about the Koha mailing list