BSD 3 development
[unix-history] / usr / doc / berknet / netintro.n
CommitLineData
c00b12d3
ES
1.ds X X
2.ds Y Y
3.ds Z Z
4.TL
5An Introduction to the Berkeley Network
6.AU
7Eric Schmidt
8.AI
9Computer Science Division
10Department of Electrical Engineering and Computer Science
11University of California, Berkeley
12Berkeley, California 94720
13.AB
14This document describes the use of a network
15between a number of
16.UX
17machines on the Berkeley campus.
18This network can execute commands on other machines,
19including file transfers, sending and receiving mail,
20remote printing, and shell-scripts.
21.PP
22The network operates in a batch-request mode.
23Network requests are queued up at the source and sent in shortest-first
24order to the destination machine.
25To do this, the requests are forwarded through a network
26of inter-connected machines until they arrive at their destination
27where they are executed.
28The time this requires depends on system load, inter-machine transfer speed,
29and quantity of data being sent.
30.PP
31The network enforces normal
32.UX
33security and
34demands a remote account with a password for most commands.
35Information can be returned to the user in files, for later
36processing, or on the terminal for immediate viewing.
37.AE
38.SH
39Introduction
40.PP
41A network between a number of
42.UX
43machines
44on the Berkeley campus has been implemented.
45This document is a brief introduction to the use of this network.
46Information which is specific to the local network has been
47gathered into Appendix A.
48The new user should read both this introduction and Appendix A in order
49to learn to use the network effectively.
50.PP
51This document is subdivided into the following sections:
52.ds c Copying Files over the Network
53.ds d Listing Requests in the Network Queue
54.ds e Removing Requests from the Network Queue
55.ds f Sending Mail over the Network
56.ds g Reading Mail over the Network
57.ds h Using the Lineprinter over the Network
58.DS
59Use of the Network
60 1) \*c
61 2) \*d
62 3) \*e
63 4) \*f
64 5) \*g
65 6) \*h
66 7) Net Prototype Command
67Setting Up Defaults
68Appendix A: The Network at Berkeley
69Appendix B: Getting Started \(em An Example
70.DE
71.PP
72This manual is written in terms of three mythical machines,
73named \*X, \*Y, and \*Z.
74Specific names at Berkeley are in Appendix A,
75along with more local information.
76.SH
77Use of the Network
78.PP
79The network provides facilities for issuing a command on one
80machine (the
81.I local
82machine) which is to be executed on another (the
83.I remote
84machine).
85Network commands are available to transfer files from one machine
86to another, to send mail to a user on a remote machine,
87to retrieve one's mail from a remote account,
88or to print a file on a remote lineprinter.
89These commands are described below, as is the more general
90.I net
91command which allows users to specify the name of some command
92or shell script to be executed on a remote machine.
93Network requests are queued on the local machine and sent to the remote
94machine, forwarded through intermediate machines if necessary.
95.PP
96Most of the network commands require that you have an account on
97the remote machine.
98If a remote account is not needed for a particular command,
99it will be noted in the following discussion.
100The first example introduces procedures and responses which are applicable
101to all network commands.
102.sp 1.5
103.NH
104\*c
105.PP
106Suppose that you have accounts on both the \*X and \*Y machines and that you are
107presently logged into the \*X machine.
108If you want to copy a file named `file1' from your current
109directory on machine \*X to machine \*Y (the
110.I remote
111machine), use the command:
112.DS
113% netcp file1 \*Y:file1
114.DE
115The net will make a copy of `file1' in your login directory
116on the \*Y machine.
117(The `\*Y:' will not be part of the filename on the \*Y machine.)
118In order to verify your permission to write into the \*Y account, the
119.I netcp
120command will prompt you with:
121.DS
122Name (your-name):
123.DE
124You should respond with your login name on the Y machine,
125followed by a carriage-return.
126If you have the same login name on both machines, just type a carriage-return.
127Next a password will be requested:
128.DS
129Password (remote-name):
130.DE
131Now type in your password followed by a carriage-return.
132The
133.I netcp
134command will make a copy of your `file1' in a queue destined
135for the \*Y machine, and will then return you to the shell.
136.PP
137Likewise if you wanted to transfer a file named `scan.p' from \*Y to \*X,
138.DS
139% netcp \*Y:scan.p scan.p
140.DE
141would place that file in your current directory on \*X.
142.PP
143The network will ``write'' you when it has executed
144your request (if you are still logged in),
145or will ``mail'' you a message (if you are not).
146You may use the
147.I mesg
148(I) command to disallow the interruption and thus force mail to be sent.
149A typical message might look like this:
150.DS
151Message from your-name on \*Y Machine
152(command: netcp file1 \*Y:file1, sent April 1 18:03, took 10 min 3 sec)
153-------
154.DE
155The message includes the time you sent the command on machine \*X.
156.PP
157The network response will tell you if it was unable to execute the
158remote command successfully by returning an error message some time later.
159If, for example, you type the wrong password, you will get the response
160.DS
161Message from your-name on \*Y Machine
162Error: Cmd: netcp file1 \*Y:file1 Message: bad login/password your-name
163------
164.DE
165.PP
166The
167.I netcp
168command is actually a generalization of the
169.UX
170.I cp
171command, similar to
172.I uucp\fP\(dg.
173.FS
174\(dg See the
175.UX
176Programmers Manual (Version 7 only).
177.FE
178Its syntax is:
179.DS
180\fBnetcp\fR [\fB\-l\fI login\fR] [\fB\-p\fI password\fR] [\fB\-n\fR] [\fB\-f\fR] \fIfromfile tofile\fR
181.DE
182where
183.I fromfile
184and
185.I tofile
186can be local or remote files
187(if both are remote, they must be on the same machine).
188A filename which is not a full pathname
189is either from the current directory on the local machine
190or your login directory on the remote machine.
191The
192.B
193\-l
194.R
195and
196.B
197\-p
198.R
199options may be used to specify your remote login name and password
200on the command line.
201If the password contains shell meta-characters, it must be in quotes.
202(These options are useful in shell scripts,
203but be sure to make the shell script readable only
204by yourself if you've got passwords in it!)
205The
206.B
207\-n
208.R
209option prevents any confirmation or error messages from being returned.
210The
211.B
212\-f
213.R
214option forces prompting for a remote user name and password,
215even if they are set by other options or are in the ``.netrc'' file
216(see ``Setting Defaults'' below).
217.PP
218Transferred files may or may not have the correct file protection mode;
219use the
220.I chmod
221(I) command to reset it.
222When files are to be brought from a remote machine,
223they are created zero-length at the time the command is issued;
224when they arrive, they assume their true length.
225.LP
226Examples:
227.RS
228.TS
229l l.
230% netcp\ \ file1\ \ \*Y:file1 copy `file1' from the current directory to \*Y
231% netcp\ \ \*Y:file1\ \ file1 copy `file1' from \*Y to the current directory
232% netcp\ \ \*Z:file1\ \ \*Z:file2 \fIcp\fP command on remote machine
233% netcp\ \ \*X:lex.c\ \ \*Y:lex.c copy from \*X to \*Y (one of \*X or \*Y must be local)
234% netcp\ \ \*Y:subdir/file1\ \ file1 copy from a sub-directory
235% netcp\ \ file1\ \ file2 an error\(em use the \fIcp\fP command
236.TE
237.RE
238.sp 1.5
239.NH
240\*d
241.PP
242To see where your command is in the queue, type
243.DS
244% netq
245.DE
246A typical output of which looks like:
247.DS L
248.cs R 23
249 LocalName(Remote) Mach Length Code Time Command
250yourname(yourname) \*Y 100 b99999 Mar 23 18:05 netcp file1 \*Y:file1
251.cs R
252.DE
253The format is similar to that of the
254.I lpq
255command.
256The files are sent one at a time, in the order listed.
257If
258.I netq
259tells you the queue is empty, your request has been sent already.
260The queues for different destinations are totally separate.
261.DS
262% netq \*Y
263.DE
264will list just the queue destined for the \*Y machine.
265.I Netq
266summarizes requests from other users.
267The command
268.DS
269% netq \-a
270.DE
271will print the requests from all users.
272.sp 1.5
273.NH
274\*e
275.PP
276If you want to cancel your net request, and ``b99999''
277(see the
278.I netq
279example above) is your ``Code,'' use the command
280.DS
281% netrm b99999
282.DE
283which will remove the request (if it hasn't already been sent).
284Furthermore,
285.DS
286% netrm \-
287.DE
288will remove all your net requests in the queues on the local machine
289(you must have made the request in order to remove it).
290.sp 1.5
291.NH
292\*f
293.PP
294To send mail to remote machines, use the
295.I mail
296command with the remote account prefixed by the destination machine's
297name and a `:'.
298``\*Y:schmidt'', for example, refers to an account ``schmidt'' on the \*Y machine.
299The full sequence is illustrated below:
300.DS
301% mail \*Y:schmidt
302\ \ \ \ {your message to user ``schmidt'' }
303{control-d}
304.DE
305This will send to user ``schmidt'' on the \*Y machine the text you type in.
306As with intra-machine mail, the message is terminated by a control-d.
307.PP
308You do not need an account on a remote machine to send mail to a user there.
309.ne 9v
310.sp 1.5
311.NH
312\*g
313.PP
314It is also possible to read your mail on remote machines.
315From the \*X machine, the command
316.DS
317% netmail \*Y
318.DE
319copies your mail on the \*Y machine to a file ``mbox.\*Y''
320in your login directory on the \*X machine.
321The previous contents of ``mbox.\*Y'' are lost.
322Readmail has
323\fB\-l\fP, \fB\-p\fP, \fB\-n\fP and \fB\-f\fP options just like
324.I netcp.
325If a machine is not specified, the default machine\(dg is used.
326.FS
327\(dg (see ``Setting Defaults'' below)
328.FE
329When you login on the remote machine, the mail will still be there,
330as if it was never read.
331.sp 1.5
332.NH
333\*h
334.PP
335Remote lineprinters can be used with the
336.I netlpr
337command:
338.DS
339\fBnetlpr\fR [\fB\-m\fI machine\fR] \fIfile1 file2 ... filen\fR
340.DE
341which sends the files its arguments represent to the lineprinter on
342.I machine.
343It will prompt you for an account and password.
344The \fB\-l\fR, \fB\-p\fR, \fB\-n\fR and \fB\-f\fR options may be supplied,
345as in the
346.I netcp
347command.
348Copies of the files are not made in the remote account.
349.sp 1.5
350.NH
351Net Prototype Command
352.PP
353The above commands all use one more general command\(emthe
354.I net
355command which has the following form:
356.DS
357.ds a \fR[\fP
358.ds b \fR]\fP
359\fBnet \*a\-m\fI machine\*b \*a\fB\-l\fI login\*b \*a\fB\-p\fI password\*b \*a\fB\-r\fI file\*b \*a\fB\-\*b \*a\-n\*b \*a\-f\*b\fI command\fR
360.DE
361.I Net
362sends the given command to a remote machine.
363The machine may be specified either with the
364.B
365\-m
366.R
367option or in the ``.netrc'' file
368(for the specific names, see Appendix A).
369If not specified, a default is used.
370\fB\-l\fP, \fB\-p\fP, \fB\-n\fP and \fB\-f\fP are as explained above for the
371.I netcp
372command.
373The \fB\-r\fP option indicates the local
374.I file
375which will receive the output (the standard output and standard error files) of
376.I command
377when it is executed on the remote machine.
378By default this output is written or mailed to you.
379Thus, for example, to find out who is on the \*Y machine when you are
380logged in on the \*X machine,
381execute the following command:
382.DS
383% net \-m \*Y "who"
384.DE
385which will run the
386.I who
387command on the \*Y machine;
388the response will be written or mailed to you.
389Similarly,
390.DS
391% net \-m \*Y \-r resp "who"
392.DE
393will take the output (result)
394and return it to you in file `resp' on the local machine.
395If instead you want the result of the
396.I who
397command to remain on the \*Y machine the command
398.DS
399% net \-m \*Y "who >resp"
400.DE
401will create a file `resp' in your login directory on the \*Y machine.
402It is a good idea to put the command in quotes, and it
403.I must
404be in quotes if I/O redirection (<, >, etc.) is used.
405.PP
406If you do not specify the remote machine explicitly (or in the ``.netrc''
407file, explained below), the default machine will be used (see Appendix A).
408.PP
409The
410.B
411\-
412.R
413option indicates that standard input from the
414local machine is to be supplied to the command executing remotely
415as standard input, thus if defaults for the login name and password
416are set up correctly as described below,
417.DS
418% net \-m \*Y \- "mail ripper"
419\ \ \ \ { message to ripper }
420{control-d}
421.DE
422is equivalent to
423.DS
424% mail \*Y:ripper
425\ \ \ \ { message to ripper }
426{control-d}
427.DE
428.PP
429The net command also has other options not documented here.
430See the
431.UX
432Programmer's Manual sections for more details.
433.SH
434Setting Defaults
435.PP
436Instead of repeatedly typing frequently-needed options
437for every invocation of the various network commands, the user may supply
438in his login directory a file ``.netrc'', which contains the repeated
439information.
440The ``.netrc'' file is typically used to specify login names
441on remote machines, as well as other options.
442An example of such a file is given below:
443.DS
444default \*Y
445machine \*Y, login dracula
446machine \*Z login dracula
447.DE
448.LP
449This example sets the default machine to \*Y
450so that for net commands where a remote machine is not explicitly specified
451the command will the executed on the \*Y machine.
452The second and third lines indicate
453for the \*Y and \*Z machines a login name of ``dracula''
454should be used to network commands.
455The complete list of options that may follow the machine indication is:
456.sp 1
457.TS
458center box;
459cB s s s
460l l l l.
461 .netrc options for each machine
462Option Parameter Default Comment
463_
464\fBlogin\fP name localname login name for remote machine
465\fBpassword\fP password (none) password for remote login name
466\fBcommand\fP command (none) default command to be executed
467\fBwrite\fP yes/no yes if possible, write to user
468\fBforce\fP yes/no no always prompt for name and password
469.TE
470.sp 1
471.PP
472In setting up the ``.netrc'' file, if the ``default'' option is present,
473it must be the first line of the file.
474The information for each machine starts with the word
475``machine'' and the machine name and continues
476one or more lines up to another machine indication
477(or the end of the file).
478Input is free-format.
479Multiple spaces, tabs, newlines, and commas
480serve as separators between words.
481Double quotes (") must surround passwords with blanks or special
482characters in them.
483.PP
484If your ``.netrc'' file has a password in it, the file should be set
485mode 0600 with the
486.I chmod
487(I) command to prevent other people from reading it.
488The system managers do not recommend putting the passwords
489in the ``.netrc'' file
490or in shell-scripts with the \fB\-p\fP option (even with mode 0600)
491as an illicit super-user could read your ``.netrc'' file
492and gain direct access to all your remote accounts.
493If you put a remote password in a file, you must be prepared to change
494.I ALL
495your passwords if a security breach occurs on any net machine.
496Instead of placing passwords in files,
497if you are using a shell which allows shell variables,
498you may define a variable to be your password and use the
499.B
500\-p
501.R
502option at the command level.
503.SH
504Log File
505.PP
506The file ``/usr/net/logfile'' has a trace of the most recent
507requests and responses, each line of which is dated.
508Lines indicating ``send'' show the file name sent;
509lines indicating ``rcv'' show commands executed on the local machine (C: ),
510their return code (R: ), and their originator.
511For example, on the \*Y machine, the logfile:
512.DS
513.cs R 23
514Feb 28 10:29: rcv \*X: neil (neil) R: 0 C: netcp design \*Y:design
515Feb 28 10:43: sent to \*Z: tuck (z00466, 136 bytes, wait 2 min 3 sec)
516Feb 28 11:05: rcv \*X: bill (bill) R: 0 C: netcp structures \*Y:structures
517.cs R
518.DE
519shows three entries.
520In this example, there are two
521.I netcp
522commands sending files from the \*X machine to \*Y, each from a different user.
523The single command sent was originated here by ``tuck'' and is 136 bytes long;
524the command that was sent is not listed.
525The command
526.DS
527% netlog
528.DE
529will print the last few lines of this file.
530Its prototype is
531.DS
532\fBnetlog \-\fInum\fR
533.DE
534where
535.I num
536is an integer will print the last
537.I num
538lines from the file.
539.SH
540Acknowledgements
541.PP
542Special thanks go to
543Bob Fabry, Bill Joy, Vance Vaughan, Ed Gould, Robyn Allsman,
544Bob Kridle, Jeff Schriebman and Ricki Blau of Berkeley,
545and Dave Boggs of X\s-2EROX\s0 P\s-2ARC\s0
546for their help in making this network possible.
547.bp
548.ce
549.I "Appendix A"
550.sp 2
551.ce
552The Network at Berkeley
553.sp 2
554.NH 0
555The Configuration (May 1, 1979)
556.sp
557.R
558.TS
559center box;
560cB s s s
561l l l l l.
562 The Current State of the Berkeley \s-2UNIX\s0 Network
563Machine Internal Connected Baud Default
564Name Name To Rate Machine
565_
566A A C 1200 C
567C C A, D, E, Cory 1200 A
568D D C, SRC 1200 C
569E E C 1200 C
570SRC S D 1200 D
571VAX V Cory 1200 Cory
572Cory Y C, VAX 1200 VAX
573.TE
574.de bo \" a few box macros
575.sp -1
576\L'\\$1v'\
577\l'\\$2n\(ul'\
578\L'-\\$1v'\
579\l'-\\$2n\(ul'
580..
581.de zt \"generate up to 4 lines of centered text.
582.ll \\$2n+\\n(.iu \"$2 is width of field in n's
583.sp \\$1 \"$3,$4,$5,$6 are text lines
584.ce 4 \"$1 is prespace amount in V's
585\\$3
586\\$4
587\\$5
588\\$6
589.ce 0
590.ll
591.sp -4-\\$1
592..
593.KS
594.LP
595.nf
596.sp
597.nr v 4 \" vertical dimesion of box (in v's)
598.nr h 14 \" horizontal dimenstion of box (in n's)
599.in (\n(.lu/2u)-10n
600.bo \nv \nh
601.zt 1.5 \nh A
602.in +7n
603.in -\w'|'u/2u
604.sp +3v
605\L'4v'
606.sp +4v
607.in +\w'|'u/2u
608.in -35n
609.bo \nv \nh
610.zt 1.5 \nh Cory
611.in +14n
612.sp +1
613\l'14n\(ul'
614.in +14n
615.sp -2
616.bo \nv \nh
617.zt 1.5 \nh C
618.in +14n
619.sp +1
620\l'14n\(ul'
621.in +14n
622.sp -2v
623.bo \nv \nh
624.zt 1.5 \nh D
625.in -56n \" back to start on left, draw boxes
626.sp +8v
627.bo \nv \nh
628.zt 1.5 \nh VAX
629.in +28n
630.bo \nv \nh
631.zt 1.5 \nh E
632.in +28n
633.bo \nv \nh
634.zt 1.5 \nh SRC
635.sp -8v
636.in -56n \" back to start on left, draw vert lines
637.in +7n \" next vert Cory-VAX
638.in -\w'|'u/2u
639.sp +3
640\L'4v'
641.sp +4
642.in +\w'|'u/2u
643.in -7n
644.sp -8v
645.in +28n \" next vert C-E
646.in +7n
647.in -\w'|'u/2u
648.sp +3
649\L'4v'
650.sp +4
651.in +\w'|'u/2u
652.in -7n
653.sp -8v
654.in +28n \" next vert C-SRC
655.in +7n
656.in -\w'|'u/2u
657.sp +3
658\L'4v'
659.sp +4
660.in +\w'|'u/2u
661.sp 5
662.in 0
663.fi
664.KE
665.LP
666If a path exists from the local machine to the requested remote
667machine, the network will forward the request to the correct machine.
668Thus Cory users may communicate with A, D, E, and SRC,
669as well as C and VAX (with a degradation in speed
670because of the intermediate machine).
671.NH
672Documentation
673.PP
674The network commands
675.I
676(net, netq, netrm, netlog, netcp, netmail, netlpr)
677.R
678are all documented in the
679.UX
680Programmers Manual under UCB on the VAX,
681and in Section VI on the Cory and Computer Center machines.
682For example,
683.DS L
684 % man ucb netq {on VAX}
685or
686 % man 6 netq {on Cory and CC machines}
687.DE
688will print the
689.I netq
690manual section.
691.PP
692There are two more documents available:
693.DS
694Network System Manual
695System Description \- Berkeley Net
696.DE
697The Manual is intended for the systems staff who will maintain the network.
698The Description details
699the history of the project, discusses the design, and lists future plans.
700.PP
701There is an up-to-date news file:
702.DS L
703 % news net {on Cory and VAX machines}
704or
705 % help net {on CC machines}
706.DE
707which prints news about the network, dated and with the most recent news first.
708.PP
709The
710.UX
711Programmer's Manual, section I, has information on the
712.I
713chmod, cp, mail, mesg, who,
714.R
715and
716.I write
717commands mentioned in the text.
718Also, the
719.I help
720command has information about file protections:
721.DS L
722 % news access {on the Cory machine}
723or
724 % help permissions {on the CC machines}
725.DE
726.NH
727Features at Berkeley
728.IP a)
729There is a built-in character limit
730of 100,000 characters per single transmission, which cannot be overridden.
731Longer files must be split into smaller ones in order to be sent.
732.IP b)
733The 1200 Baud links (over which the network sends requests) seldom transmit
734any faster than 50 characters per second,
735and can slow to a fraction of that in peak system loading periods.
736This is due to an expansion of
737the data packets to accomodate a seven-bit data path,
738wakeup time on the machines, and the packet sent in acknowledgement.
739Heavy file transfer is faster by magnetic tape.
740.IP c)
741On the VAX the net commands are all in `/usr/ucb'.
742Your search path on the VAX should be set to include the directory `/usr/ucb';
743otherwise you will have to prefix all net commands by `/usr/ucb',
744as in `/usr/ucb/netcp'.
745.IP d)
746Limited Free Commands
747.RS
748.PP
749Users who do not have accounts on remote machines may still execute
750certain commands by giving a remote login name of ``network'',
751and no remote password.
752The commands currently allowed are:
753.KS
754.TS
755l l l l.
756finger ps rcslog who
757lpq pstat trq whom
758netlog rcs w write
759netq rcsq where yank
760.TE
761.KE
762.LP
763Also,
764.I mail
765to remote machines and
766.I netlpr
767between Computer Center machines do not require a remote account.
768.RE
769.IP e)
770Instead of placing passwords in ``.netrc'' files, it is possible
771to use the ``alias'' feature of the C shell (/bin/csh)
772to specify a login name and password to the net commands, with
773almost no execution speed penalty.
774For example, the command
775.DS
776% alias netcp netcp -l godzilla -p passwd
777.DE
778will instruct the C shell to insert the specified login name
779and password in the
780.I netcp
781command automatically.
782.IP f)
783If no machine name specification is in the front of a full path name,
784the first four characters are checked and the machine
785is inferred from that if possible.
786In the command
787.DS
788netcp file1 /ca/schmidt/file1
789.DE
790the second file name is equivalent to ``C:file1'', if you are ``schmidt''
791on the C machine.
792.IP g)
793The network can only send files in one direction at a time.
794Thus confirmations can slow down heavy file transfer.
795If you regularly use a shell script to transfer a set of files, the
796.B
797\-n
798.R
799option to
800.I netcp
801will improve transfer time.
802.IP h)
803There is a file ``VAX:/usr/net/net.users'' of users who
804will get mail specifically about the network.
805If you would like to be on it, send mail to ``VAX:schmidt''.
806.IP i)
807The network creates a heavy load on the system and thus is expensive to
808run. If general user throughput is adversely affected, a charge will be
809implemented on the Computer Center machines.
810.IP j)
811When transferring files, quota overflow will result in a partial copy,
812so you should check the space requirements of the file being sent.
813.NH
814Bugs in systems at Berkeley (As of May 1, 1979)
815.IP a)
816On the Computer Center machines,
817if the ``mail'' command prints an error message such as ``Can't send to ...'',
818try using the ``sendmail'' command in place of ``mail'' with the
819same arguments.
820.IP b)
821If you are on the Computer Center machines
822using obsolete shells (/usr/pascal/sh, /usr/pascal/nsh)
823and have a ``.profile'' or ``.shrc'' file to change your
824shell prompt, you must make sure that you don't turn on ``prompting''
825for non-interactive shells.
826This will interfere with
827.I netcp.
828You should use this shell command to change your prompt:
829.DS
830${prompt?prompt=P}
831.DE
832where ``P'' is the prompt desired.
833This will avoid the problem.
834.IP c)
835On the Computer Center machines, you may not
836.I netrm
837net queue files created by
838.I netlpr
839or the remote versions of
840.I troff
841and
842.I trrm.
843.IP d)
844The file mode should be preserved by
845.I netcp.
846.IP e)
847The
848.B
849\-n
850.R
851option to
852.I
853netcp, netmail, netlpr
854.R
855and
856.I net
857should not prevent error messages from being returned.
858Also,
859.I mail
860(1) should accept the
861.B
862\-n
863.R
864option.
865.IP f)
866Comments and bug discoveries are encouraged and can be sent by
867local or remote mail to ``schmidt'' on the VAX machine.
868.bp
869.ce
870.I "Appendix B"
871.sp 2
872.ce
873Getting Started \(em An Example
874.sp
875.LP
876The best way to start out is to follow this example.
877Suppose you're a Cory user, and you have accounts on the A and VAX machines.
878.IP 1)
879Add a file ``.netrc'' (mode 600) to your login directory, as in
880the following example:
881.DS L
882default VAX
883machine A login \fIyourNameOnA\fP
884machine VAX login \fIyourNameOnVax\fP
885.DE
886(If ``default'' occurs, it must be the first line of the file.)
887.IP 2)
888Make sure that
889.RS
890.IP a)
891if you are on the VAX, you have in your search path the directory `/usr/ucb'.
892Otherwise, on the VAX you will have to prefix all commands by `/usr/ucb/'
893(e.g. `/usr/ucb/netcp').
894.IP b)
895on the Computer Center machines, if you choose to set your shell prompt,
896you have done so correctly (details in Appendix A).
897.RE
898.IP 3)
899Then type
900.DS L
901% net w
902% netq
903.DE
904which will send a
905.I w
906command to the VAX;
907some undetermined time later you will
908have written (or mailed) to you the output from the command
909executed on the VAX machine.
910.IP
911The adventuresome may try:
912.DS L
913% net \-m A w
914.DE
915with the effect of being routed more slowly through an intermediate link in the
916net.