亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Linux系統(tǒng)中systemd服務(wù)啟動(dòng)失敗問題排查和解決方法(以ad_auth.service為例)

 更新時(shí)間:2025年01月12日 14:23:42   作者:碼農(nóng)阿豪@新空間代碼工作室  
在 Linux 系統(tǒng)中,systemd 是管理服務(wù)和進(jìn)程的核心工具,然而,在實(shí)際運(yùn)維中,我們經(jīng)常會(huì)遇到服務(wù)啟動(dòng)失敗的情況,本文將以一個(gè)具體的案例——ad_auth.service 啟動(dòng)失敗為例,詳細(xì)介紹如何排查和解決此類問題,需要的朋友可以參考下

引言

在 Linux 系統(tǒng)中,systemd 是管理服務(wù)和進(jìn)程的核心工具。然而,在實(shí)際運(yùn)維中,我們經(jīng)常會(huì)遇到服務(wù)啟動(dòng)失敗的情況。本文將以一個(gè)具體的案例——ad_auth.service 啟動(dòng)失敗為例,詳細(xì)介紹如何排查和解決此類問題。通過(guò)本文,你將掌握一套完整的排查思路和方法,幫助你快速定位和解決服務(wù)啟動(dòng)失敗的問題。

問題描述

在運(yùn)維過(guò)程中,我們發(fā)現(xiàn) ad_auth.service 服務(wù)無(wú)法正常啟動(dòng)。通過(guò) systemctl status ad_auth.service 命令查看服務(wù)狀態(tài),得到以下日志:

● ad_auth.service - ad-auth
   Loaded: loaded (/etc/systemd/system/ad_auth.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Fri 2025-01-10 16:18:00 CST; 4s ago
  Process: 143701 ExecStart=/opt/ad_auth/deployer.sh start (code=exited, status=0/SUCCESS)
 Main PID: 143704 (code=exited, status=1/FAILURE)

Jan 10 16:17:55 admin systemd[1]: Starting ad-auth...
Jan 10 16:17:55 admin systemd[1]: Started ad-auth.
Jan 10 16:18:00 admin systemd[1]: ad_auth.service: main process exited, code=exited, status=1/FAILURE
Jan 10 16:18:00 admin systemd[1]: Unit ad_auth.service entered failed state.
Jan 10 16:18:00 admin systemd[1]: ad_auth.service failed.

從日志中可以看到,ad_auth.service 服務(wù)在啟動(dòng)后很快失敗,狀態(tài)碼為 1/FAILURE。接下來(lái),我們將逐步排查問題的根本原因。

排查步驟

1. 查看詳細(xì)日志

systemctl status 提供的日志信息有限,我們需要使用 journalctl 查看更詳細(xì)的日志:

journalctl -u ad_auth.service -b

-u 參數(shù)指定服務(wù)名稱,-b 參數(shù)限制在當(dāng)前啟動(dòng)周期內(nèi)。通過(guò)查看詳細(xì)日志,我們可能會(huì)發(fā)現(xiàn)更具體的錯(cuò)誤信息,例如文件缺失、權(quán)限問題、依賴項(xiàng)未啟動(dòng)等。

2. 檢查啟動(dòng)腳本

從日志中可以看到,服務(wù)啟動(dòng)時(shí)執(zhí)行的腳本是 /opt/ad_auth/deployer.sh start。我們需要檢查該腳本的內(nèi)容和運(yùn)行情況。

2.1 檢查腳本權(quán)限

確保腳本具有可執(zhí)行權(quán)限:

chmod +x /opt/ad_auth/deployer.sh

2.2 手動(dòng)運(yùn)行腳本

手動(dòng)運(yùn)行腳本,查看是否有錯(cuò)誤輸出:

/opt/ad_auth/deployer.sh start

如果腳本中有日志輸出,檢查日志文件或標(biāo)準(zhǔn)輸出/錯(cuò)誤輸出。例如:

/opt/ad_auth/deployer.sh start > /tmp/deployer.log 2>&1

然后查看 /tmp/deployer.log 文件,分析錯(cuò)誤信息。

3. 檢查依賴項(xiàng)

服務(wù)可能依賴于其他服務(wù)或資源。如果依賴項(xiàng)未啟動(dòng)或配置錯(cuò)誤,服務(wù)將無(wú)法正常運(yùn)行。

3.1 查看服務(wù)依賴項(xiàng)

使用以下命令查看 ad_auth.service 的依賴項(xiàng):

systemctl list-dependencies ad_auth.service

確保所有依賴項(xiàng)都已正確啟動(dòng)。

3.2 檢查網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)

如果服務(wù)依賴于網(wǎng)絡(luò)或數(shù)據(jù)庫(kù),確保網(wǎng)絡(luò)連接正常,數(shù)據(jù)庫(kù)服務(wù)已啟動(dòng)且配置正確。

4. 檢查配置文件

服務(wù)的配置文件可能存在問題,導(dǎo)致服務(wù)無(wú)法啟動(dòng)。

4.1 檢查服務(wù)單元文件

查看 /etc/systemd/system/ad_auth.service 文件,確保配置無(wú)誤:

cat /etc/systemd/system/ad_auth.service

重點(diǎn)關(guān)注以下配置項(xiàng):

  • ExecStart:?jiǎn)?dòng)命令。
  • Environment:環(huán)境變量。
  • WorkingDirectory:工作目錄。

4.2 檢查應(yīng)用配置文件

如果服務(wù)依賴于應(yīng)用配置文件,確保配置文件存在且配置正確。例如,檢查 /opt/ad_auth/config.ini 或類似文件。

5. 檢查資源限制

如果服務(wù)需要大量?jī)?nèi)存、CPU 或其他資源,可能因?yàn)橘Y源不足而失敗。

5.1 檢查系統(tǒng)資源

使用以下命令檢查系統(tǒng)資源使用情況:

free -h  # 查看內(nèi)存使用情況
top      # 查看 CPU 和內(nèi)存使用情況

如果資源不足,嘗試調(diào)整服務(wù)的資源限制。

5.2 調(diào)整資源限制

在 ad_auth.service 文件中添加資源限制配置。例如:

[Service]
MemoryLimit=512M
CPUShares=1024

然后重新加載配置并重啟服務(wù):

systemctl daemon-reload
systemctl restart ad_auth.service

6. 檢查端口沖突

如果服務(wù)需要綁定某個(gè)端口,確保端口沒有被其他進(jìn)程占用。

6.1 檢查端口占用

使用 netstat 或 ss 檢查端口占用情況:

netstat -tuln | grep <端口號(hào)>
ss -tuln | grep <端口號(hào)>

如果端口被占用,停止占用端口的進(jìn)程或修改服務(wù)配置。

7. 檢查 SELinux 或防火墻

如果啟用了 SELinux 或防火墻,可能會(huì)導(dǎo)致服務(wù)無(wú)法正常運(yùn)行。

7.1 檢查 SELinux 狀態(tài)

使用以下命令查看 SELinux 狀態(tài):

sestatus

如果 SELinux 是 enforcing 模式,嘗試將其設(shè)置為 permissive 模式以測(cè)試:

setenforce 0

7.2 檢查防火墻規(guī)則

確保服務(wù)所需的端口已開放。例如:

firewall-cmd --list-ports

如果需要開放端口,使用以下命令:

firewall-cmd --add-port=<端口號(hào)>/tcp --permanent
firewall-cmd --reload

8. 調(diào)試服務(wù)

如果以上步驟無(wú)法解決問題,可以嘗試在 ad_auth.service 文件中添加調(diào)試選項(xiàng)。

8.1 添加調(diào)試日志

在 [Service] 部分添加以下內(nèi)容:

StandardOutput=journal
StandardError=journal

然后重啟服務(wù)并查看日志:

systemctl daemon-reload
systemctl restart ad_auth.service
journalctl -u ad_auth.service -b

9. 檢查服務(wù)代碼

如果 ad_auth.service 是一個(gè)自定義服務(wù),檢查其代碼或邏輯是否有問題。例如,檢查是否有未捕獲的異常、資源泄漏或其他問題。

總結(jié)

通過(guò)以上步驟,我們可以系統(tǒng)地排查 ad_auth.service 啟動(dòng)失敗的問題。以下是完整的排查流程:

  1. 查看詳細(xì)日志,定位錯(cuò)誤信息。
  2. 檢查啟動(dòng)腳本,確保腳本可執(zhí)行且無(wú)錯(cuò)誤。
  3. 檢查依賴項(xiàng),確保所有依賴項(xiàng)已啟動(dòng)。
  4. 檢查配置文件,確保配置無(wú)誤。
  5. 檢查資源限制,確保系統(tǒng)資源充足。
  6. 檢查端口沖突,確保端口未被占用。
  7. 檢查 SELinux 或防火墻,確保服務(wù)不受限制。
  8. 添加調(diào)試日志,進(jìn)一步分析問題。
  9. 檢查服務(wù)代碼,修復(fù)邏輯錯(cuò)誤。

