Linux

Linux 長時間執行的後台服務/執行檔的副檔名是什麼?

  • May 6, 2020

我開發了一個項目/服務,它將為我提供 linux m/c 的可安裝文件。

服務:如果機器開啟,它總是在後台執行。Linux 後台程序。

只是我想知道該文件的副檔名是什麼。像 Windows 服務有 .exe 副檔名嗎?

我們是否需要在 linux 機器上擁有管理員權限才能安裝該文件?

我可能使用以下命令

[Unit]  
Description=Dotnet Core Demo service  

[Service]  
ExecStart=/bin/dotnet/dotnet Service.Sample.dll  
WorkingDirectory=/etc/SampleService/  
User=dotnetuser  
Group=dotnetuser  
Restart=on-failure  
SyslogIdentifier=dotnet-sample-service  
PrivateTmp=true  

[Install]  
WantedBy=multi-user.target

開頭的程式碼[Unit]是一個 systemd 服務文件。當你分發你的包時,你需要使用特定於包系統的方法,無論是 dpkg、RPM 還是其他東西,將服務文件放入適當的目錄(很可能是 /usr/lib/systemd/system)並擁有它根據自動啟動

$$ Install $$( systemctl enable) 節。請參閱 systemd 和相關軟體包系統的文件。 服務文件的副檔名必須是.service.

擴展無關緊要。為了使文件可執行,它需要為嘗試執行它的任何人設置可執行權限位,否則它必須用作執行它的語言或 shell 的二進製文件的參數。

對於第一個範例,設置了執行權限:

目前目錄:

./installed_file

任何其他目錄:

/path/to/installed_file

沒有執行權限集:

bash installed_file

python /path/to/installed_file

最後兩個使用 Bash 或 Python 執行文件。

如果您嘗試使用 yum、dnf、rpm、apt、dpkg、zypper、pacman 等軟體包管理器安裝它,那麼您將需要 sudo,或者您稱之為 admin。

如果您要以其他方式創建它並將其放置在只有 root 具有寫入能力的目錄中,例如/usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin,/opt/等,也是如此。

引用自:https://unix.stackexchange.com/questions/584944