setcap
バイナリに追加の許可を使用する場合は、ストレージまたはメモリのどこかに新しい権限を書き込む必要があります。どこに保存されますか?
そのまま使用すると、lsof
プロセスが早く消えてしまうため、機能しません。
ベストアンサー1
拡張権限(例::で設定されたアクセス制御リストsetfacl
と:で設定された機能フラグ)は、:setcap
で設定された既存の権限とset [ug] idフラグと同様に、chmod
ファイルのinode内の同じ場所に保存されます。
setcap
(inodeは既存の権限ビットを受け入れるための固定サイズを持っていますが、潜在的に無制限の拡張権限ではないため、実際にはディスクの別々のブロックに格納できますが、これはまれな場合にのみ重要です。増やすがchmod
重複排除を使用するシステムでは、すべてのディスク領域を使用できます!)
GNU ls はファイルの setcap 属性を表示しません。次のコマンドを使用して表示できます。getcap
。すべての拡張属性を一覧表示できます。getfattr -d -m -
; setcap属性は、security.capability
バイナリ形式でエンコードおよびgetcap
デコードできます。