通過(guò)這套方法,我們可以快速定位和解決服務(wù)啟動(dòng)失敗的問題,確保系統(tǒng)穩(wěn)定運(yùn)行。

以上就是Linux系統(tǒng)中systemd服務(wù)啟動(dòng)失敗問題排查和解決方法(以ad_auth.service為例)的詳細(xì)內(nèi)容,更多關(guān)于Linux systemd服務(wù)啟動(dòng)失敗的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Linux內(nèi)存管理和尋址詳細(xì)介紹

    Linux內(nèi)存管理和尋址詳細(xì)介紹

    大家好,本篇文章主要講的是Linux內(nèi)存管理和尋址詳細(xì)介紹,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • linux swap交換分區(qū)(詳解)

    linux swap交換分區(qū)(詳解)

    當(dāng)物理內(nèi)存和swap都被使用完那么就會(huì)出錯(cuò),out of memory,本文即將學(xué)習(xí)linux swap交換分區(qū)來(lái)解決這個(gè)問題
    2021-08-08
  • Centos7 安裝 Mysql8教程

    Centos7 安裝 Mysql8教程

    這篇文章主要介紹了Centos7 安裝 Mysql8的教程,幫助大家的日常工作與學(xué)習(xí),感興趣的朋友可以了解下
    2020-08-08
  • Ubuntu下各種壓縮與解壓的方式小結(jié)

    Ubuntu下各種壓縮與解壓的方式小結(jié)

    這篇文章主要給大家介紹了在Ubuntu系統(tǒng)下各種壓縮與解壓的方式,其中包括.tar、.gz、.bz2、.bz、.Z、.tgz、.zip、.rar以及.lha等各個(gè)的解壓與壓縮方法,每一種都給出了示例代碼,需要的朋友可以參考學(xué)習(xí),一起來(lái)看看吧。
    2017-04-04
  • 在 Linux 命令行中使用 tcpdump 抓包的一些功能

    在 Linux 命令行中使用 tcpdump 抓包的一些功能

    tcpdump 是一款靈活、功能強(qiáng)大的抓包工具,能有效地幫助排查網(wǎng)絡(luò)故障問題。接下來(lái)通過(guò)本文給大家介紹在 Linux 命令行中使用 tcpdump 抓包的一些常用功能,需要的朋友參考下吧
    2018-11-11
  • 查看遠(yuǎn)程 Linux 系統(tǒng)中某個(gè)端口是否開啟的三種方法

    查看遠(yuǎn)程 Linux 系統(tǒng)中某個(gè)端口是否開啟的三種方法

    這篇文章主要介紹了查看遠(yuǎn)程 Linux 系統(tǒng)中某個(gè)端口是否開啟的三種方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-04-04
  • 正確配置與維護(hù)Apache安全性設(shè)置方法

    正確配置與維護(hù)Apache安全性設(shè)置方法

    Apache Server是一個(gè)非常優(yōu)秀,非常棒的服務(wù)器,只要你正確配置和維護(hù)好Apache服務(wù)器,你就會(huì)感受到Apache Server 所帶來(lái)的好處,同樣希望你能夠通過(guò)閱讀本文達(dá)到理論和實(shí)踐雙豐收的目的。
    2010-12-12
  • Centos7修改主機(jī)名hostname的三種方法

    Centos7修改主機(jī)名hostname的三種方法

    今天小編就為大家分享一篇關(guān)于Centos7修改主機(jī)名hostname的三種方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • Linux?命令?systemctl?基本介紹和常用選項(xiàng)

    Linux?命令?systemctl?基本介紹和常用選項(xiàng)

    這篇文章主要介紹了Linux命令systemctl,包括systemctl命令的基本介紹和常用選項(xiàng)、命令及示例,使用systemctl命令需要有管理員權(quán)限(例如root或具有sudo權(quán)限的用戶),需要的朋友可以參考下
    2023-06-06
  • Linux 平臺(tái)安裝python3.7.0環(huán)境示例【圖文說(shuō)明】

    Linux 平臺(tái)安裝python3.7.0環(huán)境示例【圖文說(shuō)明】

    這篇文章主要介紹了Linux 平臺(tái)安裝python3.7.0環(huán)境的方法,需要的朋友可以參考下
    2016-10-10

最新評(píng)論