一、背景
同伴在頻繁更新系統(tǒng)環(huán)境,需要經(jīng)常使用reboot命令重啟,但每次重啟后端Jar都會(huì)停止,每次重啟都需要手動(dòng)啟動(dòng)Web后端Jar包。針對(duì)此種情況,想到了采用開(kāi)機(jī)自動(dòng)啟動(dòng)Jar包的方法來(lái)節(jié)省時(shí)間。
二、詳細(xì)步驟
1. 編寫(xiě)你想要開(kāi)機(jī)自動(dòng)執(zhí)行的命令。
切換到你想要裝腳本的目錄下,執(zhí)行以下命令,來(lái)編輯腳本內(nèi)容。
vim start.sh
2. 例如我想要開(kāi)機(jī)自啟Jar包,我的內(nèi)容如下。
#!/bin/bash
#添加jdk環(huán)境變量防止主出現(xiàn) 找不到 java 命令
export JAVA_HOME=lib/jvm/java-1.8.0-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
cd /home/work/
#source /etc/profile
echo "jar 包開(kāi)始部署"
nohup java -jar web.jar >/home/work/nohup.out 2>&1 &
echo "部署命令已執(zhí)行"
腳本內(nèi)容export行是來(lái)提供java環(huán)境。若該腳本執(zhí)行后,仍出現(xiàn)無(wú)法找到j(luò)ava命令,則需要在運(yùn)行jar包命令前,執(zhí)行上面代碼段中的source /etc/profile。(前提是已經(jīng)在/etc/profile中設(shè)置JAVA_HOME,PATH,CLASSPATH等環(huán)境變量)
3. 賦權(quán)腳本
需要對(duì)腳本重新設(shè)置權(quán)限,以免之后無(wú)法運(yùn)行
chmod 777 start.sh
4. 新建要啟動(dòng)的服務(wù)文件
vim /etc/systemd/system/start.service
在start.service中編輯以下內(nèi)容文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-409940.html
[Unit]
Description=***************** //你對(duì)這個(gè)服務(wù)的描述
After=network.target
[Service]
Type=forking
ExecStart=/usr/sbin/start.sh //剛才創(chuàng)建的start.sh路徑
[Install]
WantedBy=multi-user.target
5. 設(shè)置開(kāi)機(jī)自啟命令
sudo systemctl enable start.service 開(kāi)機(jī)自動(dòng)啟動(dòng)
sudo systemctl daemon-reload 更新服務(wù)
sudo systemctl start start.service 啟動(dòng)服務(wù)
sudo systemctl restart start.service 重啟服務(wù)
sudo systemctl status start.service 查看當(dāng)前服務(wù)狀態(tài)
6. 輸入sudo systemctl enable start.service 時(shí)出現(xiàn)錯(cuò)誤
請(qǐng)務(wù)必認(rèn)真檢查之前的步驟是否已完成、或檢查sh文件中代碼編寫(xiě)是否有誤,或把 start.service 改成絕對(duì)路徑文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-409940.html
到了這里,關(guān)于Ubuntu 18.04 設(shè)置開(kāi)機(jī)自啟腳本的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!