在配置服務的過程中遇到了,命令安裝服務 Nginx mongodb 後systemctl 命令提示沒有響應的命令。經過查找資料需要配置**.service 配置文件才可以。
詳細過程
Nginx
1.在系統服務目錄裡創建nginx.service文件
vi /lib/systemd/system/nginx.service
內容如下
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[Unit]:服務的說明
Description:描述服務
After:描述服務類別
[Service]服務運行參數的設置
Type=forking是後臺運行的形式
ExecStart為服務的具體運行命令
ExecReload為重啟命令
ExecStop為停止命令
PrivateTmp=True表示給服務分配獨立的臨時空間
注意:[Service]的啟動、重啟、停止命令全部要求使用絕對路徑
[Install]運行級別下服務安裝的相關設置,可設置為多用戶,即系統運行級別為3
保存退出。
MongoDB:
安裝
解壓:
tar -zxvf mongodb-linux-x86_64-4.0.5.tgz
將解壓包拷貝到指定目錄:
mv mongodb-linux-x86_64-4.0.5/ /usr/local/mongodb
加入環境變量:
vi /etc/profile
最後寫入
export MONGODBPATH=/usr/local/mongodb
export PATH=$PATH:$MONGODBPATH/bin
source /etc/profile
3. 配置
創建配置文件
touch /usr/local/mongodb/bin/mongodb.conf
寫入配置
dbpath=/usr/local/mongodb/data/db/ # 數據存儲位置,無則需創建
logpath=/var/log/mongodb.log # 日誌文件
logappend=true
port=27017
fork=true
auth=true
(1)創建服務文件:
sudo vim /usr/lib/systemd/system/mongodb.service
(2)寫入以下內容:
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/bin/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
(3)重載系統服務, 啟動
systemctl daemon-reload
systemctl start mongodb.service
閱讀更多 ZackXu 的文章