Fight ATSServer stall at login

May 15, '06 07:30:00AM

Contributed by: cosmo

The ATSServer process sometimes stalls the system upon login, and there is nothing you can do to kill it at this point except killing it by ssh from another machine. But what to do when there is no other machine you can use to login from? It gets even worse if you activate/deactive a lot of fonts during your session.

The solution I found, which fits my needs, was to create a LogoutHook, which kills ATSServer on logout.

  1. Create a simple sh script:
    #!/bin/sh
    killall ATSServer
    
    Save it in a convenient place, like /usr/local/bin, and name it killATSServer.sh Then make it executable via sudo chmod +x killATSServer.sh.

  2. Make it a LogoutHook by entering the following command:
    sudo defaults write com.apple.loginwindow \
    LogoutHook /usr/local/bin/killATSServer.sh
    
And now everything should be fine. The ATSServer process will be killed on logout. It is started automatically upon the next login. This solution was tested under 10.4.x, and it works well for me. Hope if helps others.

[robg adds: I haven't ever seen this issue, so I can't claim to have tested the fix.]

Comments (16)


Mac OS X Hints
http://hints.macworld.com/article.php?story=20060511070217782