① 如何在Linux中設置服務自啟動
有時候我們需要Linux系統在開機的時候自動載入某些腳本或系統服務
主要用三種方式進行這一操作:
ln -s 在/etc/rc.d/rc*.d目錄中建立/etc/init.d/服務的軟鏈接(*代表0~6七個運行級別之一)
chkonfig 命令行運行級別設置
ntsysv 偽圖形運行級別設置
注意:1.這三種方式主要用於以redhat為基礎的發行版
2.如果還不知道運行級別是什麼,那麼最好先看看相關資料再實驗
第一種方式:ln -s 建立啟動軟連接
在Linux中有7種運行級別(可在/etc/inittab文件設置),每種運行級別分別對應著/etc/rc.d/rc[0~6].d這7個目錄
Tips:/etc/rc[0~6].d其實是/etc/rc.d/rc[0~6].d的軟連接,主要是為了保持和Unix的兼容性才做此策
這7個目錄中,每個目錄分別存放著對應運行級別載入時需要關閉或啟動的服務
由詳細信息可以知道,其實每個腳本文件都對應著/etc/init.d/目錄下具體的服務
K開頭的腳本文件代表運行級別載入時需要關閉的,S開頭的代表需要執行
因此,當我們需要開機啟動自己的腳本時,只需要將可執行腳本丟在/etc/init.d目錄下,然後在/etc/rc.d/rc*.d中建立軟鏈接即可
[root@localhost ~]# ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S100ssh
此處sshd是具體服務的腳本文件,S100ssh是其軟鏈接,S開頭代表載入時自啟動
如果需要在多個運行級別下設置自啟動,則需建立多個軟鏈接
這種方式比較繁瑣,適用於自定義的服務腳本
如果系統中已經存在某些服務(比如安裝apache時就會有httpd服務項),可以使用下面的兩種方式
第二種方式:chkconfig
如果需要自啟動某些服務,只需使用chkconfig 服務名 on即可,若想關閉,將on改為off
在默認情況下,chkconfig會自啟動2345這四個級別,如果想自定義可以加上--level選項
上面我們先將sshd服務的所有啟動級別關閉,然後使用--level選項啟動自定義級別
Tips:--list選項可查看指定服務的啟動狀態,chkconfig不帶任何選項則查看所有服務狀態
第三種方式:ntsysv 偽圖形
ntsysv和chkconfig其實是一樣的,只不過加上了圖形而已
啟動ntsysv有兩種方式,一是直接在命令行中輸入ntsysv,二是使用setup命令,然後選擇系統服務
默認情況下,當前運行級別為多少,在ntsysv中設置的啟動服務的級別便是多少
比如,我當前的運行級別是3,那麼我在偽圖形界面中選擇啟動服務後,它的運行級別也會是3
如果想自定義運行級別可使用ntsysv --level方式
以上三種操作需要保證服務腳本文件可執行,並且要有root許可權
其中,第一種方式多用於自定義腳本,第二、三種多用於系統已存在的服務
比如ftp、samba、ssh、httpd等等
並且,要做相關設置需要弄清楚運行級別的問題
② Linux 開機自啟動Service 配置
為了實現Linux系統中服務的開機自動啟動,您需要按照以下步驟操作:
首先,創建一個開機啟動文件,將其命名為您希望的服務名稱,比如「xxx」。
其次,編輯創建的開機啟動文件,內容應包含指定的服務文件及運行環境的配置信息。這通常涉及編寫腳本或配置文件以描述服務如何啟動。
然後,將創建的服務添加到系統開機自動啟動項中。這通常通過將服務文件放入特定目錄(如/etc/init.d/)並創建一個符號鏈接到systemd的服務單元文件目錄來完成。
接著,查看服務狀態和運行進程,以確保服務已正確啟動並運行。這可以通過使用命令行工具(如systemctl)來實現。
最後,如果不再需要開機自動啟動該服務,可以禁用它。這可以通過修改服務的配置文件或使用systemctl命令實現。
通過以上步驟,您便能有效地在Linux系統中實現服務的開機自動啟動與管理,確保系統的穩定性和效率。
③ Linux濡備綍璁劇疆寮鏈鴻嚜鍚鍔╯h鏂囦歡
Linux濡備綍璁劇疆寮鏈鴻嚜鍚鍔╯h鏂囦歡
鍦↙inux涓錛屽紑鏈鴻嚜鍚鍔ㄥ彲浠ユ柟渚挎垜浠鐨勫伐浣滐紝鍑忓皯姣忔″紑鏈哄悗鎵嬪姩鍚鍔ㄧ殑綣佺悙鎿嶄綔銆傛湰鏂囧皢浠嬬粛Linux濡備綍璁劇疆寮鏈鴻嚜鍚鍔╯h鏂囦歡銆
緙栧啓sh鏂囦歡
棣栧厛錛屾垜浠闇瑕佺紪鍐欓渶瑕佽嚜鍚鍔ㄧ殑shell鑴氭湰鏂囦歡(sh鏂囦歡)銆備緥濡傦紝鎴戜滑緙栧啓涓涓鑴氭湰鏂囦歡test.sh錛屼唬鐮佸備笅錛
#!/bin/bash
echo"HelloWorld"
璇ヨ剼鏈鏂囦歡杈撳嚭HelloWorld錛屽彲浠ユ牴鎹闇奼傝嚜瀹氫箟鑴氭湰鍐呭廣
璁劇疆sh鏂囦歡鍙鎵ц屾潈闄
涓轟簡浣縇inux緋葷粺鍙浠ユ墽琛岃ヨ剼鏈錛屾垜浠闇瑕佺粰璇ヨ剼鏈鏂囦歡娣誨姞鎵ц屾潈闄愩
chmod+xtest.sh
璇ュ懡浠ゅ皢緇欒ヨ剼鏈鏂囦歡娣誨姞鍙鎵ц屾潈闄愩
灝唖h鏂囦歡娣誨姞鍒板惎鍔ㄩ」涓
涓轟簡浣縇inux緋葷粺鑳藉熷湪寮鏈哄悗鑷鍔ㄦ墽琛岃ヨ剼鏈鏂囦歡錛屾垜浠闇瑕佸皢璇ヨ剼鏈鏂囦歡娣誨姞鍒板惎鍔ㄩ」涓銆傛垜浠鍙浠ヤ嬌鐢╮c.local鏂囦歡鏉ュ疄鐜拌繖涓鍔熻兘銆
緙栬緫rc.local鏂囦歡
sudonano/etc/rc.local
鍦ㄨユ枃浠朵腑娣誨姞鑴氭湰鏂囦歡鐨勬墽琛屽懡浠わ紝渚嬪傦細
/path/to/test.sh
鍏朵腑錛/path/to/鏄璇ヨ剼鏈鏂囦歡鎵鍦ㄧ殑璺寰勩
淇濆瓨rc.local鏂囦歡鍚庯紝灝嗚ユ枃浠朵慨鏀逛負鍙鎵ц屾潈闄愩
sudochmod+x/etc/rc.local
嫻嬭瘯鑷鍚鍔╯h鏂囦歡
宸茬粡瀹屾垚浜唖h鏂囦歡鐨勭紪鍐欍佹坊鍔犲彲鎵ц屾潈闄愪互鍙婃坊鍔犲埌鍚鍔ㄩ」涓鐨勬搷浣滐紝鐜板湪閲嶅惎Linux緋葷粺錛屾煡鐪嬫槸鍚﹀凡緇忚嚜鍔ㄦ墽琛屼簡璇ヨ剼鏈鏂囦歡銆
鎵ц屽備笅鍛戒護閲嶅惎Linux緋葷粺錛
sudoreboot
閲嶅惎鍚庯紝鏌ョ湅杈撳嚭緇撴灉浠ュ垽鏂鏄鍚﹁嚜鍔ㄦ墽琛屼簡璇ヨ剼鏈鏂囦歡銆
鎬葷粨
鏈鏂囦粙緇嶄簡Linux濡備綍璁劇疆寮鏈鴻嚜鍚鍔╯h鏂囦歡鐨勮繃紼嬶紝鍏蜂綋鍖呮嫭緙栧啓sh鏂囦歡銆佽劇疆sh鏂囦歡鍙鎵ц屾潈闄愩佹坊鍔爏h鏂囦歡鍒板惎鍔ㄩ」涓浠ュ強嫻嬭瘯鑷鍚鍔ㄧ粨鏋滅瓑姝ラゃ傚笇鏈涙湰鏂囧規偍鏈夋墍甯鍔┿