2017-05-22 111 views
0

我正在尋求在Ubuntu中安裝一個腳本,當系統重新啓動時自動運行。自動啓動腳本與外殼交互

我試着從/etc/rc.local運行它,問題是: 我的腳本調用了一個c程序,它引發一些Gtk彈出窗口,一些printfs在shell中並等待scanf輸入。當我把它放在rc.local中,我重新啓動系統似乎沒有執行,但實際上它在啓動shell後臺運行(我在/ var/log/syslog中看到),所以gtk彈出窗口不能顯示printf/scanf交互。

然後我看着其他方式得到的是,我發現在〜/的.config /自動啓動/ 這裏我把它包含以下內容的file.desktop:

[Desktop Entry] 
Name=backup Exec=/path/myScript.sh 
Type=Application 
Hidden=false 
NoDisplay=false 
X-GNOME-Autostart-enabled=true 

在myScript的我做了化妝和以下內容:

gnome-terminal -e「bash -c」/ path/myprogram; EXEC慶典\「」 &

最後,這是工作,這是運行時重新啓動,但現在的問題是,我的節目是2倍一個在Q新的外殼(這正是我一直在尋找)和另一個在啓動背景中,因爲它發生在rc.local方法中。 我能做什麼?

回答

0

如果您可以使用systemd服務自動啓動腳本,則效果更好。最新版本的ubuntu使用systemd服務來安排腳本。您可以從/ lib/systemd/system目錄找到一些參考。

+0

它不工作 –

+0

你可以粘貼你創建的服務文件嗎? – newbie

+0

backup.service:[單位] 說明=備份服務 DefaultDependencies =無 [服務] 類型=單穩 ExecStart = /家庭/豪爾赫/文件/腳本/ overwatchSaver /備份/ script.sh [安裝] WantedBy = multi-user.target –