SUMMARY : TALK PROBLEM

From: Kostas Marneris-NOC (kmar@leon.nrcps.ariadne-t.gr)
Date: Wed May 20 1992 - 13:39:21 CDT


Hello Sun-managers,
I summarize now the answers about TALK-PROBLEM.

Here is my original posting on 13/5/92:

----- Begin Included Message -----

Hi all,
This might be a FAQ and if so , my apologies.
When a user talk to another this message is displayd :

"Who are you? You have no entry in /etc/utmp! Aborting... "

but the file /etc/utmp exists !!

I will apreciate any help
Thanks in advance.

Kostas Marneris (kmar@leon.nrcps.ariadne-t.gr)

----- End Included Message -----

Later on 18/5/92 I wrote the following mail :

----- Begin Included Message -----

I don't summarize the answers now because I have more information
for my system.
   * It's a SUN 4/330 with SUNOS 4.1.1.
   * The file /etc/utmp exists with permissions 666
     (-rw-rw-rw- 1 root 1548 May 14 17:44 /etc/utmp)
     ls -lsgF /etc/utmp
       2 -rw-rw-rw- 1 root staff 1332 May 18 12:36 /etc/utmp

   * Command 'who' that uses /etc/utmp works!
   * Command 'who am i' that uses /etc/utmp works!

Most of the people who answered assumed that I use XTERMS or OpenWindows.
I am not using XWINDOWS or OpenWindows but 'Sunview'.
But the problem still exists even I login to this machine from a dial-in port
or from the network.

More specifically :
1/ host!root# talk user
   The message "

  Message from Talk_Daemon@leon at 18:12 ...
  talk: connection requested by root@leon.nrcps.ariadne-t.gr.
  talk: respond with: talk root@leon.nrcps.ariadne-t.gr

  is displayed on user's terminal.

BUT
2/ host!user% talk root
   The message "Who are you? You have no entry in /etc/utmp! Aborting..."
   is displayed on user's terminal

   The same message is displayed when the user 'talk' to a non-existent user

i.e.
####################################################################
 - I logged in using 'telnet localhost'
 - Typing the following commands :

leon% tty
/dev/ttyp2
leon% who am i
leon!kmar ttyp2 May 18 12:42 (localhost)

leon% talk root
Who are you? You have no entry in /etc/utmp! Aborting...

leon% ls -lsgF /dev/ttyp2
0 crw--w---- 1 kmar tty 20, 2 May 18 12:46 /dev/ttyp2

#######################################################################

----- End Included Message -----

SOLUTION:
---------
You don't beleive it , so am I !!
THE PROBLEM DISAPPEARED BY ITSELF !!!

I did not make any change to the file /etc/utmp !!!

ANYWAY here are the answers I received most of them
assumed that I use Xwindows or OpenWindows but they are valuable enough.

##########################################################################
##########################################################################
====================================================
***1/ MEYSTMA@duvm.bitnet
====================================================
Greetings,

>When a user talk to another this message is displayd :
>
>"Who are you? You have no entry in /etc/utmp] Aborting... "
>
>but the file /etc/utmp exists ]]

I would think that the utmp always exists, or at least exists if someone
is logged in to your system. The utmp (man utmp...) file records information
about who is currently using the system. I think certain programs generate
processes that can spawn shells that do not register with utmp. This may or
may not be a bug. Also, one-line rsh commands do not register with utmp.
Under what circumstances are you getting this message? From a regular shell?

Do you have any more qualified answers? I would like to know them - can you
mail me a copy?

Thank you,

Mike

=====================================================
***2/ kkinners@ios.bc.ca
=====================================================

Could you please summarize to me. I had the problem awhile back but it
disppeared by itself.
Kerry

=====================================================
***3/ geertj@ica.philips.nl
=====================================================

This might happen if /etc/utmp is mode 644 AND you're using a windowing
system using non-suid terminal programs (suntools).
Your best chance is to make it 666, re-login, and don't believe utmp
for security purposes anymore. That's life.

Geert Jan-

====================================================
***4/ corbet@stout.atd.ucar.EDU
====================================================

Usually such problems are caused by running under an xterm with the "-ut"
flag set. This causes that particular session not to appear in utmp, and
this sort of problem to arise.

Jonathan Corbet
National Center for Atmospheric Research, Atmospheric Technology Division
corbet@stout.atd.ucar.edu

====================================================
***5/ kevinmac@ll.mit.edu
====================================================

If you are using xterms add the following to your Xdefaults or
$XAPPLRESDIR/XTerm:

XTerm*utmpInhibit: off

or

run xterm with +ut
 
Kevin McElearney
-----------------------------------------------------------------------------
MIT Lincoln Laboratory Phone: (617) 981-3556
244 Wood Street
Lexington, MA 02173-9108 EMail: kevinmac@ll.mit.edu

=========================================================
***6/ higgins@math.niu.edu
=========================================================

Assumption #1. You're running X.

Inference: You don't have +ut on your xterm startup line.

 -Gregory Higgins, Systems Manager, math.niu.edu

=========================================================
***7/ brendan@cs.widener.edu
=========================================================

You wrote:
> "Who are you? You have no entry in /etc/utmp! Aborting... "

It happens probably because you're using OpenWindows and have
/etc/utmp not world-writable (a good move in my humble opinion).
Normally it would write into /etc/utmp each tty that each window has;
if it's not writable, though, it won't and will make talk give that
message. (I forget the work-around for this, I only run OW on one
system here, and then only for a package that requires it.)

-- 
Brendan Kehoe, Sun Network Manager                      brendan@cs.widener.edu
Widener University                                                 Chester, PA
    In action-oriented shows, TV cops fire their guns in almost every episode;
       in Chicago, the average police officer fires a gun once every 27 years.

=========================================================== ***8/ seeger@thedon.cis.ufl.edu ===========================================================

| This might be a FAQ and if so , my apologies. | When a user talk to another this message is displayd : | | "Who are you? You have no entry in /etc/utmp! Aborting... " | but the file /etc/utmp exists !!

Sounds like the user is running sunview and the /etc/utmp has had world write privs removed. There is no really satisfactory thing to do about this that I have seen. If the user is running X or OW, the xterm may not be suid.

Best, Chuck -- Charles Seeger E301 CSE Building Office: +1 904 392 1508 CIS Department University of Florida Fax: +1 904 392 1220 seeger@ufl.edu Gainesville, FL 32611-2024 UUCP: uflorida!seeger

=========================================================== ***9/ jaa101@gorton.anu.edu.au ===========================================================

The file /etc/utmp should certainly exist and (as man umtp will show) contains entries for each user logged in with user name, terminal and assorted garbage. The `who' command uses it and can be used to decode it. In a windowing environment you may well have multiple entries as by default each xterm (or equivalent) will put an entry in giving the terminal as whichever pseudo-tty it's using. Of course login also adds entries if you're using it. At least with xterm this can be turned off either by giving `-ut' as an argument or by specifying `xterm*utmpInhibit: true' to xrdb. I do this locally so that `who' does not drive you crazy with a line per window. Instead only a `console' window on each sun screen or xterminal has a utmp. I discovered the downside to all this when I tried to use talk. The sun version seems to try to find out who you are by finding out which tty you're on and looking in /etc/utmp to find out who you are. If this fails it barfs as above making no attempt to use any of the other myriad of ways to find your identity. There are three approaches I can think of:

