如何在重新啟動時以特定使用者身分啟動 teampeak 伺服器

如何在重新啟動時以特定使用者身分啟動 teampeak 伺服器

伺服器上的Linux版本是Centos 7.0。

Teamspeak 伺服器使用下列命令執行:

./opt/teamspeak3-server_linux-x86/ts3server_startscript.sh start

我的伺服器沒有 100% 正常運作時間。因此,我希望伺服器程式能夠使用非root用戶自動啟動。

答案1

找到了這個解決方案:

crontab -e
i
@reboot /opt/teamspeak3-server_linux-x86/ts3server_startscript.sh restart
<esc>
:wq

答案2

如果您根本不需要root特權來啟動伺服器,您可以使用類似的東西

sudo -u <username> ./opt/teamspeak3-server_linux-x86/ts3server_startscript.sh start

以使用者身分啟動它<username>

該命令列必須放置在啟動期間執行的檔案中。

IIRC 有一個本地內容的文件,其名稱有點99-local類似/etc/init.d/.如果沒有,您可以使用其他啟動文件作為模板自己編寫一個。若要安排該檔案在啟動期間運行,請使用下列命令:

chkconfig --level 345 <your file name> on

而是<your file name>相對於/etc/init.d/.

請注意,您應該指定sudo其完整路徑(例如),以防止執行放置在搜尋路徑中某處/usr/bin/sudo的另一個版本的可能性,並且您應該解析in (如果從根目錄執行,則為)。sudo../opt/.../opt/...

相關內容