When sshd gets a signal 1 for reload, it forks a new process and ditches the old. This causes upstart to believe that ssh has crashed, and loses track of it. A second reload (or any other initctl operation on ssh) will thus say:
reload: Unknown instance:
There would be 2 ways to fix this:
1. Don't have ssh fork on relod, but keep the same pid
2. Use a different mechanism in upstart to keep track of ssh. Maybe a pid file? Just tracking children of the exited ssh won't work, or it might accidentally track a particular session rather than the master, if somebody just happens to log in close to reload time.
When sshd gets a signal 1 for reload, it forks a new process and ditches the old. This causes upstart to believe that ssh has crashed, and loses track of it. A second reload (or any other initctl operation on ssh) will thus say:
reload: Unknown instance:
There would be 2 ways to fix this:
1. Don't have ssh fork on relod, but keep the same pid
2. Use a different mechanism in upstart to keep track of ssh. Maybe a pid file? Just tracking children of the exited ssh won't work, or it might accidentally track a particular session rather than the master, if somebody just happens to log in close to reload time.
# lsb_release -rd
Description: Ubuntu 10.04.1 LTS
Release: 10.04
# dpkg -l openssh-server | cat Unknown/ Install/ Remove/ Purge/Hold Not/Inst/ Cfg-files/ Unpacked/ Failed- cfg/Half- inst/trig- aWait/Trig- pend /Reinst- required (Status,Err: uppercase=bad) ======= ======= ======= ======= ======= =====-= ======= ======= ======= ======= ======= ======= ======= ======= =-===== ======= ======= ======= ======= ======= ======= ======= ======= ====
Desired=
| Status=
|/ Err?=(none)
||/ Name Version Description
+++-===
ii openssh-server 1:5.3p1-3ubuntu4 secure shell (SSH) server, for secure access from remote machines
# dpkg -l upstart Unknown/ Install/ Remove/ Purge/Hold Not/Inst/ Cfg-files/ Unpacked/ Failed- cfg/Half- inst/trig- aWait/Trig- pend /Reinst- required (Status,Err: uppercase=bad) ======= ====-== ======= =====-= ======= ======= ======= ======= ======= ======= =
Desired=
| Status=
|/ Err?=(none)
||/ Name Version Description
+++-===
ii upstart 0.6.5-7 event-based init daemon