Регулярно пишу демоны под различные нужды. В питоне есть даже пакет под такое дело -
http://pypi.python.org/pypi/python-daemon/ который реализует часто используемые фичи типа закрытие ненужных дескрипторов при переходе в режим демона, double-forking и прочее. С сигналами тоже вроде проблем не имел, стандартный модуль в помощь -
http://docs.python.org/library/signal.html#signal.signalКонкретно по перезагрузке проверьте:
1. У Вас нормально настроен логгинг и там нет каких-либо ошибок, например в обработчике сигналов;
2. У Вас сохраняется правильный PID (то есть взятый **после** double-forking) в известный файл;
3. Сигнал отсылается именно на тот PID, который указан в файле.
Единственно, могут быть сложности, если у вас главный исполняемый код находится в подпроцессах, а основной процесс только мониторит - ну это тоже лечится с помощью очередей и подобного.
Так что опишите подробнее что не получается.
UPD: сам учился писать демоны по кодам Paste-Script - посмотрите, может Вам поможет.