capsh --printは実際に何をしますか?

capsh --printは実際に何をしますか?

私が知る限り、Linux機能はプロセス/ファイルベースで定義されています。しかし、 capsh --print を実行すると、ユーザーの能力が表示されます。

それでは、capsh --printは正確に何をするのでしょうか?能力は、ユーザーではなくプロセスでのみ定義されますか?

ベストアンサー1

capshlibcap提供されている機能とAPIを使用して確認する方法を調べるためのツールです。デバッグに使用できます。いつ何が起こるのかあらゆる種類の質問。

の重要な属性capshは、引数を左から右に厳密に評価することです。したがって、何かが目的の場所にない理由を特定しようとするときは、パラメータを--print挿入してそれを見つけることができます。--print実行中のプロセスの現在の状態を出力するだけですcapsh

機能に関連する機能を備えた一種のスイス軍用ナイフと考えるべきです。ツリーを作成してlibcap使用するquicktest.shライブラリが最新のカーネルなどで動作し続けていることを確認してください。スクリプトには、libcapカーネル関数を使用したさまざまな操作例と予想される結果が含まれています。

これには環境機能はもちろん、非標準カーネル動作モード(別名libcap モデル)。

たとえば、次の 2 つのシーケンスは、カーネルの動作方法によって異なる結果を生成します。

$ sudo capsh --iab=^cap_dac_override --user=$(whoami) --print
$ sudo capsh --user=$(whoami) --iab=^cap_dac_override --print

次の質問に自動的に答えることができます。これは環境を少し改善しますか?このような:

$ sudo capsh --user=$(whoami) --iab=^cap_dac_override --has-a=cap_dac_override && echo yes

また、世界を探索したいならPOSIX.1eドラフト委員会は、次のことを試すことができると想像しています。

$ sudo capsh --mode=PURE1E --user=$(whoami) --

おすすめ記事