Ubuntu 12.04 Server 的 rc.local 問題 - Linux

Todd Johnson avatar
By Todd Johnson
at 2012-10-10T19:45

Table of Contents

※ 引述《isnora (nora)》之銘言:
: 希望有人可以救救我
: 我手邊有一台新裝的 Ubuntu 12.0.4 LTS Server
: 但很奇怪的是,不管我怎麼修改,開機時 rc.local 總是只執行第一個指令
: 剩下的都不會執行,但我的另一台舊的 Ubuntu Server 就沒有這個問題。
: 甚至兩台都用一樣的 rc.local 也是只有舊的會執行…… 0rz...
: 下面是我的 rc.local 內容
: /usr/local/bin/mogstored &
: /opt/nginx_ree_1.8.7/sbin/nginx
: su -l mogile -c "/usr/local/bin/mogilefsd -c /etc/mogilefs/mogilefsd.conf -daemon"
: exit 0
: 但是,我如果手動下 /etc/init.d/rc.local start 就可以順利執行
: 因為這個問題,我一直不敢將伺服器換過去,希望有人可以救一下~

真是抱歉,經過了五、六個小時的重開機,我終於知道原因了…

我看 rc.local 的說明,它上面寫說在所有的程序都執行完畢之後才會去跑

rc.local……,結果在 12.0.4.1 好像不是這麼一回事……這麼多年來第一

次遇到這種莫名奇妙的事 0rz....

我的 mogstored 在 mysql-server 執行之前就已經開跑,所以它會因為

找不到 mysql.sock 而停止~ 0rz...

最後我的解決方式是在 rc.local 上面加上 sleep 60

然後,就一切都解決了~~~

謝謝各位大德的關心~




--
Tags: Linux

All Comments

Kyle avatar
By Kyle
at 2012-10-12T12:45
因為SysV的架構要逐漸換掉了
Skylar Davis avatar
By Skylar Davis
at 2012-10-14T22:08
原先情況開機完是否真的mysql-server的PID比mogstored大?
Ethan avatar
By Ethan
at 2012-10-17T21:10
有沒有可能只是mysql-server啟動花的時間較多,而你並沒有
確保它們的dependency執行順序
Skylar DavisLinda avatar
By Skylar DavisLinda
at 2012-10-18T00:44
真是不經一事不長一智啊…真是有夠詭異的,第一次遇到…
Carol avatar
By Carol
at 2012-10-22T23:46
你理解錯了,rc.local在runlevel 2的最後一個腳本執行完畢之
後會開始運行,runlevel 2是debian/ubuntu的默認運行級別。
Steve avatar
By Steve
at 2012-10-23T18:23
如果你的mysql是用upstart啟動,那它就與runlevel無關
Selena avatar
By Selena
at 2012-10-27T16:59
upstart啟動的腳本在滿足啟動條件時就會啟動
所以很明顯,mysql什麼時候啟動與rc.local運行根本無關
Edwina avatar
By Edwina
at 2012-10-29T03:04
出現先後順序的沖突是非常合情合理的,根本不存在詭异之說
Audriana avatar
By Audriana
at 2012-10-29T16:19
如果你的某個腳本依賴于另外的腳本或服務,這時候你應該:
Quintina avatar
By Quintina
at 2012-10-30T20:41
1 將它置于依賴的服務之後啟動,如果依賴服務從屬于rc.d
Catherine avatar
By Catherine
at 2012-11-04T11:36
你可以將命令寫入rc.local,也可以寫入rc.d,但是序號要大于
被依賴的服務的序號。
Frederic avatar
By Frederic
at 2012-11-09T04:16
如果依賴服務被upstart管理,你可以在腳本內部加入條件判斷
Yedda avatar
By Yedda
at 2012-11-11T20:53
但是最合理的方式是也將該命令列入upstart,將其啟動條件設
為在被依賴服務啟動之後再啟動。
Kama avatar
By Kama
at 2012-11-12T09:32
例如mysql服務emit一個event叫sql_start
那你這條命令的啟動條件就應該是start on started sql_start
William avatar
By William
at 2012-11-17T08:16
我只想強調一件事,linux下沒有詭异的事,只有你不理解的事

Ubuntu 12.04 Server 的 rc.local 問題

Jessica avatar
By Jessica
at 2012-10-10T15:33
希望有人可以救救我 我手邊有一台新裝的 Ubuntu 12.0.4 LTS Server 但很奇怪的是,不管我怎麼修改,開機時 rc.local 總是只執行第一個指令 剩下的都不會執行,但我的另一台舊的 Ubuntu Server 就沒有這個問題。 ...

virtual box 問題

Caitlin avatar
By Caitlin
at 2012-10-10T11:02
我的系統是WIN7 裝了virtual box 灌了UBUNTU 12.04 架設Tonido雲端 我從別台電腦可以連到VB裡面 可是從WIN7這台就不行 所以找了很多有關網路的設定 安裝了一個VirtualBox Host-Only Network網卡 然後在WIN 7底下 把它跟區域連線設定br ...

安裝CentOS 5.5遇到的問題

Bethany avatar
By Bethany
at 2012-10-10T00:09
最近安裝CentOS 5.5 x86_64時, 遇到一個問題,導致無法安裝, 問題如下: 當我用光碟開機,開始安裝時, 銀幕上出現了and#34;Loading usb storage driverand#34;的訊息, 然後就出現了and#34;Choose a languageand#34;的選項, ...

gmail無法使用POP3登入

Zanna avatar
By Zanna
at 2012-10-09T14:04
各位版友好 在gamil底下用POP3登入時 出現 伺服器傳回錯誤: and#34;Connection reset by peer: The other server terminated our connection. Please contact your other email provider ...

Easystroke 會讓方向鍵失效

Gary avatar
By Gary
at 2012-10-09T13:48
小弟使用的環境是kubuntu 10.04+easystroke 之前使用了一段時間也非常喜歡easystroke帶來的方便 習慣了就有點離不開了= = 可是最近不知道是系統有更新到什麼還是有裝了什麼新東西有衝突的之類的 easystroke開啟後,方向鍵的向上鍵就會失靈,怎麼按都沒反應 可是其他方向鍵都正常 ...