GNU/Linux >> Linux の 問題 >  >> Linux

通常のユーザーがファイルを「chown」できないのはなぜですか?

chownはなぜですか コマンドroot-only?
root以外のユーザーがchownを使用して所有するファイルを提供できないのはなぜですか?

承認された回答:

ほとんどのUNIXシステムは、ユーザーがファイルを「譲渡」することを防ぎます。つまり、ユーザーは chownのみを実行できます。 ターゲットユーザーとグループの権限がある場合。 chownを使用しているので ファイルを所有しているか、rootである必要があります(ユーザーが他のユーザーのファイルを適切に使用することはできません)。 chownを実行できるのはrootのみです。 ファイルの所有者を別のユーザーに変更します。

この制限の理由は、ファイルを別のユーザーに渡すと、まれではあるが重要な状況で悪いことが起こる可能性があるためです。例:

  • システムでディスククォータが有効になっている場合、アリスは自分だけがアクセスできるディレクトリの下に誰でも書き込み可能なファイルを作成し(したがって、他の誰もその誰も書き込み可能なファイルにアクセスできません)、 chown> そのファイルを別のユーザーBillが所有するようにします。アリスだけがファイルを使用できる場合でも、ファイルはビルのディスククォータの下でカウントされます。
  • アリスがファイルをビルに渡した場合、ビルがそのファイルを作成しなかったという痕跡はありません。これは、ファイルに違法またはその他の危険なデータが含まれている場合に問題になる可能性があります。
  • 一部のプログラムでは、要求を認証するために、入力ファイルが特定のユーザーに属している必要があります(たとえば、ファイルには、プログラムがそのユーザーに代わって実行するいくつかの命令が含まれています)。ビルが構文的に正しい命令を含むファイルを作成したとしても、この特定の時間にそれらを実行することを意図していなかった可能性があるため、これは通常、安全な設計ではありません。それでも、アリスが任意のコンテンツを含むファイルを作成し、それをビルからの入力として受け取ることを許可すると、事態はさらに悪化するだけです。

Linux
  1. ルートレスのPodmanが私の画像をプルできないのはなぜですか?

  2. Linuxユーザーアカウント監視の概要

  3. Linuxのchmodとchown–Linuxでファイルのパーミッションと所有権を変更する方法

  1. BashスクリプトでCdを使用できないのはなぜですか?

  2. Linux で .so.1 ファイルが必要なのはなぜですか?

  3. Linux ファイルシステムを通常のユーザーとして読み取り/書き込み可能に手動でマウントするにはどうすればよいですか?

  1. chown を使用してディレクトリのグループ所有者を変更することは許可されていません....なぜですか?

  2. sudoなしでファイルをsubuidにchownするにはどうすればよいですか

  3. 常に存在し、「通常の」ユーザーが lstat できないファイルはありますか?