Handshaking
RTS/CTS
The 64-port adapter will support ASCII terminals and printers at the 38400
baud rate if the RTS/CTS flow control mechanism is enabled.
RTS/CTS is not checked by AIX unless RTS is added to the printer
stack. To enable RTS/CTS use the command…
stty add rts /dev/ttyx
where ‘x’ is replaced by the number of the tty port for which you wish to enable RTS/CTS.
DTR/DCD
>Assumming a getty process is running on a terminal port and that terminal is turned on, when the ps -ef command is run and a question mark (?) appears in the TTY field, a cabling problem exists.
- Most likely, the DTR lead from the terminal is NOT connected to the DCD lead on the RS/6000 end. By default, ALL terminal ports on the RS/6000 are configured as DCE or modem ports. This means that NO output will travel out that port until the DCD (carrier detect) goes high.
- Thats why the DTR lead on the terminal needs to be mapped to the RS/6000 DCD lead. Once the terminal is turned on, the DTR lead goes high, causing the DCD lead to go high, resulting in the RS/6000 generating a login prompt on that terminal.
Once this happens, you will see a TERMINAL ID in the TTY field when the ps -ef command is executed. When the terminal is turned off, a question mark (?) will be displayed in this field.
Modem Control
To turn off modem control, the clocal attribute must be turned off for the LOGMODES and RUNMODES fields. This must be done if your only using 3-wire cabling and no looping back of the the DTR and DCD leads is being performed at the RS/6000 end. This can visually be seen by viewing the output of the ps -ef command. The TTY field will always have a TERMINAL ID number in it, regardless of whether the terminal is turned on, off, or no cable is attached to the terminal. One consideration when disabling modem control; beware that when you login to a terminal port, followed by turning the terminal off and back on again, you still will be logged in. Since DCD does not drop (remember it’s looped back to DTR – which stays high), the RS/6000 terminal drivers will not terminate any programs that are running on that port.
capture
Utility that allows you to capture screen output. Bring up the application/utility whose screen you wish to capture, followed by pressing ^P, to flush the screen contents to a file named screen.out. Use the -a flag to either write to a new file or append to an existing file. Type exit to exit this command.
Example: capture -a CRT.dump (Captures all screen output until ‘exit’ is typed at command line.)
chcons
Changes the system console device to be effective on the next system reboot.
Example: chcons -a login=enable /dev/tty0
chdev
Change one or more attributes for a specific device configuration
Examples | What it does |
chdev -l tty1 -a logger=/bin/smit | The next time the system is rebooted, that terminal is either turned on or the current user logs off, the smit command will automatically be executed instead of the login prompt being displayed. |
chdev -l tty1 -a logger=’;’ | To disable automatically executing a command when a terminal has been turned on. |
chdev -l tty4 -a altpin=enable | Switches the location of the DSR and DCD inputs on the modular connector, so that DCD is available when using an 8-pin RJ-45 connector instead of the 10-pin RJ-45 connector. |
lscons
Displays the name of the current console device.
pdelay
When a terminal port is configured to have a login status of pdelay, this means that a carriage return or two is required to be pressed prior to a login prompt being generated to the display terminal. Without a carriage return being generated, the display screen will remain blank.
Examples | What it does |
pdelay | Reports back all the terminals that have a pdelay status |
pdelay tty21 | Sets terminal (tty21) to have a login status of pdelay |
pdisable
When a terminal port is configured to have a login status of pdisable, a login prompt will not be generated to the display terminal. Keyboard input will not be read because AIX will not generate a process to read input on that port. Effectively, the port is disabled until it’s state is turned to pdelay, penable, or pshare or the system is rebooted.
Examples | What it does |
pdisable | Reports back all the terminals that have a pdisable status |
pdisable tty21 | Sets terminal tty21 to have a login status of disable. Any processes running on that port will be terminated. |
pdisable -a | Disable all ports that are currently enabled except PTS and HFT devices (looks for all TTY devices) |
pdisable 3 6 19 | Disables the ttys 3, 6 and 19 from logging into the system. If there were active users on these ports, the users and associated processes are terminated. |
penable
When a terminal port is configured to have a login status of penable, a login prompt will immediately be displayed on the terminal by the getty process.
Examples | What it does |
penable | Reports back all the terminals that have a penable status |
penable tty21 | Sets terminal (tty21) to have a penable status |
penable -a | Enable all ports that were disabled |
phold
Disables or lists the availability of login ports on hold
Examples | What it does |
phold | Lists the ports that are currently on hold |
phold -a | Holds all ports that are currently enabled. No new users may login. |
pshare
Enables a port for bi-directional use. Typically used for modem ports. The port starts a getty when a CD signal is asserted. A shared port can be used as both a dial-out and dial-in device without user intervention, but the modem must not assert carrier until true carrier is established – else noise maybe picked up, causing TSM to generate error messages.
Examples | What it does |
pshare | Reports back all the terminals that have a pshare status |
pshare tty21 | Sets terminal tty21 to have a pshare status. |
pstart
Enables or lists the available login ports.
Examples | What it does |
pstart | Lists all enabled ports and their current login status |
pstart -a | Enables all ports listed in the /etc/inittab file that were enabled, shared, or delayed. |
reset
Re-initializes a terminal. Useful when a program dies and leaves a terminal in an undesirable state. The sequence ^Jreset^J may be required to get the reset command to run successfully, since the RETURN key might not work in this state.
script
Makes a typescript of everything displayed during a terminal session (captures terminal input and output to a file). Use the -a flag to either write to a new file or append to an existing file.
Example: script
Creates the file ‘typescript’ in your current work directory. Captures all KEYBOARD input and SCREEN output until exit is typed at command line.
stty
Lists attributes for a terminal. Any changes made by the stty command, remains active until the next reboot. The mkdev or chdev commands make permanent changes for that device and take effect upon the next login.
Examples | What it does |
stty -a </dev/tty13 | List the attribute settings for a terminal that has a user logged on it already |
stty get < /dev/lp0 | Useful command to determine if the DTR signal is being used to monitor the printer control signal DEVICE_BUSY. If DTR is not being monitored, DTR will not be part of this output. |
stty erase | Sets your terminal to perform a destructive backspace |
stty kill ^U intr ^C susp ^Z | Sets terminal to
|
stty -hupcl | Prevents DTR from dropping when ^D, exit, or logout is generated. This prevents any application running on that port from being terminated. |
stty hupcl | The hupcl parameter hangs up a dial-up connection. If set, the line is disconnected when the last process closes the line or when the process terminates. |
stty opost onlcrstty -opost -onlcr | By default, a tty port will translate a NL to CR on output. If your application is generating CRLF for output, the onlcr attribute will change this to a CRCRLF. To disable this feature, reset the port attributes to using: stty -opost -onlcr |
stty tostop | Prevent a background job from creating output to your terminal. The background job will stop (suspend itself) when it tries to output to the terminal screen. Same actions will occur if a background job attempts to read standard input. |
stty -cread </dev/tty32 | Enable reading from the keyboard. If the stty setting for that terminal port is ‘cread’, then a login prompt will be displayed at that terminal but no keyboard input will be read. |
stty -icrnl | Translate incoming carriage returns (CR, ^M,’\r’) into newlines (LF, ^J,’\n’) |
1) OLDTTY=`stty -g </dev/tty`2) stty $OLDTTY < /dev/tty | Illustrates how one could save the current tty attributes in a shell variable (OLDTTY) and later restore them. |
stty disp bsd | Switches from the POSIX (default) to the BSD line discipline. |
1) /usr/lbin/tty/ttyconfig -l sptr 2) stty disp sptr </dev/lp3 | Switches from the POSIX (default or terminal driver) to the SPTR line discipline (print driver) |
stty -ixon -ixoff | Disable XON/XOFF for your current terminal session. |
stty -cxma | Lists attributes for a 128-port terminal. Any changes made by this command remain active until the next reboot. The mkdev or chdev commands make permantent changes for that device and take upon the next login. 128-port adapter supports synchronous modems. |
stty-cxma flush </dev/tty4 | Immediately flush (discard) tty input and output. Also used to unlock a tty port. |
stty-cxma -forcedcd </dev/tty4 | Disable carrier sense, so the tty may be opened and used even when carrier is not present. |
stty-cxma edelay </dev/tty4 | Sets the rate at which the Front End Processor Operating System (FEPOS) wakes up the software on input. The FEPOS will wake up the software every ‘X’ milliseconds. DEFAULT: 10 |
swcons
Temporarily sets the system console output to a new terminal device or file. This command switches system informational and error messages and does not affect the operation of the system console that is providing a login capability to the system.
Example: swcons /tmp/console.log
Redirects console messages to a file named /tmp/console.log. In order to enable logging messages to this file after each reboot, make sure that the swcons /tmp/console.log command is the first line executed in the /etc/rc file.
tic
Compiles the source terminfo files into a compiled format. The terminfo files are found in the /usr/lib/terminfo directory. The source files contain the control codes used to address the hardware specific attributes (cursor addressing, reverse video, underline, backspace, and so on) for each terminal type that AIX supports. The compiled files are used by applications through library routines to hide the hardware specific codes required by each type of terminal.
Examples | What it does |
1) cd /usr/lib/terminfo2) tic ibm.ti | Updates the compiled terminal definitions for all ibm terminals to reflect the latest changes in the /usr/lib/terminfo/ibm.ti file |
ls /usr/lib/terminfo/?/* | Lists all the terminal types that AIX supports |
Used as a tool to set terminfo attributes for a specific terminal
Examples | What it does |
tput rev | Outputs characters in reverse video |
tput sgr0; | Restores terminal to default settings |
tput smkx | Download of function keys |
1) bold=`tput smso`2) echo “${bold}Enter your password: \c” |
Example that can be used in a script that allows one to highlight the text displayed on a screen |
tty
Displays the terminal id (i.e. tty value)
syslog.conf
To capture error messages that appear on the console to a file, do the following…
- vi /etc/syslog.conf
- Find the debug line and make it active
- Change /dev/console to /tmp/<filename>
- Save the changes
- Find the current process for syslod: ps -ef |grep syslogd
- Kill the process for syslogd
- Restart the daemon: /etc/syslogd