As almost every office-LAN has a NetWare server, your
desktop client must be able to talk to NetWare. This article tells you how a Linux box can
access files on a Novell server and print to a Novell print queue.
Linux, by default, uses the IP network protocol for network
communication. However, Novell NetWare uses the IPX network protocol. As the Linux kernel
has a completely new network implementation compared to other operating systems like Unix,
it supports a range of non-TCP/IP protocols including the IPX protocol. Kernels 2.x
onwards have built-in IPX support. The Red Hat Linux distributed on our CD-ROM has it too.
The Linux kernel supports the IPX protocol only. It does not, yet, support protocols such
as IPX/RIP, SAP, or NCP.
The first step is to configure your IPX interfaces.
src="<%=imgpath%>novell.jpg" width="200" height="139" alt="novell.jpg (13939 bytes)" align="right">
- Login as root
- Type ipx_configure--auto_primary= on --auto_interface=on
- Wait for a minute and type cat /proc/net/ipx_interface.
You should see something like:
Network Node_Address
Primary Device Frame_Type
000000E1 00A0C925164A Yes eth0 802.24.Type slist. You should
see a list of the NetWare servers on your LAN.
Known NetWare File Servers Network Node
Address
D74_SERVER 00000D74 00000000001
If you don’t, wait for a few minutes and retry. If the
slist command displays a message like: ncp_connect: Invalid argument, then
your kernel probably does not support IPX. Check that you have actually booted off the
appropriate kernel. When you boot you should see messages about IPX and ncpfs
in system startup messages. If the slist command does not list all of your
fileservers, then you may need to use the manual network configuration method. Type cat
/proc/net/ipx_interface. You should see something like:
At this point, your Linux box is setup for IPX networking.
Check if your kernel has support for NetWare NCP file system. The default Red Hat kernel
has NCP file system support. You simply have to load the ncpfs module /usr/sbin
/lib/modules/2.0.32/fs/ncpfs.0. You can also add the line to your local file to load
it automatically at the boot time.
Once that is done,
- Login as root (only root can mount NetWare volumes).
- Type mkdir/netware to create a directory for mounting
the NetWare volumes.- Type ncpmount -S D74_SERVER -U user10 /netware. You
will be prompted for a password for user10.- At this point your server is mounted on /netware. The
volumes are sub-directories under /netware. So the SYS volume would be /netware/sys
and the DATA volume would be /netware/data.- If you only want to mount a single volume, you can use ncpmount
-S D74_SERVER -V sys -U user10
/netware. This will mount only the SYS volume to /netware.- When you finish using the Net-Ware volume, you can unmount
usingncpumount/netware.
Tip: You don’t need to manually unmount NetWare volumes when you shutdown.When you want to share the mounted NetWare volume among
other Linux users, you need to understand file permissions. The NetWare file system doesn’t
support user IDs and group IDs for directories. So all files and directories on the
mounted directory have the permissions as the directory where it was mounted. For example,
if you type ls -ld/netware, drwxrwxr-x 1 root root 512 Nov 24 1960 /netware
is what you get.So, all the NetWare files will have the above file
permissions.If you want non-root users to mount NetWare volumes, ncpmount
command must be Set Userid Root, so you would need to type chmod 4755
ncpmountSimplifying mounting of volumes
There is another way of configuring NetWare mounts–by
creating a .nwclient file in your home directory. This file contains details of
temporary or user specific NetWare mounts that would be performed regularly. It allows you
to store the details of mounts so that you can recreate them without specifying all
details each time. Its format is quite straightforward:# The first entry is the ‘preferred
server’ entry and is
# used whenever you do not specify a server explicitly.
#
# User USER01 login to D74_SERVER fileserver with password ‘password’
D74_SERVER/USER01 password
#
# User CYBER login to the CYBER_DOC fileserver with no password.
CYBER_DOC/CYBER -To activate these mounts you type ncpmount/netware
to mount D74_SERVER with a login (say) TERRY under /NetWare directory. Note that this
entry was chosen because no fileserver was specified in the mount command. Had we used ncpmount
-S CYBER_DOC /netware, then it would mount CYBER_DOC with a login of CYBER under
/NetWare directory.Since the passwords for your Novell accounts are not
encrypted, you should protect them by typing chmod 0600 $HOME/.nwclient.Printing to NetWare print queues
Once you are comfortable accessing your files, you can try
printing to a Novell print queue.
- Use slist to check that you can see your Novell
server.- Type pqlist -S D74_SERVER -U USER01 to list the print
queues on D74_SERVER.- Type nprint -S D74_SERVER -U USER01 -q
DMPQUEUE/etc/passwd. This would print the /etc/passwd file to the DMPQUEUE print queue
on the D74_SERVER by logging in as USER01. If you have created your .nwclient file,
then you can use nprint -q DMPQUEUE /etc/passwd instead. The server and login ID
are taken from the .nwclient file. Ensure that the queue names are in capitals.- Check your Novell print queue from a DOS client using
PCONSOLE. You should see a printjob called No Description in the DMPQUEUE.Printing using nprint is tedious–first it
requires you to print to a file and then submit using nprint. You can automate this
by setting up a Linux print queue, which automatically sends it to the NetWare print
queue. The following steps are a bit confusing and reading about Unix printing in the
Printing HOW-TO would be beneficial.The following steps tell you how to configure a NetWare
print queue for Red Hat Linux.
- Copy Netwareprint.tgz from the CD-ROM to the /tmp directory.
- cd /;tar xzvf /tmp/netwareprint.tgz. This will
replace /usr/bin/printtool, /usr/lib/rhs/rhs-printfilters/master-filter, and
/usr/lib/rhs/rhs-printfilters/nwprint, with the latest versions.- If you aren’t already in X Windows, start by typing startx.
- If the graphical control panel is not visible, start it by
typing control-panel & in an XTerm.- Click the printer icon in the control panel. You should see
a list of printers currently configured for Linux.- Click Add. A dialog box with various supported print
queues appears. Select Novell Netware print queue.- In Printer name, enter nwqueue.
- Enter D74_SERVER and DMPQUEUE for the NetWare
server and print queue. Ensure that the queue names are in capitals.- Enter the user name and password if needed. If you have a
password, you must enter it here because it will not prompt you for a password during
printing.- In the filter type, select the appropriate printer type. If
your laser printer supports postscript printing, please use Postscript printer.- Click OK and you’ll see a new printer called nwqueue
in the list of printers.- Select nwqueue from the list and click Test Print
from the menu. Use a DOS client with PCONSOLE to check the DMPQUEUE. You should see a new
print job in the queue. In case it doesn’t work, try mounting a volume from the
server D74_SERVER (on which the print queue resides).- Now your printing should be set-up. To print /etc
/passwd, type lpr -Pnwqueue /etc/passwd at your prompt.- To print from Netscape, use the command lpr -Pnwqueue
to print. Alternatively, you could always print to a file and use nprint to print
it manually.Utility commands
Recent versions of Volker’s ncpfs package include a
range of user and administration commands. The tools are built and installed as part of
the ncpfs installation process. Though each has a detailed manual page, here is a summary
of each from the IPX-HOWTO.ncopy (Network Copy): Allows efficient file (Network Copy): Allows efficient file
copying using a NetWare function rather than a copy across the network.
nsend (Network Send): Allows you to send messages to other users on a
NetWare server.
nwbols (List Bindery Objects): Allows you to list the bindery contents of a
NetWare server.
nwboprops (List Properties of a Bindery Object): Allows you to view the
properties of a NetWare bindery object.
nwfsinfo (Fileserver Information): Prints summary information about NetWare
server.
nwpasswd (NetWare Password): Allows you to change NetWare users password.
nwrights (NetWare Rights): Displays the rights associated with a particular
file or directory.
nwuserlist (Userlist): Lists the users currently logged into a NetWare
fileserver.
pqlist (Print Queue List): Displays the contents of a NetWare print queue.
slist (Server List): Displays a list of known NetWare fileservers.
copying using a NetWare function rather than a copy across the network.
nsend (Network Send): Allows you to send messages to other users on a
NetWare server.
nwbols (List Bindery Objects): Allows you to list the bindery contents of a
NetWare server.
nwboprops (List Properties of a Bindery Object): Allows you to view the
properties of a NetWare bindery object.
nwfsinfo (Fileserver Information): Prints summary information about NetWare
server.
nwpasswd (NetWare Password): Allows you to change NetWare users password.
nwrights (NetWare Rights): Displays the rights associated with a particular
file or directory.
nwuserlist (Userlist): Lists the users currently logged into a NetWare
fileserver.
pqlist (Print Queue List): Displays the contents of a NetWare print queue.
slist (Server List): Displays a list of known NetWare fileservers.NDS and Linux
A Linux distribution by Caldera features a range of
commercially supported enhancements including fully functional Novell NetWare client
support. The base distribution is the well-respected Red Hat Linux. Caldera has added its Network
Desktop products to it. The NetWare support provides a fully featured Novell NetWare
client built on a technology licensed from Novell. The client provides full-client access
to Novell 3.x and 4.x fileservers, and includes features such as NetWare Directory Service
(NDS) and RSA encryption. If you work within a NetWare 4.x or NDS environment, then the
Caldera NetWare Client is the only solution available. You can obtain much more
information and ordering details from the Caldera Web server at www.caldera.com/.Useful documents
To get more information on IPX and NetWare support, read
the IPX-HOWTO. This document presumes that you understand how to build a Linux kernel with
the appropriate networking options selected, and that you know how to use the basic
networking tools such as ifconfig and route. If you do not, read the NET-3-HOWTO
(NET-3-HOWTO.html). Some other Linux HOWTO documents that might be useful are: The
Ethernet-HOWTO (Ethernet-HOWTO.html), which describes the details of configuring an
Ethernet device for Linux; the PPP-HOWTO (PPP-HOWTO.html), which explains the available
IPX support for version 2.2.0d and later of the Linux PPP implementation.Latest versions of these files can be obtained from
sunsite.unc.edu/pub/Linux/docs/HOWTO/IPX-HOWTO. In your Linux box, the HOW-TOs are located
in the /usr/doc/HOWTO directory in a compressed format. To view these files, type zless
IPX-HOWTO.gz.