escott%deis.uci.edu@icsg.UCI.EDU (02/05/87)
Excuse me if this is obvious, but why is it that when there is no entry in
"/etc/ttys" for the terminal device you are logging in to, no record is made
of your login in "/etc/utmp"? I've looked at the (4.2BSD) sources and it
seems as though this is being done on purpose. I added a bunch of pty's
(ttyq*) to my (DYNIX 2.1 [really 4.2BSD]) system without remembering to put
them in "/etc/ttys", and every time somebody logged in to a ttyq* they were
invisible from programs like "u", "w", and "last"! Seems funny...
+-------------------------------------------------------------------------+
Scott Menter UCI ICS Computing Support Group Univ. of Calif. at Irvine
(714) 856 7552 Irvine, California 92717
Internet: escott@ics.uci.edu UUCP: ...!ucbvax!ucivax!escott
Bitnet: escott@uci CSNet: escott%ics.uci.edu@csnet-relay
Internet (with Name Server): TBA
+-------------------------------------------------------------------------+chris@mimsy.UUCP (02/05/87)
In article <4250@brl-adm.ARPA> escott%deis.uci.edu@icsg.UCI.EDU (Scott Menter) writes: >Excuse me if this is obvious, but why is it that when there is no entry in >"/etc/ttys" for the terminal device you are logging in to, no record is made >of your login in "/etc/utmp"? login and init must agree on which entry to write. They do this by using ttyslot() to compute an offset. ttyslot() returns (essentially) the line number of the line in /etc/ttys containing that tty name, or an error value if no slot is found. Incidentally, this means that if you insert a line in /etc/ttys, utmp will be scrambled. It is therefore best to do this only in single user mode. Appending new entries, however, is safe. -- In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7690) UUCP: seismo!mimsy!chris ARPA/CSNet: chris@mimsy.umd.edu
guy@gorodish.UUCP (02/06/87)
>Excuse me if this is obvious, but why is it that when there is no entry in >"/etc/ttys" for the terminal device you are logging in to, no record is made >of your login in "/etc/utmp"? Because without an entry in "/etc/ttys", it has no way of knowing where the record should be made. Each tty port is assumed to have an entry in "/etc/utmp" at a fixed location; that location is defined by the position of that port's entry in "/etc/ttys". No entry in "/etc/ttys", no location, and hence no entry.