デスクトップ環境に拘束されないように、ポルケットエージェントが利用可能であることを確認する必要があります。
今私がやっていることは、次のコードを使用してpolkitエージェントが実行されていることを確認することです。
ps aux | grep some-polkit-agent
次のsome-polkit-agent
ようになります。
polkit-gnome-authentication-agent-1
(gnome2およびgnome3-fallbackに適用)polkit-kde-authentication-agent-1
(kdeの場合)polkit-mate-authentication-agent-1
(パートナー用)lxpolkit
(LXDEの場合)
「代替なし」gnome3(gnome-shell)には、gnome-shellプロセス自体に独自のフォールケットエージェントがあるため、ps-grepを実行できません。私の仮定は、gnome-shell
実行中の場合はpolkitエージェントが所定の位置にあることです。
システムに問題があると問題が発生しますhidepid
(参照:http://www.linux-dev.org/2012/09/hide-process-information-for-other-users/)。このセキュリティ対策は、ps
ポルケットプロキシがある場合でも実行中のプロキシが私に表示されるのを防ぎます。
利用可能なポルケットプロキシを確認するより良い方法はありますか?
答え1
「利用可能なポルケットプロキシがあることを確認する必要があります。」
おそらく、特定のプロセス(プロセスpid)またはpid(システムバス名)を見ることができないので、それを使用できるようにしたいですか?
この場合、pkcheckのマニュアルページに示すように、特定のプロセスに「pkcheck」を使用してそのプロセスの戻り値を確認できます。
If the specificied process is not authorized because **no suitable**
**authentication agent is available** or if the --allow-user-interaction
wasn't passed, pkcheck exits with a return value of 2 and a diagnostic
message is printed on standard error. Details are printed on standard
output.
答え2
エージェントは dbus を介して polkit 機関に登録されます。 dbusトラフィックを傍受できる場合は、どのプロキシが登録されているかを正確に知ることができます。
答え3
に基づいてこのフォーラムの投稿、このパッケージをインストールする必要がありますpolicykit-desktop-privileges
。