linux腳本啟動服務命令?服務開機自啟動chkconfig,下面我們就來說一說關于linux腳本啟動服務命令?我們一起去了解并探讨一下這個問題吧!
服務開機自啟動
chkconfig
如果linux上安裝了chkconfig,可直接通過:
chkconfig --add 服務名或腳本名稱
添加開機啟動服務。通過:
chkconfig --list
查看服務開啟情況。
沒有安裝chkconfig可通過一下命令安裝:
# Ubuntu下安裝
apt-get install chkconfig
# centos安裝
yum install chkconfig
對于高版本Ubuntu配置開機自啟動
對于高版本的Ubuntu,需要通過systemctl運行服務,并安裝systemctl的标準配置開機啟動。
高版本啟動服務:
systemctl start 服務名
配置基本服務
高版本配置基本服務流程:
systemctl service服務文件夾在/lib/systemd/system(基本服務文件夾)與/etc/systemd/system(開機啟動文件夾)下,配置時先将基本服務放置到兩個文件夾下。
基本服務文件内容:
[Unit]
Description=服務描述
[Service]
Type=forking
ExecStart=啟動時命令(相當于命令行的一條指令)
ExecReload=重載時命令
ExecStop=停止時命令
PrivateTmp=true
[Install]
WantedBy=multi-user.target
Alias=别名
解釋:
[Unit] 段: 啟動順序與依賴關系。
[Service] 段: 啟動行為,如何啟動,啟動類型。
[Install] 段: 定義如何安裝這個配置文件。
這是基本服務的文件配置。
基本服務文件配置好并放在/lib/systemd/system(基本服務文件夾)與/etc/systemd/system(開機啟動文件夾)下後,可通過以下命令使服務生效:
systemctl daemon-reload
注意:可能會重啟才有效。
服務開啟:
systemctl start 服務名稱
設置開機自啟動
通過一下命令設置開機自啟動:
systemctl enable 服務名
示例:使用systemctl配置mysql服務
配置mysql服務文件内容
mysql服務文件内容,定義此文件名稱為mysqld.service:
[Unit]
Description=mysql服務
[Service]
Type=forking
ExecStart=mysqld文件位置 start
ExecReload=mysqld文件位置 restart
ExecStop=mysqld文件位置 stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
Alias=mysql.server
注意:mysqld文件位置需寫上全稱,相當于調用mysqld腳本執行命令。如果你的mysqld在/usr/local下,那麼就應該填寫: ExecStart=/usr/local/mysqld start
重載服務:
systemctl daemon-reload
啟動mysql服務:
systemctl start mysqld.service
mysql服務開機啟動:
systemctl enable mysqld.service
腳本開機自啟動
使用chkconfig配置
對于任意一個編寫好可以正常運行的腳本,在其中的第二行和第三行(第一行書寫了該腳本的運行環境,一般#!/bin/bash)添加如下内容,第二行和第三行内容必須存在:
#chkconfig: 2345 80 90
#description:jiaoben
含義解釋:第二行,chkconfig後面有三個參數2345,80和90告訴chkconfig程序,需要在rc2.d~rc5.d目錄下,創建名字為 S80jiaoben的文件連接,連接到/etc/rc.d/init.d目錄下的的jiaoben腳本(也可以将腳本放到/etc/init.d目錄下)。第一個字符是S(系統自動産生),代表系統在啟動的時候,運行腳 本auto_run。同時在rc0.d、rc1.d和rc6.d目錄下,創建名字為K90auto_run的 文件連接,第一個字符為K,系統在關閉的時候,會自動關閉這個腳本。
配置好了腳本内部,保存退出,把腳本放入到/etc/init/d或者/etc/rc.d/init.d目錄下,然後調用命令配置開機啟動:
# 将腳本添加到chkconfig
chkconfig --add 腳本名稱
# 設置腳本開機啟動
chkconfig 腳本名稱 on
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!