Доброго времени суток всем! Пытаюсь сделать что-то типа СКД для дома, ничего особо сложного, так это мой первый проект. Ситуация такая, есть программа сервер (secure), которая принимает данные с proximity считывателя карт, в зависимости от разных ситуаций эта программа должна запустить программу motion либо остановить. Запуск программы выполняется через функцию system(), "system(«/usr/local/bin/motion»)", после запуска motion начинаются проблемы с считывателем, моя программа не получает данных с него. Решил проверить, возможно motion и моя программа используют одинаковые порты, набираю lsof -i |grep 9761 и смотрю выхлоп вот что я вижу:
secure 14315 root 13u IPv4 305612 0t0 TCP *:9761 (LISTEN)
secure 15011 root 13u IPv4 305612 0t0 TCP *:9761 (LISTEN)
secure 15011 root 14u IPv4 305613 0t0 TCP 192.168.0.113:9761->192.168.0.191:1068 (ESTABLISHED)
motion 15230 root 13u IPv4 305612 0t0 TCP *:9761 (LISTEN)
motion 15230 root 14u IPv4 305613 0t0 TCP 192.168.0.113:9761->192.168.0.191:1068 (ESTABLISHED)
И lsof -i |grep motion
motion 15230 root 3u IPv4 305600 0t0 TCP localhost:13013 (LISTEN)
motion 15230 root 4u IPv4 306048 0t0 TCP localhost:http-alt (LISTEN)
motion 15230 root 8u IPv4 306044 0t0 TCP 192.168.0.113:39106->192.168.0.114:http (ESTABLISHED)
motion 15230 root 9u IPv4 306052 0t0 TCP localhost:tproxy (LISTEN)
motion 15230 root 13u IPv4 305612 0t0 TCP *:9761 (LISTEN)
motion 15230 root 14u IPv4 305613 0t0 TCP 192.168.0.113:9761->192.168.0.191:1068 (ESTABLISHED)
Motion и моя программа используют одинаковыей порт 9761, поменял порты в своей программе, проверяю... И снова вижу тоже самое, только номер порта другой. Думаю ладно, грохну motion и выполню запуск сам, т.е. «sudo motion». Motion запустился, делаю lsof -i |grep motion
motion 8577 root 3u IPv4 292557 0t0 TCP localhost:http-alt (LISTEN)
motion 8577 root 5u IPv4 292550 0t0 TCP 192.168.0.113:39167->192.168.0.114:http (ESTABLISHED)
motion 8577 root 6u IPv4 292561 0t0 TCP localhost:tproxy (LISTEN)
Может мне кто-то объяснить что за фигня происходит и как сделать так, чтобы motion не дублировала соединения той программы, которая ее запускает?
Заранее благодарю всех, кто хотя бы дочитал до этого момента!