NIO CommKit Host Interface Installation and System Administration Manual
DK(1C) DK(1C)
E-5 CommKit Host Interface, Release 4.0
NAME
dk – remote login or command execution via host interface
SYNOPSIS
dk destination [ command [ args ... ] ]
destination [ command [ args ... ] ]
DESCRIPTION
If no command is specified, the dk command sends a remote login request to the destination host. The
destination host spawns a shell and the dk command logically connects it to the user’s terminal. An AT&T
data switch circuit is used to transfer data.
The remote shell bypasses the normal login sequence if you have been previously authorized access to the
destination machine, through the use of authorize(1M). Instructions on the authorization process are found
in the "Authorization" section.
The environment variables LOGNAME, HOME, and SHELL are initialized from /etc/passwd on the
destination. The PATH variable is initially set from the environment of the dkserver(1M) that accepts the
call and may be modified by the user’s profile. Other environment variables may be passed from the calling
host to the destination host by listing them in the local environment variable DKEXPORT (for example,
’DKEXPORT=TERM,LINES,COLUMNS’). The HOME directory is made the current directory.
The shell on the remote destination host is spawned with $0 set to ’–Dsh’ so that the files /etc/profile and
$HOME/.profile are executed before it prompts for any commands. The system accounting files are updated
by dkserver(1M) for the benefit of who(1) and system accounting.
To exit from the remote shell, enter the Control-D sequence (or exit). If the program on the remote destination
refuses to hang up, typing your QUIT character twice, rapidly, will break the connection from the calling end.
When invoked with a command argument to be remotely executed, dk causes a process to be spawned on the
specified remote destination host and executes the given command there.
The actions taken are as previously described for remote login, except that the profiles are executed with $0
set to –Xsh, no login accounting is done, and the program terminates after executing the single command.
dk may appear in a pipeline. Any use of standard input, standard output, or standard error on the remote
destination is mapped into the same file descriptor locally. In particular, if standard output of the dk command
is redirected, error messages will still be written to the terminal.
Linking the dk program to the names of popular hosts allows you to invoke the same commands by their
destination names without using ’dk’.
dk uses the file /etc/opt/dk/dkhosts [see dkhosts(4)] to map the destination name to the appropriate data switch
dialstring and to select the service to be invoked on that host. If the destination name contains no ’.’ or is not
listed in dkhosts(4), dk will assume the ’rl’ or ’rx’ service for remote login or execution, respectively. To call
hosts that don’t support these services, or to call devices such as dialers in a modem pool, use the dkcu(1C)
command. This could be done automatically by dk with the proper listing of options in dkhosts(4).
Authorization
In order to most effectively use this command, the user should be authorized on all hosts that will be used.
This authorization process is accomplished using the command
dk destination.authorize
The remote destination will prompt the user for a login and passwd that are found in /etc/passwd on the
remote host. If the user answers correctly, the authorization service [see authorize(1M)] makes an entry in a
translation file [see dkuidtab(4)] on the destination host that maps the originating host and user ID to a user
ID on the remote host. Once the entry is made in dkuidtab(4), subsequent remote execution/login will bypass
the login procedure on the remote destination.