TINYPROXY——PID文件讀取錯誤


tinyproxy——A light-weight HTTP proxy daemon


 

描述:tinyproxy服務重啟時報告PID文件無法打開錯誤,但服務啟動成功。

    錯誤描述:tinyproxy.service: Can't open PID file /run/tinyproxy/tinyproxy.pid (yet?) after start: No such file or directory

    注:本人測試重啟服務器后查看tinyproxy服務狀態時並不會報告此錯誤,僅在重啟tinyproxy服務時才會報錯。

分析:PIDFile=指定了一個用於存儲服務的PID的文件路徑,對於Type=設置為forking的服務,建議使用此選項。

    系統管理器在服務啟動后會從這個文件中讀取服務主進程的PID,但是如果服務啟動后該文件還沒有寫完,則會報告錯誤該文件不可讀。

    為了使系統管理器讀取時該文件已寫完,需在服務啟動后加入一段延時,這時需要用到ExecStartPost=命令來調用/bin/sleep,參數為0.1。ExecStartPost=指令只會在ExecStart=調用成功后運行。

    命令調用順序為:調用ExecStart=命令->調用ExecStartPost=命令->調用PIDFile=命令。

方案:    

1.打開文件/lib/systemd/system/tinyproxy.service並在[Service]選項下添加以下內容:

  ExecStartPost=/bin/sleep 0.1

2.重新加載systemd程序的配置文件

  systemctl daemon-reload

3.重啟tinyproxy服務

  service tinyproxy restart

4.查看tinyproxy服務狀態

  service tinyproxy status

 

注:系統服務命令的詳細解釋可參考文件systemd.service — Service unit configuration。

  網址:https://www.freedesktop.org/software/systemd/man/systemd.service.html

 


2020-05-13 16:16:56

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM