Насчет stdin ..out ..err верно, но еще неплохо бы запустить дочерний процесс, а основной завершить. Также надо обрабатывать сигналы (Хотя бы SIGTERM чтобы дочерний процесс не закрылся вместе с вызывающим). Если это сделать, то владельцем процесса станет init, вызывающий процесс завершится (возможно вернув статус). В принципе все это не обязательно, но намного красивее и надежнее.