在啟動或關機時執行script (rc.d)執行 [論壇 - Ubuntu 程式設計]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊



在啟動或關機時執行script (rc.d)執行
會員二級
註冊日期:
2015/11/16 9:07
所屬群組:
已註冊使用者
等級: 6
HP : 0 / 137
MP : 19 / 1624
EXP: 48
離線
在啟動或關機時執行script (rc.d)執行
範例中:

AA.sh
case $1 in
start)
touch /var/lock/subsys/initscript.sh #建立空檔案
# 其他要執行的程式
sleep 10
;;
stop)
rm /var/lock/subsys/initscript.sh
# 要終止的程式
sleep 10
;;
esac

另外要去 ln -s /ect/init.d/initscript.sh /ect/rc2.d/S98initscript.sh

1.若/ect/rc2.d/ 內沒有S98initscript.sh,要手動建立空白檔嗎?
2.這樣設定好後,關機就會去執行 S98initscript.sh 嗎?
還是會執行 # 其他要執行的程式 與 # 要終止的程式

2016/4/20 11:00
應用擴展 工具箱
回覆: 在啟動或關機時執行script (rc.d)執行
會員二級
註冊日期:
2013/11/7 9:24
所屬群組:
已註冊使用者
等級: 8
HP : 0 / 187
MP : 30 / 3338
EXP: 51
離線
wayout 寫到:
在啟動或關機時執行script (rc.d)執行
範例中:

AA.sh
case $1 in
start)
touch /var/lock/subsys/initscript.sh #建立空檔案
# 其他要執行的程式
sleep 10
;;
stop)
rm /var/lock/subsys/initscript.sh
# 要終止的程式
sleep 10
;;
esac

另外要去 ln -s /ect/init.d/initscript.sh /ect/rc2.d/S98initscript.sh

1.若/ect/rc2.d/ 內沒有S98initscript.sh,要手動建立空白檔嗎?
2.這樣設定好後,關機就會去執行 S98initscript.sh 嗎?
還是會執行 # 其他要執行的程式 與 # 要終止的程式


由你問的問題發現你可能對於一些最基本的概念沒有清楚的理解,這樣要回答你可能必需要從基礎談起,與其這樣,不如你去參考「鳥哥」的網站,把裡面的script章節先讀過,我想,這樣對你的幫忙會更直接。

2016/4/20 16:42
應用擴展 工具箱
回覆: 在啟動或關機時執行script (rc.d)執行
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 35
HP : 171 / 855
MP : 588 / 19052
EXP: 21
離線
wayout 寫到:
在啟動或關機時執行script (rc.d)執行
範例中:

AA.sh
case $1 in
start)
touch /var/lock/subsys/initscript.sh #建立空檔案
# 其他要執行的程式
sleep 10
;;
stop)
rm /var/lock/subsys/initscript.sh
# 要終止的程式
sleep 10
;;
esac

另外要去 ln -s /ect/init.d/initscript.sh /ect/rc2.d/S98initscript.sh

1.若/ect/rc2.d/ 內沒有S98initscript.sh,要手動建立空白檔嗎?
2.這樣設定好後,關機就會去執行 S98initscript.sh 嗎?
還是會執行 # 其他要執行的程式 與 # 要終止的程式







第一個要跟你確認的,你是使用那個版本的Ubuntu?
例如我目前使用的是 「Xubuntu 16.04 64位元」,
確認後,這樣比較好討論,因為關於init,不同版本有相異的機制,例如「sysvinit」,「upstart」,「systemd」。


我目前沒有很熟這一段,但我大概知道一些概念,
也知道用哪些關鍵字去找資料研讀,
所以我先貼一些文章,讓你研讀,也許能幫助你建立一些基本的概念。

===========================================

查詢一下之前的「討論」,把之前貼的文章貼過來。


你可以先閱讀這幾篇,對init有一些初步的了解

* 淺析 Linux 初始化 init 系統,第 1 部分: sysvinit
* 淺析 Linux 初始化 init 系統,第 2 部分: UpStart
* 淺析 Linux 初始化 init 系統,第 3 部分: Systemd
* Ubuntu Wiki / Systemd For Upstart Users

還有這篇「討論」也有貼,


* Debian Reference / Chapter 3. The system initialization
* Debian Wiki / BootProcess
* Debian Wiki / systemd Integration
* Ubuntu Community Help Wiki / UbuntuBootupHowto
* Ubuntu Community Help Wiki / UpstartHowto
* Ubuntu Community Help Wiki / InitScriptList
* Ubuntu Wiki / Systemd For Upstart Users


還有這篇「回覆: VNC 如何開機自動運行」,也有貼一些連結和操作的方法,是一個實際的案例,可以參考。


===========================================

另外下面的部落格,該作者最近寫了一系列的文章,你也可以參考(這部份我還沒認真看)

* Linux 守護進程的啟動方法
* Systemd 入門教程:命令篇
* Systemd 入門教程:實戰篇
* Node 應用的 Systemd 啟動

===========================================

若是看不習慣「簡體字」,可以使用「新同文堂」這個工具,來做「繁簡轉換」。

這是瀏覽器的外掛

* Firefox
* Chrome


若是要找新同文堂的原始碼,則可以到「Github / softcup」找到


===========================================


你也可以用上面幾個關鍵字,來找到一些資料

例如查詢「ubuntu init」,

就可以找到這篇「Debian/Ubuntu 新增開機自動執行程式

這邊跟你問的有關,它用的工具是「update-rc.d」,但背後的原理也是使用「ln

===========================================

## 第十七章、認識系統服務 (daemons)

* 第十七章、認識系統服務 (daemons)
* 第七章、Linux 磁碟與檔案系統管理 / 7.2.2 實體連結與符號連結: ln


===========================================

$ man ln
$ man update-rc.d

===========================================



以上參考,需要你去研讀消化,若樓主你研讀的過程,發現了疑問,可以再提出來討論,
我若無法回答你,我也許知道去那找參考資料讓你研讀摟,
再不然也會有其他人加入討論摟。

報告完畢,原地解散



2016/4/20 18:21
應用擴展 工具箱
回覆: 在啟動或關機時執行script (rc.d)執行
會員二級
註冊日期:
2015/11/16 9:07
所屬群組:
已註冊使用者
等級: 6
HP : 0 / 137
MP : 19 / 1624
EXP: 48
離線
您好:
謝謝,我目前用13.04。
相關文件,我會找時間消化?

謝謝!

2016/4/21 10:04
應用擴展 工具箱


 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.