次のコマンドを使用して、Centos でサーバー実行可能ファイルを実行します"nohup server &"
。次に、プロセスを強制終了する必要があります"server"
。しかし"ps -a"
、コマンドを取得しようとしましたPID
が、プロセスを取得できませんでした。今、今を殺す方法"server"
は?
4 に答える
ps auxwww|grep -i 'server'
それらに含まれるすべてのプロセスを返す必要がありserver
ます。そうしないと、サーバーがすでに停止している可能性があります。
次のようにして、PID を特定 (およびファイルに保存) できるはずです。
nohup server &
print $! >> my_server.pid
nohup.out ファイルが作成されている場合は、bash で実行できます。
# lsof nohup.out
ファイルを作成/実行しているpidを返します
よろしくお願いします!
コマンドを使用して正確なプロセスをキャッチする決定的な方法はありませんps
が、次を使用できます。
ps -a | grep "server"
「サーバー」という名前で実行されているすべてのプロセスのリストを取得します
または、他のキーワードを使用して ps 出力を grep することもできます。
centos でサーバーを起動する最良の方法は、service コマンドを使用することです。
そう
service httpd start
プログラムをデーモンとして書きたい場合があります。
デーモン (またはサービス) は、ユーザーの介入がほとんどまたはまったくなく、自律的に実行されるように設計されたバックグラウンド プロセスです。Apache Web サーバーの http デーモン (httpd) は、そのようなデーモンの例の 1 つです。バックグラウンドで特定のポートをリッスンして待機し、リクエストのタイプに基づいてページを提供したり、スクリプトを処理したりします。
http://www.netzmafia.de/skripten/unix/linux-daemon-howto.htmlを参照してください。