Each host in the virtual machine must have an entry in the host
file.
Lines beginning with a splat ( # ), optionally preceded by whitespace,
are ignored.
A simple host file might look like:
# my first host file
thud
fred
wilma
barney
betty
This specifies the names of five hosts to be configured in the virtual machine.
The master pvmd for a group is started by hand on the localhost,
and it starts slaves on each of the remaining hosts
using the rsh or rexec command.
The master host may appear on any line of the host file.
Host names cannot be numeric (IP) addresses,
because they are passed to rsh and rexec(),
which usually don't accept addresses.
The simple format above works fine if you have the same login name
on all five machines and the name of the master host in your .rhosts
files on the other four.
There are several host file options available:
lo=NAME
Specifies an alternate login name (NAME) to use.
so=pw
This is necessary when the remote host cannot trust the master.
Causes the master pvmd to prompt for a password for the remote host
in the tty of the pvmd (note you can't start the master using the
console or background it when using this option) you will see:
Password (honk.cs.utk.edu:manchek):
you should type your password for the remote host. The startup
will then continue as normal.
dx=FILE
Specifies the path of the pvmd executable.
FILE may be a simple filename, an absolute pathname,
or a path relative to the user's home directory on the remote host.
This is mainly useful to aid in debugging new versions of PVM,
but may have other uses.
ep=PATH
Specifies a path for the pvmd to search for executable
program components when spawning a new process.
The path may have multiple elements, separated by colons ( : ).
wd=PATH
Specifies a working directory in which all spawned
tasks on this host will execute.
sp=VALUE
Specifies the relative computational speed of this host
compared to other hosts in the configuration.
VALUE is an integer in the range [1 - 1000000]
bx=PATH
Specifies the debugger program path.
Note: the environment variable PVM_DEBUGGER can also be set.
ip=NAME
Specifies an alternate IP address to use for the host.
As with host names (when ip= is not used),
the address must be a host name, not a numeric address, because it is passed
to rsh and rexec().
This option allows one to pick a specific network interface for a machine
without using the interface's name.
It can also be used to create a virtual machine using symbolic (instead of actual)
host names.
so=ms
Rarely used.
Causes the master pvmd to request user to manually
perform the startup of a pvmd on a slave host when rsh and rexec
network services are disabled but IP connectivity exists.
See section "MANUAL STARTUP".
A dollar sign ( $ ) in an option introduces a variable name,
for example $PVM_ARCH.
Names are expanded from environment variables by each pvmd.
Each of the flags above has a default value. These are:
lo
The loginname on the master host.
so
dx
$PVM_ROOT/lib/pvmd (or environment variable PVM_DPATH)
ep
$HOME/pvm3/bin/$PVM_ARCH:$PVM_ROOT/bin/$PVM_ARCH
wd
sp
bx
You can change these by adding a line with a star ( * ) in the
first field followed by the options, for example:
* lo=afriend so=pw
This sets new default values for 'lo' and 'so' for the remainder
of the host file, or until the next '*' line.
Options set on the last '*' line also apply to hosts added dynamically
using pvm_addhosts().
Host options can be set without starting the hosts automatically.
Information on host file lines beginning with '&' is stored,
but the hosts are not started until added using pvm_addhosts().
Example host file: