![]() |
Lee, Many thanks for detailed explanation. I am unclear on the resetmodem script, however. You are using lsof on the pseudo-tty, but if iaxmodem already crashed, that tty will not exist. Or am I wrong? Thanks, Niksa On 03/22/2010 06:05 AM, Lee Howard wrote: > Niksa Baldun wrote: >> I have the strangest of problems. I am using hylafax with a pool of >> iaxmodems. Sometimes when I connect to the system using ssh, I keep >> getting "ATZ" on the screen and I can't input any commands. Apparently >> hylafax thinks that the ssh pseudo console is actually a modem and it >> tries to communicate with it. >> >> When I restart the system, the problem goes away, but I can't find out >> what triggers it. How would I go about finding the cause of this? I >> tried browsing the system log, but I don't really know what to look for. > > iaxmodem uses pseudo-ttys, but the way that Linux works, iaxmodem > cannot request any particular device name for the pseudo-tty. So we > end up with something like /dev/pts/24, but it will vary depending on > many things and will not be consistent. For example, ssh also uses > pseudo-ttys, and often the tty numbers are allocated based on a > first-come-first-serve basis. > > In order to achieve a consistent device name iaxmodem creates a > symlink to the pseudo-tty, and HylaFAX uses the symlink. > > If iaxmodem crashes and is not restarted then HylaFAX will be trying > to operate on a broken symlink. And then maybe you log in with ssh > and are given the pty that iaxmodem was just using. Now you'll start > to get faxgetty talking to your pty that ssh is using. > > You can make HylaFAX restart iaxmodems when they "wedge" by putting > this in /var/spool/hylafax/etc/resetmodem : > > ----------------------------------------- > #!/bin/sh > > set -x > exec 2> /tmp/resetmodem.$$ > > > PTY=`ls -l $1 | sed 's/.*-> //g'` > > IAXPID=`/usr/bin/sudo /usr/sbin/lsof "$PTY" | grep iaxmodem | sed > 's/^iaxmodem *\([0-9]*\) .*/\1/g'` > > /usr/bin/sudo /bin/kill -HUP $IAXPID > > exit > ----------------------------------------- > > Make sure to mark resetmodem as executable (chmod a+x > /var/spool/hylafax/etc/resetmodem). > > You'll also need something like this in your /etc/sudoers file: > > uucp ALL = NOPASSWD: /bin/kill > uucp ALL = NOPASSWD: /usr/sbin/lsof > > Thanks, > > Lee. > > > ____________________ HylaFAX(tm) Users Mailing List > _______________________ > To subscribe/unsubscribe, click > http://lists.hylafax.org/cgi-bin/lsg2.cgi > On UNIX: mail -s unsubscribe hylafax-users-request@xxxxxxxxxxx < > /dev/null > *To learn about commercial HylaFAX(tm) support, mail sales@xxxxxxxxx* > > > ____________________ HylaFAX(tm) Users Mailing List _______________________ To subscribe/unsubscribe, click http://lists.hylafax.org/cgi-bin/lsg2.cgi On UNIX: mail -s unsubscribe hylafax-users-request@xxxxxxxxxxx < /dev/null *To learn about commercial HylaFAX(tm) support, mail sales@xxxxxxxxx*