(1) 自啟動服務的重要性:
1)需要手動新增希望的自啟服務,如安裝svn後沒有自動新增,需要我們手動加入
2)安裝某些程式後,自動加到自啟動了,但我們不需要,需要手動移除
3)很多惡意程式都會把自己加入自啟動,需要我們排查刪除
(2)執行級別的原理:
/etc/rc.d/rc[0-6].d 這7個目錄,代表
linux的7個執行級別;
/etc/inittab 檔案中指定了系統啟動時預設進入哪個級別;
linux進入執行級別後,就會進入對應的 rcn.d 目錄,按照檔名順序檢索目錄下的檔案;
rcn.d 目錄下都是一些鏈結檔案,這些鏈結檔案都指向 /etc/init.d 目錄下的service指令碼檔案,例如:
命名規則為:
k+nn+服務名,或 s+nn+服務名;
k – 系統將終止對應的服務;
s – 系統將啟動對應的服務;
nn – 兩位數字,執行順序
7個執行級別:
0 – 停機
1 – 單使用者模式,root許可權,用於系統維護,禁止遠端登陸
2 – 多使用者狀態,沒有 nfs
3 – 標準多使用者模式,登陸後進入命令列模式
4 – 系統未使用,保留
5 – 多使用者圖形模式,登陸後進入圖形gui模式
6 – 重新啟動
伺服器一般都是命令列模式,所以預設執行級別為 3
(3)新增自啟程式
1)/etc/init.d 目錄中新增(
以啟動svn為例)
a)在 /etc/init.d 目錄下建立啟動服務的指令碼
vim /etc/init.d/svn 內容
#!/bin/bash
svnserve -d -r /svn倉庫路徑
設定執行許可權
chmod 755 /etc/init.d/svn
b)把這個指令碼軟鏈結到 /etc/rc.d/rc3.d
ln -s /etc/init.d/svn /etc/rc.d/rc3.d/s101svn
s 代表是要執行這個指令碼,101 是執行順序,通常要大於60,這樣可以保證基礎服務都已經啟動完成
重啟linux測試
2)/etc/rc.local 檔案中新增
直接修改 /etc/rc.local
該指令碼是在系統初始化級別指令碼執行之後再執行的,因此可以在裡面新增想在系統啟動之後執行的指令碼
3)chkconfig 命令新增
如何禁止自啟程式?
a)直接刪除 /etc/rc.d/rcn.d 目錄的目標鏈結檔案
b)刪除 /etc/rc.local 檔案中定義的啟動指令碼
c)檢視自啟動服務列表,從中選擇目標服務執行禁止操作
chkconfig –list
chkconfig –del 服務名
Linux 開機自啟服務
需求 需要在linux啟動的時候開啟某些服務 比如說 開啟 zookeeper hdfs yarn服務 注意 因為這些服務需要用到ssh通訊所以要保證 ssh服務先啟動,並且網路服務啟動 方法一 非最終解決方法 在 etc rc.local中新增 如果不想將指令碼粘來粘去,或建立鏈結什麼的,則 st...
linux開機服務自啟
有時候我們需要linux系統在開機的時候自動載入某些指令碼或系統服務,主要用三種方式進行這一操作 ln s 在 etc rc.d rc d目錄中建立 etc init.d 服務的軟鏈結 代表0 6七個執行級別之一 chkonfig 命令列執行級別設定 ntsysv 偽圖形執行級別設定 注意 這三種方...
linux服務 程序開機自啟
一 etc rc.local 在檔案最後一行新增要執行程式的全路徑。如mongodb tomcat jenkins 放在tomcat中啟動只需要新增tomcat啟動指令碼 sleep 3 sleep 3 二 註冊系統服務 chkconfig add 服務名 chkconfig leve 啟動級別 服...