02-15-2005
Dead pseudo-ttys
We are having a problem on an AIX 4.3 system, whereby users somehow exit the system in a way such that their process continues to run.
In the who listing, the user may or may not be listed. Processes are still listed in ps, and are still assigned to the pseudo-tty. Processes continue to receive CPU cycles.
One way to detect these orphaned processes is to echo "nothing" to the device, and detect the return code;
echo "\c" > /dev/pts/100 2>/dev/null
if test $? = "1"
then# bogus tty
fi
That can certainly be automated and scripts used to manage the problem, however I am looking for a root cause.
Is it possible that one of the signals has been mapped, and is causing this behavior? Is there some telnetd configuration that can be tweaked, in order to cause these processes to get cleaned up whenever a telnet socket dies?
Any hints or comments will be very appreciated.
Thanks!
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
SCO Unix OpenServer 5
I have this old impact printer that prints invoices, after about 15 pages it becomes misaligned.
ditty -a ttya04 shows -ixon -ixoff -ixany, which is not the right setting..
so, i type
ditty /dev/ttya04 ixon ixoff -ixany
when i ditty -a ttya04 again, the... (2 Replies)
Discussion started by: LowOrderBit
2 Replies
2. Programming
I need to spawn a number of foreground process by reading a configuration file. Each process needs some form of I/O. Hence I need to run it on different terminals.
How it can be done programatically , i.e. , my module needs to find which terminal is not in use, then open it, execute the process... (2 Replies)
Discussion started by: S.P.Prasad
2 Replies
3. SCO
explain differences between a device driver & a pseudo driver...????
thanks in advance (1 Reply)
Discussion started by: areef4u
1 Replies
4. Solaris
Hi I have a system that gave me some messages on bootup that I was not used to seeing:
pseudo: pseudo-device: vol0
genunix: vol0 is /pseudo/vol@0
these came with these:
Feb 13 17:42:17 system1 eri: SUNW,eri0 : 100 Mbps full duplex link up
Feb 13 17:42:21 system1sendmail: My unqualified... (0 Replies)
Discussion started by: mndavies
0 Replies
5. Solaris
Hi all,
what does this mean?
if
then
<something>
fi
here is what i know..
it checks if the specified argument no($devid) in some function call is made into a block device and then proceeds with the execution of the loop.
However am not understand what lofi@0:means?
also is there... (3 Replies)
Discussion started by: wrapster
3 Replies
6. UNIX for Advanced & Expert Users
Hi All,
I have putty on my system (Vista). I need some server details to login via internet for my personnel practice. Can any body help me out.
In case this not feasible, just let me know any other way to work with UNIX terminal on Windows Vista itself.
Please help me since i am desparately... (3 Replies)
Discussion started by: vikas_kesarwani
3 Replies
7. UNIX for Dummies Questions & Answers
Sometimes when I open up the terminal (like just now) it says
Last login: Wed Jun 17 07:29:25 on console
sometimes it says ttys (like when I exit and open a new window/tab). What's the difference? and is something fishy going on? (6 Replies)
Discussion started by: Straitsfan
6 Replies
8. AIX
I have several users connecting via a Windows-based SSH\telnet client. The previous sysadmin used FacetTerm to allow certain users to switch between multiple "windows." I'm told there are AIX-native ways to do this but I work with what I inherited.
Originally, many users were still connecting... (3 Replies)
Discussion started by: lacroix
3 Replies
9. UNIX for Dummies Questions & Answers
How can i view what my colleague is doing in the terminal pts/1 while i have logged into terminal pts/2 ?? Both have remotely logged in via ssh. (4 Replies)
Discussion started by: proactiveaditya
4 Replies
10. Solaris
sometimes I see this message in dmesg:
what does it mean?
thanks. (5 Replies)
Discussion started by: orange47
5 Replies
LEARN ABOUT MOJAVE
cgi::pretty
CGI::Pretty(3pm) Perl Programmers Reference Guide CGI::Pretty(3pm)
NAME
CGI::Pretty - module to produce nicely formatted HTML code
SYNOPSIS
use CGI::Pretty qw( :html3 );
# Print a table with a single data element
print table( TR( td( "foo" ) ) );
DESCRIPTION
CGI::Pretty is a module that derives from CGI. It's sole function is to allow users of CGI to output nicely formatted HTML code.
When using the CGI module, the following code:
print table( TR( td( "foo" ) ) );
produces the following output:
<TABLE><TR><TD>foo</TD></TR></TABLE>
If a user were to create a table consisting of many rows and many columns, the resultant HTML code would be quite difficult to read since
it has no carriage returns or indentation.
CGI::Pretty fixes this problem. What it does is add a carriage return and indentation to the HTML code so that one can easily read it.
print table( TR( td( "foo" ) ) );
now produces the following output:
<TABLE>
<TR>
<TD>foo</TD>
</TR>
</TABLE>
Recommendation for when to use CGI::Pretty
CGI::Pretty is far slower than using CGI.pm directly. A benchmark showed that it could be about 10 times slower. Adding newlines and spaces
may alter the rendered appearance of HTML. Also, the extra newlines and spaces also make the file size larger, making the files take longer
to download.
With all those considerations, it is recommended that CGI::Pretty be used primarily for debugging.
Tags that won't be formatted
The following tags are not formatted: <a>, <pre>, <code>, <script>, <textarea>, and <td>. If these tags were formatted, the user would see
the extra indentation on the web browser causing the page to look different than what would be expected. If you wish to add more tags to
the list of tags that are not to be touched, push them onto the @AS_IS array:
push @CGI::Pretty::AS_IS,qw(XMP);
Customizing the Indenting
If you wish to have your own personal style of indenting, you can change the $INDENT variable:
$CGI::Pretty::INDENT = " ";
would cause the indents to be two tabs.
Similarly, if you wish to have more space between lines, you may change the $LINEBREAK variable:
$CGI::Pretty::LINEBREAK = "
";
would create two carriage returns between lines.
If you decide you want to use the regular CGI indenting, you can easily do the following:
$CGI::Pretty::INDENT = $CGI::Pretty::LINEBREAK = "";
AUTHOR
Brian Paulsen <Brian@ThePaulsens.com>, with minor modifications by Lincoln Stein <lstein@cshl.org> for incorporation into the CGI.pm
distribution.
Copyright 1999, Brian Paulsen. All rights reserved.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Bug reports and comments to Brian@ThePaulsens.com. You can also write to lstein@cshl.org, but this code looks pretty hairy to me and I'm
not sure I understand it!
SEE ALSO
CGI
perl v5.18.2 2014-01-06 CGI::Pretty(3pm)