2016-08-12 155 views
0

我編寫了python腳本,它使用subprocess.pOpen()模塊來運行和操作2個GUI程序:Firefox和VLC播放器。我在桌面模式下使用Ubuntu 14.04 LTS操作系統。Ubuntu在使用Firefox的系統啓動時運行python腳本

我的問題是,當我嘗試在系統啓動時運行該python腳本時,腳本正在運行但Firefox或VLC無法啓動。

到目前爲止,我試圖讓shell腳本運行我的python腳本,然後用crontab@reboot /home/user/startup.sh來執行我的python腳本。我爲每個正在使用的腳本設置了所有權限。我給了我的用戶root權限,所以一切都OK了。

我也試圖運行我的腳本把命令"sudo python /path/to/my/script.py"/etc/rc.local文件,但這也沒有幫助。

我搜索了一下,發現有人使用.desktop文件,他們把它放在~/.config/autostart/目錄中,但也失敗了。什麼例子,我寫道:

[Desktop Entry] 
Type=Application 
Exec="sudo python /home/user/path_to_my_script/my_script.py" 
X-GNOME-Autostart-enabled=true 
Name=screensplayer 
Comment=screensplayer 

我在~/.config/autostart/目錄保存這是program.desktop但它不工作。我相信有一種方法可以解決這個問題,但不知道如何。任何幫助將不勝感激!

回答

0

找到解決我的問題。當你與pOpen在Python這樣的運行命令:

FNULL = open(os.devnull, 'w') 
_FIREFOX_START = ["sudo", "firefox", "test.com/index.html"] 
subprocess.Popen(self._FIREFOX_START, stdout=self.FNULL, stderr=subprocess.STDOUT) 

它不會運行,因爲「sudo」字,當我刪除它的應用程序,它的工作。

同樣運行在終端的gnome-會話屬性,並添加新的啓動應用程序,要知道,你有沒有sudo來執行python腳本,這樣的:

python /home/user/path_to_script/script.py 

另外,我給予我的用戶root特權,因此Kepp認爲。

相關問題