我在Ubuntu 14.04中工作我有一個我編譯的C++應用程序。我得到的可執行文件名稱是「程序」。那麼事情是,這個程序中使用OpenCV的插座,然後如果我嘗試在這樣的終端來執行它:以root身份自動運行我的可執行文件ubuntu
./program
我得到這個錯誤:因爲我用插座出現
listener: socket: Operation not permitted
setsockopt: Bad file descriptor
此錯誤我需要運行我的應用程序的根,所以我tyoe這樣的:
sudo ./program
這個請求我的密碼和程序工作propertly。
問題是我想在啓動我的Ubuntu時自動運行這個「程序」,但它不起作用。我有另一個應用程序的名稱是「相機」,它只使用opencv,沒有套接字,那麼我不需要以root身份運行。所以我把這個應用程序放在ubuntu的啓動應用程序中,並且「相機」應用程序從開始就沒有問題地開始。
所以我想我的問題是我需要以root身份運行我的「程序」,但我無法得到它。
有人可以幫助我嗎?
非常感謝
您可以配置'/ etc/sudoers',或者通過'crontab'或者你的init腳本啓動你的程序。 – 2014-10-17 09:21:18
您可以使用不需要root權限的端口進行偵聽。 – molbdnilo 2014-10-17 09:33:07
謝謝我配置了/ etc/souders,並且我可以在沒有sudo的情況下運行它,但是我仍然收到套接字錯誤 – user3766585 2014-10-17 16:00:31