2012-03-23 167 views
0

我想自動運行在LINUX啓動一個簡單的shell腳本

我在基於ARM板的工作運行的Qtopia &的Linux 2.6.28

所以,我把我的劇本在/etc/int.d/scriptname和我使其可執行使用:

運行在Linux的啓動腳本

chmod +x /etc/init.d/scriptname 

,然後我通過其鏈接:

ln -s /etc/init.d/scriptname /etc/rc.d/S10scriptname 



的問題是,每當我重新啓動或重新開機的電路板電源,然後測試腳本是否正在運行與否我發現,腳本刪除!

我也試着修改位於/etc/int.d/的rcS腳本,並添加幾行來測試它,但是我做的每一個修改都完全刪除後,我重新啓動板,我發現只有原文件。

我還是新的Linux和我試圖尋找,但我沒有發現任何

感謝名單

+0

你用什麼發行?在許多發行版中,您必須將符號鏈接放在/etc/rc2.d中(或者根據目標運行級別,使用rc3.d)。如果文件被刪除,聽起來像是一個安全問題 - 你是否分發禁止修改系統文件? – luukes 2012-03-23 21:03:01

+0

我使用qtopia與Linux 2.6.28嵌入式系統不是桌面分佈,我也沒有/etc/rc2.d ..我只有/etc/rc.d,當我運行「runlevel」on終端我不知道 – 2012-03-23 21:11:41

回答

4

一些我以爲你是從只讀文件系統或initrd或initramfs運行。如果是這種情況,您需要了解如何重建該文件系統。

如何做到這一點因嵌入式系統或分佈而異。

這可能是電子產品或嵌入式StackExchange的問題。

+0

哦,我使用cramfs,但我不知道它是隻讀到現在..我仍然是新的嵌入式Linux和文件系統.. ty非常多:) – 2012-03-23 21:26:16

+0

是的,cramfs是一個只讀的壓縮文件系統,必須提前時間。嵌入是一個非常不同的環境,所有其他答案在某種意義上是正確的,但假設是錯誤的。 – 2012-03-24 10:22:50

0

根據你的發行版你有一個像「服務」或「chkconfig的」,可以幫助你createing鏈接命令在正確的水平上。

+0

好吧,我使用Linux 2.6.28的嵌入式系統,我不認爲它有一個具體的分佈名稱:S,或者至少我不知道它 – 2012-03-23 21:17:38

0
ln -s /etc/init.d/scriptname /etc/rc.d/S10scriptname 

是錯誤需要創建一個鏈接文件

ln -s /etc/init.d/scriptname /etc/rc.d/rc *.d/S10scriptname 

或者使用3或5 在腳本的末尾請加 並添加

rm -rf /etc/init.d/scriptname. 
+1

試圖格式化您的代碼,但可能是它錯了 - 請編輯並改進:-) – kleopatra 2013-12-02 11:27:09