當我啟動 CentOS 機器時,該httpd
服務會自動啟動。如何製作具有相同功能的客製化服務?我有一個用於挖礦的程序,我不想./miner
每次啟動機器時都需要運行。
答案1
由於您使用的是 CentOS 7.x,因此請建立一個單元。vim /usr/lib/systemd/system/miner.service
asroot
並輸入以下內容:
[Unit]
Description=miner
[Service]
ExecStart=/path/to/miner
[Install]
WantedBy=multi-user.target
如果有關閉或重新載入服務的特定參數,您可以新增ExecStop=
和選項。ExecReload=
之後,您只需systemctl enable miner.service
使其在每次啟動時啟動即可。
相關內容:
答案2
根據礦工程式提供者的不同,您可能已經聲明了相關的服務。
在centOS上你可以檢查:
# chkconfig --list
如果您看到您的程序,您可以告訴系統在啟動時自動運行它
# chkconfig postgresql on
如果您沒有找到任何結果,您可以使用範本建立自己的虛擬腳本,例如:
然後將其放入 /etc/init.d/ 並 chmod +x 它
您應該能夠將您的礦工應用程式作為服務進行管理,並具有其附帶的所有優勢
答案3
如果您只需要在啟動時執行命令,則實際上不需要嘗試建立實際的服務。最簡單的方法就是放入. /path/to/miner
/etc/rc.d/rc.local。該檔案是每次啟動時執行的腳本(並確保 rc.local 可執行),因此您的命令將在伺服器啟動時執行。
如果您需要將其實際作為服務進行處理,那麼最好的方法取決於您使用的是 CentOS 7 還是 5/6。
編輯:忘記提及,這將以 root 身份執行,因此如果您需要它以非 root 用戶身份運行,請改用su - username -c /path/to/miner