Start an xterm `+ut' or with `xterm*utmpInhibit: false' and talk from in that window. You could even set up a script so that talk automagically starts it's own xterm `+ut -e talk'.

Use xtalk instead. You'll probably need to upgrade your talkd version to do this.

Get a non-Sun version of talk. I've used talk on other machines (MIPS) in windows without utmp entries with no trouble so there must be more sensible versions out there.

Of course I've largely assumed an X/xterm environment above so some of the discussion may not apply.

James Ashton James.Ashton@syseng.anu.edu.au

================================================== ***10/ John.D.Barlow@arp.anu.edu.au ==================================================

... >"Who are you? You have no entry in /etc/utmp! Aborting... " >but the file /etc/utmp exists !! ...

it exists but you may not have an entry in it. This could be permission problems on the /etc/utmp file, or set(gid/uid) problems on the programs that have to write to it, or a "non-conforming" program.

A similar sort of problem occurs from xterm windows fired up using xrsh (the person is using an rsh and never executes "login" - so no entry in /etc/utmp).

Good luck.

John Barlow

====================================================== ***11/ cameron@cs.adelaide.edu.au ======================================================

My answer assumes you are running under X or OW.

talk tries to read /etc/utmp to find an entry corresponding to your username so it can find out the corresponding tty. It needs this information since it must make a connection to the tty for the purposes of displaying text, etc.

If you run X or OW3 it may be the case that there is no entry in /etc/utmp for your current login. xterm, for example, does not automatically place an entry in /etc/utmp. You have to explicitly ask for the utmp file to be updated. (The +ut option to xterm). I don't run OW cmdtool's but they may do something similar.

-Cameron Cameron Humphries Department of Computer Science email: cameron@cs.adelaide.edu.au The University of Adelaide phone: +61 +8 228 5583

======================================================= ***12/ kapela@prism.poly.edu =======================================================

The message does not mean that /etc/utmp doesn't exist. It means that the "tty" the user has an empty slot in the utmp file.

/etc/utmp has one "slot" (entry) for each "tty" a user can log in on. Normally, when someone logs on, "login" (The program that displays "login: " prompt and accepts your password) fills in the slot in the utmp file as part of its routine. Each slot contains information such as when you logged in and who you are.

Now, enter windowing. . .

If you are using Sunview, OpenWindows, or X Windows, the user is logged on only once, but with multiple windows. Each terminal window (IE: "xterm") must have a "tty" assigned to it. The windowing server, though, does not always fill in the appropriate slot in the utmp file. If I remember correctly, Sunview and Openwindows by defualt don't fill in the entry, but X Servers do (With X, you can use "xterm -ut" to tell the server NOT to fill in the entry).

When you do a "talk", a message such as "Talk requested by kapela@poly.edu. .. " appears on the persons screen you wish to "talk" with. The way "talk" tries to find out who you are (so it can display that message) is by looking at the slot in /etc/utmp for the "tty" it is running on. If the slot is empty, it can't find out who you are.

There are several reasons why this method is used (one of which is that "talk" was originally written before "windowing" became so popular).

To see if the tty you are on has an entry, at the shell prompt, you can do:

tty <RETURN> (You should see something like "/dev/ttyp0") who <RETURN> (See if there is an entry for that tty)

Or, you can do a "who am i". If you get nothing, there is no entry.

-- Theodore S. Kapela Center for Applied Large-Scale Computing Polytechnic University kapela@poly.edu

============================================================= ***13/aabenson@mtu.edu =============================================================

In article <199205131303.AA02428@leon.nrcps.ariadne-t.gr> you write: > Hi all, > This might be a FAQ and if so , my apologies.

I don't think it's a FAQ.

> When a user talk to another this message is displayd : > > > "Who are you? You have no entry in /etc/utmp! Aborting... " > > but the file /etc/utmp exists !! > > I will apreciate any help

The /etc/utmp file stores the login time, tty, username, and the place they logged in from for all online users.

The problem is one of: (a) Somebody edited /etc/utmp and removed your entry. (b) Somebody trunctaed /etc/utmp to 0 bytes by something like: cp /dev/null /etc/utmp or echo -n > /etc/utmp (c) You're running in a windowing system, and the windowing system is not placing an entry for you in /etc/utmp. (d) You're running a program like 'screen' or unix windows, and that program did not place an entry for you in /etc/utmp. (e) xterm, sunview, screen, uw, or a similar program was denied permission to write to /etc/utmp.

Are you running a windowing system? What kind of setup are you on? Fill me in the details, and I could be able to help. Also, send me the output of: ls -lsgF /etc/utmp

Thanks. :)

> Thanks in advance. > > Kostas Marneris (kmar@leon.nrcps.ariadne-t.gr)

I hope I can help.

- Andrew (aabenson@mtu.edu)

=========================================================== ***14/ rpage@coyote.matrox.com ===========================================================

I saw the same behaviour using iscreen. It permit me to "login" or not any sessions to utmp. On one window that I was not login, I got the same message. So I simply login using the escape sequence and I was able to talk.

The other problem I had with iscreen 3.02 is that some time, talk does not work on the host I am login. So to make it work, I have to login to another host and do the talk from there. This happen only twice, so I did not bother with it.

-- +-----------+---------------------+----------------------+-------------+ | Real Page | (514)685-7230 #2359 | (514)685-7030 Fax | Vaux mieux | | Administrateur des Systemes | root@matrox.com | jamais que | | Systemes Electroniques Matrox | Real.Page@matrox.com | d'avoir tort! +---------------------------------+----------------------+-------------+

============================================================== ***15/ John.D.Barlow@arp.anu.edu.au (Re: More on TALK-PROBLEM) ==============================================================

does it only complaign when you "talk" to the root account ??

If so, do you "login" as root, or do you "/bin/su" from a user account to root ??

If you /bin/su - your problem is that "root" has no entry in /etc/utmp, only the original user account. No idea how to fix this ... sorry.

John

########################################################################## ##########################################################################

Thanks for your answers !

Kostas Marneris (kmar@leon.nrcps.ariadne-t.gr)



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:42 CDT