特定のユーザーとして再起動時にチームスピーク サーバーを起動する方法

特定のユーザーとして再起動時にチームスピーク サーバーを起動する方法

サーバーの Linux バージョンは Centos 7.0 です。

Teamspeak サーバーは次のコマンドで実行されます:

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

私のサーバーの稼働率は 100% ではありません。そのため、非ルート ユーザーを使用してサーバー プログラムを自動的に起動したいと考えています。

答え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>

このコマンド ラインは、起動時に実行されるファイルに配置する必要があります。

99-local確か、 のような名前のローカル スタッフ用ファイルがありました/etc/init.d/。ない場合は、他のスタートアップ ファイルをテンプレートとして使用して自分で作成できます。スタートアップ時に実行されるようにファイルをスケジュールするには、次のコマンドを使用します。

chkconfig --level 345 <your file name> on

一方、 は<your file name>に相対的です/etc/init.d/

検索パスのどこかに配置されているの別のバージョンが実行されることを防ぐため、 をsudoフルパス (例: ) で指定し、を で解決する必要があることに注意してください(ルート ディレクトリから実行する場合は になります)。/usr/bin/sudosudo../opt/.../opt/...

関連情報