Ubuntu では、upstart によって root として実行されるデーモンがあります。デーモンのログイン ユーザー名または uid を知る必要があります。
whoami、who am i、geteuid などのコマンドまたは関数を検索してテストしましたが、必要な結果が得られませんでした。
誰でも解決策を教えてもらえますか?
Ubuntu では、upstart によって root として実行されるデーモンがあります。デーモンのログイン ユーザー名または uid を知る必要があります。
whoami、who am i、geteuid などのコマンドまたは関数を検索してテストしましたが、必要な結果が得られませんでした。
誰でも解決策を教えてもらえますか?
起動スクリプトの実行時にログインしているユーザーはいません。
通常、デーモンは によって開始されますがroot
、ソフトウェアがそのように記述されているか、起動スクリプトがこのように設定されているため、専用のユーザー ID を使用することがあります。たとえば、Debian ベースのディストリビューションでは、Web サーバーは として動作するwww-data
ため、誰かが何らかの方法で Web サーバーをハッキングした場合、システムへのアクセスは非常に制限されます。ただし、これがどのように正確に構成されるかは、どのデーモンと、その起動スクリプトと構成がどのように見えるかによって異なります。
それが独自のデーモンであり、ユーザー ID を切り替えるように作成したり構成したりしていない場合は、 として実行されroot
ます。
デーモンがある種のサーバーであり、実行時にどのクライアントが接続しているかを知る必要がある場合 (実際には質問を言い換える必要がありますが)、それは主に、サーバーの起動方法ではなく、クライアントがサーバーに接続する方法の関数です。 .
このような小さなスクリプトで問題が解決する場合があります
echo "uid is ${UID}"
echo "username is ${USERNAME}"