私の古いDebianWheezyでは、htop
内のすべてのユーザーからのすべてのプロセスSudoがない通常のユーザーとして表示されます。私の新しいDebianWheezyでは、自分のプロセスしか表示されません。
私が気付いた違いは、古いシステムでは/proc/1/
にr-xr-xr-x
権限があり、新しいシステムではr-x------
のみであるということです。
/etc/fstab
からの行:
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
mount
は以下を返します。
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
hidepid=0
を追加して再起動すると:hidepid=0
。
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults,hidepid=0 0 0
mount
は、以下と同じように返します。
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
すべてのプロセスを通常のユーザーとして表示するにはどうすればよいですか?
私は問題を見つけました。カーネルはgrsecurityでコンパイルされ、他のユーザーからプロセスを隠します。デフォルトのカーネルでは、すべてが正常に機能します。
hidepid
は、他のユーザーからプロセスを隠すprocfsのマウントオプションです。 3つの設定があります。
hidepid=0
:誰でも/proc/PID
内の誰でも読み取り可能なファイルを読み取ることができますhidepid=1
:ユーザーは、自分のユーザーに属する/proc/PID
ディレクトリとファイルにのみアクセスできます。hidepid=2
:hidepid=1
と同じですが、他のユーザーのプロセスは/proc/PID
に表示されません。/proc
がマウントされたマウントオプションを確認するには、mount | grep /proc
を実行できます。
詳細については、カーネルのドキュメントのマウントオプションのセクションで proc filesystem を、および nixCraftの記事 を参照してください。