NCPMOUNT(8)

NAME
ncpmount - mount all volumes of a specified Novell fileserver.

SYNOPSIS
ncpmount [ -h ] [ -S server ] [ -U user name ] [ -P password | -n ] [ -C ] [ -c client name ] [ -u uid ] [ -g gid ] [ -f file mode ] [ -d dir mode ] [ -V volume ] [ -t time_out ] [ -r retry_count ] [ -v ] mount-point

DESCRIPTION
This program is used to mount all volumes of the specified NetWare Fileserver under the specified mount point. ncpfs is a linux filesystem which understands the NCP protocol. This is the protocol Novell NetWare clients use to talk to NetWare servers. ncpfs was inspired by lwared, a free NetWare emulator for Linux written by Ales Dryak. See ftp://klokan.sh.cvut.cz/pub/linux for this very interesting program. ncpmount when invoked with all appropriate arguments attaches, logs in and mounts all of the volumes associated with the specified fileserver that are readable by the user id under the specified mount point. ncpmount when invoked without any arguments specifying the fileserver, user id and password checks the file $HOME/.nwclient to find a file server, a user name and possibly a password to use for the specified mount point. See nwclient(5) for more information. Please note that the access permissions of .nwclient MUST be 600, for security reasons.

OPTIONS
mount-point
    mount-point is the directory you want to mount the filesystem over. Its function is the the same as for a normal mount command. If the real uid of the caller is not root, ncpmount checks whether the user is allowed to mount a filesystem on the mount-point. So it should be safe to make ncpmount setuid root. The filesystem stores the uid of the user who called ncpmount. So ncpumount can check whether the caller is allowed to unmount the filesystem.
-S server
    server is the name of the server you want to use.
-h
    -h is used to print out a short help text.
-C
    By default passwords are converted to uppercase before they are sent to the server because most servers require this. This option disables this feature ensuring that passwords are sent without any case conversion.
-n
    -n must be specified for logins that do not have a password configured.
-P password
    specifies the password to use for the Netware user id. If neither -n nor the -P arguments are specified ncpmount will prompt for a password. This makes it difficult to use in scripts such as /etc/rc. If you want to have ncpmount work automatically from a script you must include the appropriate option and be very careful to ensure that appopriate file permissions are set for the script that includes your password to ensure that others can not read it.
-U user name
    Specifies the Netware user id to use when logging in to the fileserver. If this option is not specified then ncpmount will attempt to login to the fileserver using the Linux login id of the user invoking ncpmount.
-u uid, -g gid
    ncpmount does not yet implement a scheme for mapping NetWare users/groups to Linux users/groups. Linux requires that each file has an owner and group id. With -u and -g you can tell ncpmount which id's it should assign to the files in the mounted directory. The defaults for these values are the current uid and gid.
-c user name
    -c names the user who is the owner of the connection, where owner does not refer to file ownership (that "owner" is set by the -u argument), but the owner of the mount, ie: who is allowed to call ncpumount on this mount. The default owner of the connection and the mount is the user who called ncpmount. This option allows you to specify that some other user should be set as the owner. In this this way it is possible to mount a public read-only directory, but to allow the lp daemon to print on NetWare queues. This is possible because only users who have write permissions on a directory may issue ncp requests over a connection. The exception to this rule is the 'mount owner', who is also granted 'request permission'.
-f file mode, -d dir mode
    Like -u and -g, these options are used to determine what permissions should be assigned files and directories of the mounted volumes. The values must be specified as octal numbers. The default values are taken from the current umask, where the file mode is the current umask, and the dir mode adds execute permissions where the file mode gives read permissions. Note that these permissions can differ from the rights the server gives to us. If you do not have write permissions on the server, you can very well choose a file mode that tells that you have. This certainly cannot override the restrictions imposed by the server.
-V volume
    There are 2 general ways you can mount a NetWare server's disk space: Either you can mount all volumes under one directory, or you can mount only a single volume. When you choose to mount the complete disk space at once, you have the advantage that only one Linux mount point and only one NetWare connection is used for all the volumes of this server. Both of these are limited resources. (Although raising the number of Linux mount points is significantly cheaper than raising the number of available NetWare connections ;-)) When you specify to mount a single volume by using the option -V volume, you have the big advantage that nfsd is able to re-export this mounted directory. You must invoke nfsd and mountd with the option --re-export to make nfsd re-export ncpfs mounted directories. This uses one Linux mount point and one NetWare connection per mounted volume. Maybe sometime in the future I will make it possible to mount all volumes on different mount points, using only one connection.
-t time_out
    With -t you can adjust the time ncpfs waits for the server to answer a request it sent. Use the option to raise the timeout value when your ncpfs connections seem to be unstable although your servers are well up. This can happen when you have very busy servers, or servers that are very far away. time_out is specified in 1/100s, the current default value is 60.
-r retry_count
    As -t, -r can be used to tune the ncpfs connection to the server. With retry_count you can specify how many times ncpfs will attempt to send a packet to the server before it decides the connection is dead. The current default value is 5. Currently ncpfs is not too clever when trying to find out that connections are dead. If anybody knows how to do that correctly, as it is done by commercial workstations, please tell me.
-v
    Print ncpfs version number

NOTES
You must configure the IPX subsystem before ncpmount will work. It is especially important that there is a route to the internal network of your server.

ENVIRONMENT VARIABLES
USER / LOGNAME
    The variables USER or LOGNAME may contain the username of the person using the client. USER is tried first. If it's empty, LOGNAME is tried.

DIAGNOSTICS
Most diagnostics issued by ncpfs are logged by syslogd. Normally nothing is printed, only error situations are logged there.

SEE ALSO
syslogd(8), ncpumount(8), nfsd(8), mountd(8)

CREDITS
ncpfs would not have been possible without lwared, written by Ales Dryak (A.Dryak@sh.cvut.cz). The encryption code was taken from Dr. Dobbs's Journal 11/93. There Pawel Szczerbina described it in an article on NCP. The ncpfs code was initially hacked from smbfs by Volker Lendecke (lendecke@math.uni-goettingen.de). smbfs was put together by Paal-Kr. Engstad (pke@engstad.ingok.hitos.no) and later polished by Volker.