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

root でなくても、ホーム ディレクトリで root が所有するファイルを削除できたのはなぜですか?

解決策 1:

アクセス権、コンテンツ、およびすべての属性は、inode の一部です。名前はディレクトリ エントリにあります。アクセス許可は再帰的に継承されません (Posix ACL でデフォルトを使用する場合を除く)。

ファイルを削除すると、内部的にはディレクトリ エントリから inode へのハード リンクが削除されるだけです。すべてのハードリンクが削除され、inode が使用されていない場合、ファイルシステムはスペースを再利用します。ファイルに設定されているアクセス許可に関係なく、フォルダーに対する書き込みアクセス許可のみが必要です (不変の ext アクセス許可を除く)。空のフォルダも同様です。

空でないフォルダを削除する場合、削除するフォルダとその親に対する書き込み権限が必要です。

解決策 2:

ディレクトリを所有している場合、ディレクトリのパーミッションに基づいて、そのディレクトリとその中のコンテンツに対して何でも行うことができます。したがって、ファイルを所有していなくても、ファイルが存在するディレクトリへの読み取り/書き込み権限があったため、ファイルを削除できました。


Linux
  1. Rmが読み取り専用ファイルを削除できるのはなぜですか?

  2. ルートとして実行している場合でも、ファイルを削除できませんか?

  3. ファイルを別のユーザーのホームディレクトリに移動しますか(Sudoなし)?

  1. lsでLinuxファイルのパーミッションを確認する

  2. Linux ファイル/ディレクトリのパーミッションチートシート

  3. ディレクトリが存在すると mkdir -p が失敗する

  1. root にならずに USB にファイルを書き込むにはどうすればよいですか?

  2. アクセス許可なしで開いたときにvimを使用してファイルを強制的に編集する

  3. ユーザーのホーム ディレクトリのファイル アクセス許可を修正する必要がある