TOOLBOX.NLM
version 1.9d (NetWare v3.12, v4.x, and NetWare 5)
Copyright (C) 1997,1998 Novell, Inc.
All Rights Reserved
NOTE: This is a legacy version of TOOLBOX designed for
older NetWare versions (3.x and 4.10).
See ABSTRACT for information on an enhanced
version of TOOLBOX - v2.x for current 4.x and 5.
________________________________________
CONTENTS
________________________________________
I. Abstract
II. Installation Instructions
III. Usage
IV. Product Description
V. Enhancements/Bug Fixes
VI. Known Issues
VII. Frequently Asked Questions
________________________________________
I. ABSTRACT
________________________________________
TOOLBOX.NLM provides various utility functions to be executed
on the server console or via NCF files (without involving any clients).
PLEASE READ:
Toolbox 1.9d is a backward compatible version of TOOLBOX that will
load on NetWare 3.x (with LIB312A applied), NetWare 4.10 (with LIBUPE
or later), and stock NetWare 4.11 and greater servers.
It will continue to be available because of backward
compatibility, however enhancements will be limited.
Toolbox 2.x is the next generation toolbox that will only load on
NetWare 4.11 with support pack 5 and greater, and NetWare 5. It has many
enhanced features that could not be placed in this version because
of the lack of library support.
If you are running NetWare 4.11 and greater servers, you would be
well served to get Toolbox v2.x.
New Toolbox v2.x features include:
Flag (attribute utility)
Multi-tree authentication
Connection management
Remote NLM loading and unloading
Java and Applet execution helper
Long name space support (4.11 w/ support pack 6, and NetWare 5)
Hex/Decimal/Binary conversion utilities
NOTE: This utility helps system administrators. It is provided
free of charge as a courtesy, and therefore, is not a Novell
supported product.
________________________________________
II. INSTALLATION INSTRUCTIONS
________________________________________
Copy TOOLBOX.NLM to the SYS:\SYSTEM directory on your server.
NOTE: 3.x servers require CLIB from LIB312A to be loaded.
4.10 servers require Modular CLIB from LIBUPE or later.
If the above requirements are not met, Toolbox may not
be able to load because of unresolved symbols.
________________________________________
III. USAGE
________________________________________
Loading:
load TOOLBOX
After loading, general help can be obtained with the console command:
TOOLBOX
A command listing is done with the command:
TOOLS
For help on the commands provided by Toolbox, type:
<CommandName> ? or /?
________________________________________
IV. PRODUCT DESCRIPTION
________________________________________
TOOLBOX is a collection of utilities that can be used at the
server console, or executed from NCF files. All utilities,
except where specified, allow operations on the local DOS partition,
the local server's Volumes, and remote server's Volumes.
The utilities provided by Toolbox are:
Authset - Set username and password for easy authentication
Beep - Ring the bell
Chdir(c,pwd)- Change or View Current Directory
Copy (cp) - Copy utility
Del (rm) - Delete utility (not supported on 3.x DOS Partitions)
Delay - Delay command
Dir (ls) - Directory utility
Echo - Echo message to the console
Mkdir (md) - Make Directory utility
Move (mv) - Move utility (not supported on 3.x DOS Partitions)
Purge - Purge deleted files
Rmdir (rd) - Remove Directory utility
Shutdown - Shutdown and restart server
Startup - Edit the startup file
Toolbox - General help screen for Toolbox
Tools - Display list of available tools
Type (cat) - View text files on the screen
Authset SYNTAX:
authset Username Password
Username = User object for authen. to NDS or remote server(s)
Password = Password for above user (Enter * to be prompted)
Description:
- Username and Password are only used by TOOLBOX utilities when
when authentication is required but no Username and Password
was specified for the command
- Once they are set, their values may not be viewed
- If Username has no password, specify ""
- To unset their values, use "" (ie. authset "" "")
EXAMPLE:
authset admin homer
After being set, if a utility was executed that required
authentication to a remote server, and you didn't specify
a Username and Password on the command line for that utility,
then the username and password specified above would be used.
Beep SYNTAX:
beep
Description:
- Rings the bell on the console
Chdir SYNTAX:
chdir [Path]
c
pwd
Path = [servername/]VolOrDrive:[path]
= ..[/][...]
= /path
Description:
- When set, "Path" will be prepended to all filespec and path
arguments that do not include a colon
- chdir or pwd with no parameters will display the current path
- Set the path (default of SYS:) by doing: chdir ""
- Any number of dots can be used to go back n - 1 directories
- To use the existing volume or drive, preface new path with /
Known Issues:
- The commonly known command "cd" cannot be used because of
conflicts with the CDROM.NLM "cd" command.
If on 4.11 you can use the alias command if cdrom.nlm is not used
- No checking is done to assure that the path specified
is valid.
- Supports only DOS name space
EXAMPLES:
chdir sys:
chdir sys:public/nls
chdir /system/nmx
Use the current drive or volume and append /system/nmx
chdir c:\nwserver
chdir ..
Move back one directory from the current
chdir ../../public
Move back two directories from the current
and into public
chdir ....
Move back three directories from the current (n-1)
Copy SYNTAX:
copy SourceSpec [DestPath] [Username Password] [options]
move (same as: copy /ms)
cp (same as: copy)
mv (same as: move)
SourceSpec = [servername/]VolOrDrive:path/filespec
DestPath = [servername/]VolOrDrive:path[/file]
Username = User object for authen. to NDS or remote server(s)
Password = Password for above user (Enter * to be prompted)
Options = preface option(s) with '-' or '/' (ie. -bsa)
a - do not copy DOS & NetWare Attributes
b - force Bindery authentication only
d - copy Empty subdirectories
e - do not remove Empty dirs during a move
l - Log activity summary to the file:
TBOX$ACT.LOG in the destination directory
m - Move file/dirs (delete original after copy)
r - overwrite Read-only files (on NetWare partitions)
s - delete filespec in current and all subdirs and
will removeany empty subdirectories when completed
v - Verbose mode
q - Quiet mode
Features:
- NDS and Bindery authentication (see Limitations)
- Works with DOS partition on local server
- Keeps activity log for auditing purposes
- Interrupt copy with Ctl-C
Limitations/Known Issues:
- For NDS, it will only authenticate to the local tree
- Will only copy between two remote servers if:
* both are in the same local tree
* both are bindery connections with the same username/password.
NDS and bindery authentication cannot be used concurrently
- Supports only DOS name space
- No wildcards are allowed in destination filespec
- Trustees and extended attributes are not copied
- Files copied to the DOS partition will not preserve dates & attribs
- The Move feature is not supported from 3.x DOS Partitions
- The activity log feature is not supported when copying
to 3.x DOS Partitions
- Overwrite Read-only files is not supported on any DOS Partitions
- Max recursive depth for subdirectory copies is 15
- DestPath may only be omitted if both are true below:
* No username and password are specified
* A current directory is set with CHDIR
- Empty subdirs are always copied from the DOS partition.
Warnings:
- If the destination file exists,
it will be overwritten without warning.
EXAMPLES:
copy c:\nwserver\startup.ncf sys:ncfs/
Copy startup.ncf from C: to the sys volume,
ncfs directory.
The ncfs directory will be created if it doesn't exist.
copy homer/sys:public/*.ini a: admin marge
Copy all .ini files from server homer to the
local floppy.
copy homer/vol1:*.tmp lisa/vol2: /m
Move all tmp files from homer vol1 root to lisa vol2.
For this to work, authset must contain valid data
so authentication can be accomplished.
copy sys:backup vol1:backup /sl
Copy all files and directories from the
sys:backup directory to vol1:backup.
Also create/update the activity log in the destination
directory.
copy a:*.nlm sys:system /r
Copy all NLMs from the A: drive to sys:system,
overwriting all files, regardless of their
read-only flag.
copy sys:system/*.nlm sys:backnlm /a
Copy all NLMs from sys:system to the backnlm directory
with no attributes being copied.
Del SYNTAX:
del [FileSpec] [Username Password] [options]
rm
FileSpec = [servername/]VolOrDrive:path[/filespec]
Username = User object for authen. to NDS or remote server(s)
Password = Password for above user (Enter * to be prompted)
Options = preface option(s) with '-' or '/' (ie. -bsa)
b - force Bindery authentication only
e - will not remove Empty subdirectories (used with /s)
s - delete filespec in current and all subdirs and
remove any empty subdirectories when completed
q - Quiet mode
v - Verbose mode
y - Suppress delete confirmation
Description:
- Deletes the files specified with filespec
- If a directory is specified, all files in it will be removed
- If a directory is specified with the /s option, it will be removed
as well as all files and subdirs beneath it unless /e is used
Features:
- NDS and Bindery authentication (see Limitations)
- Works with DOS partition on local server
Limitations/Known Issues:
- This utility is not supported on 3.x DOS Partitions
- Supports only DOS name space
- For NDS, it will only authenticate to the local tree
- Max recursive depth for /s option is 15
- Cannot delete Read-only files from DOS Partitions
EXAMPLES:
del betty/vol1:testdir /s
Delete the testdir directory and all its children
on server betty, vol1.
For this to work, authset must contain valid data
so authentication can be accomplished.
del c:\*.log
Delete all log files in the local C drive
(This will not work on 3.x DOS Partitions)
Delay SYNTAX:
delay [mseconds]
mseconds = number of milliseconds to delay
Description:
- To hold the command prompt from executing any other commands
to a specified delay time
- Useful in NCF files to pseudo-synchronize command
- If mseconds is not specified, delay the default of 1000ms (1 sec)
Dir SYNTAX:
dir [FileSpec] [Username Password] [options]
ls
FileSpec = [servername/]VolOrDrive:[path/filespec]
Username = User object for authen. to NDS or remote server(s)
Password = Password for above user (Enter * to be prompted)
Options = preface option(s) with '-' or '/' (ie. -bsa)
b - force Bindery authentication only
c - Continuous listing
d - list Directories only
s - search Subdirectories for filespec
t - list Totals only
v - Verbose mode
w - Wide listing
Description:
- If no filespec is specified, a directory of the
path specified by Chdir is listed.
Chdir path is set to the root of SYS: by default.
Features:
- NDS and Bindery authentication (see Limitations)
- Works with DOS partition on local server
Limitations/Known Issues:
- For NDS, it will only authenticate to the local tree
- Supports only DOS name space
- Will not report available space on the DOS partition
- When NDS authentication is used, free volume space
is not reported because of a CLIB bug
- Max recursive depth for subdirectory listings is 15
EXAMPLES:
dir vol1:*.log /s
Find all .log files on vol1
dir homer/sys:*.* admin marge /ts
Display the number of files, dirs and space
used on server homer, volume sys.
dir c: /d
List all directories on the root of drive C:
dir
List all files and directories on the
current directory. See chdir.
Echo SYNTAX:
echo [["]string["]]
string = Any string to echo to the console
Quotes are optional.
Mkdir (md) SYNTAX:
mkdir Directory [Username Password] [options]
md
Directory = [servername/]VolOrDrive:path
Username = User object for authen. to NDS or remote server(s)
Password = Password for above user (Enter * to be prompted)
Options = preface option(s) with '-' or '/' (ie. -bv)
b - force Bindery authentication only
v - Verbose mode
q - Quiet mode
Features:
- NDS and Bindery authentication to remote servers
- Will create all non-existant directories in the path
Limitations:
- For NDS, it will only authenticate to the local tree
- Supports only DOS name space
EXAMPLES:
mkdir c:\my\dog/has/fleas
Create all directories in the path that don't exist
md homer/vol1:mybackup/files admin marge
Move SYNTAX:
move is an alias for copy /ms
mv
The detailed syntax for Move is the same as Copy.
EXAMPLES:
move sys:dir1 vol1:dir2
Move dir1 from sys to dir2 on vol1
If dir2 already exists, dir1 will be placed
as a child under dir2.
move c:\*.bak homer/vol1:mycback admin marge
Move all .bak files from the root of C drive
to mycback directory on homer vol1.
This will not work on 3.x dos partitions.
Purge SYNTAX:
purge [Path] [Username Password] [options]
Path = [servername/]Volume:[path[/filespec]]
Username = User object for authen. to NDS or remote server(s)
Password = Password for above user (Enter * to be prompted)
Options = preface option(s) with '-' or '/' (ie. -bsa)
a - purge files in directory and all subdirs
b - force Bindery authentication only
d=nn - don't purge files deleted less than nn days
q - Quiet mode
v - Verbose mode
Description:
- Purges (permanently removes) all deleted files in Path
- If Path is omitted, all files in the current directory
from Chdir are purged
Features:
- NDS and Bindery authentication (see Limitations)
Limitations/Known Issues:
- For NDS, it will only authenticate to the local tree
- Only DOS name space names are supported
- Max recursive depth for /a option is 15
- Supports only DOS name space
Warnings:
- Files are purged without warning
EXAMPLES:
purge sys:
Purge all files at the root of sys
purge sys:system /a
Purge all files in sys:system and all dirs below
purge sys:*.tmp /a
Purge all .tmp files on the sys volume
purge sys:*.log /d=30 /a
Purge all .log files on the sys volume that have
been deleted 30 or more days ago
Rmdir (rd) SYNTAX:
rmdir Directory [Username Password] [options]
rd
Directory = [servername/]VolOrDrive:path
Username = User object for authen. to NDS or remote server(s)
Password = Password for above user (Enter * to be prompted)
Options = preface option(s) with '-' or '/' (ie. -bv)
b - force Bindery authentication only
v - Verbose mode
q - Quiet mode
Features:
- NDS and Bindery authentication to remote servers
Limitations:
- For NDS, it will only authenticate to the local tree
- Supports only DOS name space
- Will only remove the directory if it is empty. See "DEL /S"
EXAMPLES:
rmdir c:\junk\myjunk
rmdir homer/vol1:pback/may29
ShutDown SYNTAX:
ShutDown [options]
Options = preface option(s) with '-' or '/' (ie. -bsa)
f - Force Server Down even if there are
open files.
r - Restart the server after it is downed
(not supported on 3.x)
Description:
- ShutDown allows you to force the server DOWN, even if files
are open, without having to be at the console to confirm it.
- If the Force option is not specified and files are open,
ShutDown will print an error and return to the prompt.
Startup SYNTAX:
startup
Description:
- Edits the startup file which is executed when toolbox loads
- Only certain commands are valid for the startup file,
execute the TOOLS command for that list.
If an invalid command is placed in the file,
Toolbox will report the error upon startup.
- Load TOOLBOX with the /NS switch to not execute the startup file
- Comments for the startup file include: # ; REM
- This documentation is also found in the startup file itself
Toolbox SYNTAX:
toolbox [?][/?]
Displays the main toolbox help screen.
EXAMPLE:
toolbox
Tools SYNTAX:
tools [?][/?]
Displays the command list screen.
EXAMPLE:
tools
Type SYNTAX:
type FileSpec [Username Password] [options]
cat
FileSpec = [servername/]VolOrDrive:path/filespec
Username = User object for authen. to NDS or remote server(s)
Password = Password for above user (Enter * to be prompted)
Options = preface option(s) with '-' or '/' (ie. -bsa)
b - force Bindery authentication only
c - Continuous display
Description:
- View the contents of text files on the screen
Features:
- NDS and Bindery authentication (see Limitations)
- Accepts wildcards for viewing multiple files
- Works with DOS partition on local server
Limitations/Known Issues:
- For NDS, it will only authenticate to the local tree
- Only DOS name space names are supported
EXAMPLES:
type homer/sys:system/autoexec.ncf admin marge
type sys:system/*.ncf
________________________________________
V. ENHANCEMENTS/BUG FIXES
________________________________________
Enhancements from version 1.1
- Added Beep, Delay, Echo, Purge and a Startup file
- Enhanced the error messages from authentication failures
Bug Fixes from version 1.1
- Fixed a 3.x Abend when CONLOG was loaded.
- Resolved display issues on 3.x with DIR
Enhancements from version 1.4
- Removed some unimportant status messages
- Updated some help screens for more clarity
Bug Fixes from version 1.5
- Supposedly corrected a build problem that caused
the PURGE command to abend the server.
Bug Fixes from version 1.6
- Finally found the real problem that caused an
abend with PURGE in both 1.5 and 1.6.
I can finally sleep tonight!
- Fixed a bug that hung the console when typing
a CTL-C at the TYPE screen.
Enhancements from version 1.7
- Enter key can be used to continue scrolling in DIR
Bug Fixes from version 1.7a
- Resolved UnLockDirectoryEntry abend with PURGE
Enhancements from version 1.7b
- Purge now accepts wildcards
Enhancements from version 1.7d
- Added /d=xx switch to PURGE, to not Purge files
deleted less than xx days ago.
- Added Unix-like aliases
- Added ShutDown command
Bug Fixes from 1.08a
- Will no longer abort entire directory copy
if read or write errors occur on a file
- DIR will now display sizes over 2GB correctly
Enhancements from version 1.08b
- Removed BETA status
Enhancements from version 1.08d
- Added interactive password prompting with the * option
- Added confirmation for DEL command when deleting multiple files
- Added color
Bug Fixes from 1.09
- Prevent abends when certain OS symbols are not found
- COPY sometimes could not set destination file attributes
when NDS Authenticated.
- Can now specify a leading / or \ in a path and have it work correctly
in all commands.
- Copy and Del will now correctly interpret filespecs in subdirectories
as they did in the current directory.
Enhancements from version 1.09
- Added alias C to CHDIR for easier navigation
- Improved CHDIR functionality by allowing multiple
dots and the ../../ syntax.
- Removed reliance on newer CLIB on 4.11
so new installations will be able to load Toolbox.
- DIR and TYPE now accept Esc key to quit
- COPY has new switch to copy empty subdirectories (/d)
- DEL switch /e to not delete empty subdirectories
- MOVE switch /e to not delete empty subdirectories
Bugs fixed from verson 1.09c
- Cyclical copy/move bug has been fixed
- Files with % in their names will no longer abend
server when listed or copied.
________________________________________
VI. KNOWN ISSUES
________________________________________
General Issues:
NOTE: 3.x servers require CLIB from LIB312A to be loaded.
4.10 servers require Modular CLIB from LIBUPE or later.
If the above requirements are not met, Toolbox may not
be able to load because of unresolved symbols.
Issue 1: Only supports DOS name space. Investigation into
support of long names surfaced many bugs and limitations
in the current API that made Long name support unfeasible.
Issue 2: Cannot access DOS partitions on remote servers.
Issue 3: NDS authentication can be done on the local tree only.
Issue 4: Max recursive depth for /s options is 15
Issue 5: When accessing the floppy drive on 3.12 or 4.10 without
the new modular CLIB, the floppy light will stay on.
To turn it off, at the console type: "a:"
It will report that it's an Unknown Command, but the light
will turn off. This is a not toolbox problem but a CLIB problem
that was fixed in modular CLIB that unfortunately cannot
be loaded on 3.12.
Issue 6: IMPORTANT FOR 3.12 SERVERS.
If TOOLBOX is loaded in the AUTOEXEC.NCF it may abend the
server when any command is issued. It is a timing issue
during the Load when some pointers to CLIB routines are
not properly set. Some have reported that if they are loading
many things in the AUTOEXEC, they can load toolbox at the
end and make it work, but it's a gamble. This issue is being
investigated.
Authset:
None:
Beep:
None:
Chdir (pwd):
Issue 1: Does not check for existence of directory when being set.
Copy (cp):
Issue 1: If files already exist in the Destination path, they
will be overwritten without warning.
Issue 2: Extended attributes and trustees are not copied.
Issue 3: Files copied to the DOS partition will not preserve
dates and attributes.
Issue 4: Move feature not supported on 3.x DOS Partitions
Issue 5: Activity log not supported when copying to 3.x DOS Partitions
Issue 6: Will only copy between two remote servers if:
* both are in the same local tree
* both are bindery connections with the same username/password.
NDS and bindery authentication cannot be used concurrently
Issue 7: Overwrite read-only files will not work on any DOS Partitions
Del (rm):
Issue 1: Does not work on 3.x Dos Partitions
Issue 2: Cannot delete Read-only files from any DOS Partitions
Delay:
None:
Dir (ls):
Issue 1: Will not report available space on the DOS partition
Issue 2: When NDS authentication is used, free volume space
is not reported on remote servers because of a CLIB bug
Echo:
None:
Mkdir (md):
None:
Move (mv):
Issue 1: See issues for Copy.
Issue 2: Will not work when moving from 3.x DOS Partition
Issue 3: Cyclical moving is not prevented - use care when using wildcards
that may include the directory you are moving files into.
Purge:
None:
Rmdir (rd):
Issue 1: Will not remove directories that are not empty
Shutdown:
Issue 1: Restart option will not work on 3.x
Startup:
None:
Toolbox:
None:
Tools:
None:
Type (cat):
None:
________________________________________
VII. FREQUENTLY ASKED QUESTIONS
________________________________________
Q: Can I run Toolbox commands in an NCF file?
A: Yes, as long as you load TOOLBOX.NLM before executing the NCF file.
If you try to load TOOLBOX.NLM in the same NCF file as toolbox
commands, all commands will fail because TOOLBOX.NLM is still loading
and has not yet registered the commands.
We recommend that TOOLBOX.NLM be loaded in AUTOEXEC.NCF.
Loading TOOLBOX in AUTOEXEC.NCF is a problem on 3.12 servers however.
Some have reported that if they are loading many things in the
AUTOEXEC, they can load toolbox at the end and make it work, but
it's a gamble. This issue is being investigated.
Do not run commands in a NCF file that require keyboard input
such as Dir or Type. (As if you wanted to anyway!)
Q: Why is my console command frozen when I run any toolbox command?
A: All toolbox commands are single threaded and attached to the console
prompt. This was done to guarantee execution order when toolbox
commands were executed from NCF files. The prompt returns when
the command has finished execution.
Q: When I get help on a command, or use the Type command, my console
prompt will not come back?
A: The prompt will return when you close the Help or Type screen that
is displaying output from the command.
Q: My 3.12 server Abends in the AES Sleep Process, or with an
Invalid Resource Tag.
A: Update to the latest 3.12 CLIB libraries (LIB312.EXE)
Q: I'm running on a 4.x server and I'm trying to authenticate to
a 3.x server, but it says NWDSAuthenticate error 251.
I'm using the right username and password for my 3.x server.
A: The problem is that the username and password you are using
is also valid for NDS. But when NDS attempts to authenticate
you to the 3.x server, it cannot do it.
You need to specify the /b switch on the command you are
executing to force the authenticator to use Bindery
authentication instead of NDS authentication.
Q: How do I specify my NDS Username? What is my current context?
A: Specify the entire distinguished name if you are having
authentication problems. The authenticator's context is [Root].
For example, if my user object Bryan, were in:
OU=acctg.O=novell
I would specify my username as:
.bryan.acctg.novell
Note the leading "." which is specifying an absolute path
regardless of the current context.
Q: Why do I get the errors: File not Found, or Cannot create
the destination file, when the files are really there?
A: You will get these errors if you don't have the proper rights.
Toolbox utilities do not check rights before it attempts
to carry out your request, so it will return errors like
those mentioned above.
Q: Why doesn't Chdir allow just "cd"?
A: It interferes with the "cd" command used by the cdrom nlm.
So what if you don't use the cdrom nlm? Sorry, to avoid
confusion it was decided to leave the command "cd" alone.
If you don't have the cdrom.nlm loaded and you are on 4.11,
you can use the ALIAS command to equate cd to chdir as follows:
alias cd chdir
Q: When I access the floppy drive on 3.x, the light won't turn off.
A: This is a CLIB problem on 3.x. To turn the light off after
you are done accessing the floppy drive, at the console type
the following:
A:
The command processor will report an Unknown Command but the light
will turn off.
Novell Product and Version:
NetWare 3.11
NetWare 3.12
NetWare 4.1
NetWare 4.11
intraNetWare 4.11
|