我只想樹莓派的啓動後運行下面的命令運行raspbian喘息:Shell腳本在啓動後不會對樹莓派執行
sudo gcc -lpthread server.c -o wifiserver.o
sudo ./wifiserver.o
我創建以下文件並執行以下步驟:
創建了一個名爲
auto_server_start
的腳本文件。內容如下:
#!bin/bash # /etc/init.d/auto_server_start ### BEGIN INIT INFO # Provides: auto_server_start # Required-Start: $all # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: wifi server script # Description: Start wifi server at bootup ### END INIT INFO case "$1" in start) echo "running server program" sudo gcc -lpthread server.c -o wifiserver.o sudo ./wifiserver.o ;; stop) echo "stopping customized script" ;; *) echo "Usage: /etc/init.d/auto_server_start start|stop" exit 1 ;; esac exit 0
複製該文件名爲
auto_server_start
到/etc/init.d/
目錄,並添加使用chmod +x
執行權限。然後
sudo update-rc.d auto_server_start defaults
。
它給了mathkernel一些警告,但我認爲這與我的腳本沒有任何關係。
但是,在軟重啓時,我檢查了ps -e
以及top
,我的wifiserver
進程無處顯示。
請建議。
PS:我檢查了命令gcc
和./wifiserver.o
沒有提供警告和錯誤。
你爲什麼要在重新啓動時重新編譯二進制文件? – tripleee 2014-08-28 04:38:11
'sudo'在這裏毫無意義且可能有害。初始化腳本已經擁有它所需的所有權限。 – tripleee 2014-08-28 04:39:19
將編譯後的二進制文件放到'/ usr/local/bin'中,並將腳本從那裏改爲運行它。檢查系統日誌中是否有失敗或警告消息。如果您需要幫助解釋他們,請在這裏發佈。 – tripleee 2014-08-28 04:44:31