首先,咱們須要知道Linux系統關於運行等級的知識。在不一樣的linux系統上(例如ubuntu和Fedora)這些數字與和所表明的意義可能不一樣,但主要的有如下幾個:mysql
所以,對於普通的運行等級,服務使用等級3,這時無論X11是否啓動,服務將自動啓動。linux
在Ubuntu中,可使用sys-rc-conf命令簡單的選擇須要啓動的已安裝服務。redis
在Fedora下,可使用chkconfig達到一樣的目的。sql
固然也有其它的方法配置系統啓動時須要自動運行的服務與應用程序。在/etc/rcX.d(X表示運行等級)目錄下,有許多須要運行在每一個等級下的命令/腳本/應用。能夠把具備某種目的(維護/掛載文件系統等)的腳本連接到這個目錄下,腳本就會在系統啓動時執行。ubuntu
建立鏈接時,須要注意命名格式:Sxx或者Syy(xx和yy使用數字代替,例如K36mysqld和S64mysqld)。這些命令將根據數字的大小依次執行,字母S與K是告訴系統這是個啓動或者結束命令(S->Start, K->Kill)。就是說,在選擇中運行等級下,系統啓時執行S開頭的鏈接,關閉時執行K開頭的連接。服務器
例如:網絡
$ ls /etc/rc0.d/ -ano total 8 drwxr-xr-x. 2 0 4096 Apr 4 21:47 . drwxr-xr-x. 10 0 4096 Mar 26 22:55 .. lrwxrwxrwx. 1 0 22 Dec 12 08:48 K01livesys-late -> ../init.d/livesys-late lrwxrwxrwx. 1 0 20 Dec 12 08:12 K50netconsole -> ../init.d/netconsole lrwxrwxrwx. 1 0 15 Apr 4 20:36 K80redis -> ../init.d/redis lrwxrwxrwx. 1 0 17 Apr 4 21:47 K90network -> ../init.d/network lrwxrwxrwx. 1 0 17 Dec 12 08:48 K99livesys -> ../init.d/livesys
能夠在/etc/rc.local文件中加入須要執行的命令,當系統啓動完成時,這些命令將被執行。spa
就是說,這些命令將在運行等級3後被執行,MySql, Apache等服務後啓動完後運行。儘管這是一種簡單的方案,但我仍是推薦使用上一種方案,由於上一方案能夠徹底控制執行哪此命令,以及執行的時間和位置。固然這可能須要你有對Linux系統環境很好的瞭解。code
引用blog