Operating System - HP-UX
1748228 Members
4451 Online
108759 Solutions
New Discussion юеВ

Re: ps: don't know which terminal to select

 
P_F
Regular Advisor

ps: don't know which terminal to select

This script works on Linux 4.X and 5.X
This script works on AIX 5.X
This script works on HPUX if running directly on the command line
ONLY If run from cron I get this error:

(HP-UX B.11.23 U ia64 )

ps: don't know which terminal to select
ps: don't know which terminal to select
ps: don't know which terminal to select
ps: don't know which terminal to select

Here is the relevant code:

#!/usr/bin/ksh


....

manage_ssh_ps $HOST &


...

PLEASE NOTE:

I have read about this patch PHCO_30559:

http://www13.itrc.hp.com/service/patch/patchDetail.do?patchid=PHCO_33267&sel={hpux:11.00,}&BC=main|search|patchDetail{PHCO_33267,{hpux:11.00,}}|cart|

The test for the conditions described do not match, in particular

$ ps < /dev/null 1> /tmp/out 2> /tmp/err
$ echo $?
1
$ cat /tmp/out --- This does not give any output.
$ cat /tmp/err
ps: don't know which terminal to select


cat /tmp/out
-- outputs normal ps info
cat /tmp/err
-- is empty

Furthermore the patch is for a different OS load.
17 REPLIES 17
Shibin_2
Honored Contributor

Re: ps: don't know which terminal to select

>> This script works on HPUX if running directly on the command line
ONLY If run from cron I get this error:

What is the user in both condition?
Regards
Shibin
P_F
Regular Advisor

Re: ps: don't know which terminal to select

The user is root.
Bill Hassell
Honored Contributor

Re: ps: don't know which terminal to select

> Here is the relevant code:
> #!/usr/bin/ksh
> ....
> manage_ssh_ps $HOST &

Not very useful.
What is manage_ssh_ps?

Post the results of this command:

# what /usr/bin/ps


Bill Hassell, sysadmin
Dennis Handly
Acclaimed Contributor

Re: ps: don't know which terminal to select

>The test for the conditions described do not match, in particular
ps: don't know which terminal to select

Either they broke this with PHCO_30559 or it never worked?
Note: A crontab job doesn't have a controlling terminal.

It appears what you want conflicts with the documentation:
(none) Select those processes associated with the current terminal.

Since there is no current terminal, you get that error.
P_F
Regular Advisor

Re: ps: don't know which terminal to select

Sure, looks like a bug.
Dennis Handly
Acclaimed Contributor

Re: ps: don't know which terminal to select

>looks like a bug.

What is the output on Linux and AIX when there is no controlling terminal?
What did you want to see?
P_F
Regular Advisor

Re: ps: don't know which terminal to select

The script does not error on AIX and Linux. Only on HPUX when invoked via cron does the script have issues managing a terminal.

In this case the script is being run on 11.23 but in the patch description - for a similar issue - on 11.00 there exists a condition in which the way the terminal was being assigned needed fixing. But that patch mentioned nothing about cron.

Regards, putting a process in the background in korn shell, via cron, on 11.23 consistently is causing errors.
Bill Hassell
Honored Contributor

Re: ps: don't know which terminal to select

I see the text inside the ps executable but I don't understand why ps would ever care about anything except stdout and stderr. But after trying it on 10.20, 11.00, 11.11, 11.23 and 11.31, it always reports the error:

for x in 2 3 4 5 6^Jdo^Jssh atl$x ps^Jdone
ps: don't know which terminal to select
ps: don't know which terminal to select
ps: don't know which terminal to select
ps: don't know which terminal to select
ps: don't know which terminal to select

I get the same results for remsh and rexec. So what does ps need that uname (for instance) doesn't need? AFAIK ps isn't interactive and doesn't read anything from stdin. Seems like a bug to me...even if it has been that way for more than 10 years.


Bill Hassell, sysadmin
Dennis Handly
Acclaimed Contributor

Re: ps: don't know which terminal to select

>The script does not error on AIX and Linux.

That's not what I was asking. What output does it produce? If there is no controlling terminal, are you happy with empty output?

Are you happy with the current shell and ps itself?

>But that patch mentioned nothing about cron.

The code change looks at the controlling terminal for the process and there is none.

>via cron, on 11.23 consistently is causing errors.

Yes, that is a consequence of the bug fix.

>Bill: I don't understand why ps would ever care about anything except stdout and stderr.

Did you read the man page:
(none) Select those processes associated with the current terminal.

You could say, if no current terminal, there is nothing to display.

>So what does ps need?

Something to select which processes to start displaying.
This only happens if you don't provide ps(1) any options.