
ps
実行中のプロセス(または使用など)を一覧表示したいが、top
procfsがインストールされていません。
アンマウントされたprocfは、悪意のあるユーザーがシステム情報にアクセスするのを防ぐように意図的に設計されています。
実行中のプロセスを引き続き一覧表示する方法はありますか?それとも不可能ですか?
私はLinux 3.16を使用しています。
答え1
答え2
ps
すべての情報はマウントされたprocfから取得されるため、procfがない場合、この情報のソースはありません。私が見ることができる唯一のオプションは、procをマウントしてps / topを呼び出してからアンマウントすることです。これはリスクを最小限に抑えます。
答え3
アンマウントされたprocfは、悪意のあるユーザーがシステム情報にアクセスするのを防ぐように意図的に設計されています。
procfsをインストールしないことがこの目標を達成する唯一の方法ではありません。
権限のないユーザーが自分のプロセスのみを表示できるように、オプションを使用してprocfsをマウントできます。hidepid=2
これはシステムに関する多くの情報を隠します。バラよりproc(5)
この機能に関する追加情報。
procfsへのアクセスをさらに制限するには(プロセスに関する情報だけでなくetcなどのファイルも含めてこれらの部分を非表示にしないためcpuinfo
) 、modules
マウントhidepid
ポイントに0711または0700などの制限モードを指定できます。 。/proc
所有者がルートの場合、後者の場合、ルートのみがprocfsにアクセスできます。つまりps
、top
などを使用してhtop
確認できますが、/proc/mdstat
rootとしてログインした場合にのみ可能で、他のユーザーはこれを確認できません。アクセスしようとすると、「許可拒否」エラーが発生します/proc
。
また、多くのプログラムがインストールに依存しているため(procfsだけでなくps
)、システムにprocfsがまったくないことをお勧めしません。