ZerG
Запускайте вот так
Вы хотя бы понимаете что советуете?
alex2016
Демон блин сам через пару секунд вырубается
В принципе насколько я могу судить, код, который Вы запостили корректный. За исключением того, что желательно закрывать дескрипторы, унаследованные от родительского процесса. В особенности дескрипторы ввода-вывода (stdin, stdout, stderr) и переоткрывать в /dev/null или куда-нибудь еще.
alex2016
Демон блин сам через пару секунд вырубается
Эм… ps без параметров отображает только список процессов ассоциированных с текущим терминалом. Читаем маны.
By default, ps selects all processes with the same effective user ID (euid=EUID) as the current user and associated with the same terminal as the invoker.
Так как Ваш процесс отвязался от терминала и переехал под init, то естественно в этом списке его не будет.
Попробуйте запустить и увидите Ваш демон.
ps ax |grep python
Кстати double fork magic не обязателен, если родительский процесс завершается сразу после запуска дочернего процесса.