Fedoraではファイルを削除できません

Fedoraではファイルを削除できません

次の権限を持つファイルがあります。

-rwSr-s---. 1 1634630331 1818884080 118784 Jun 29 1970 DailyUpdateClass.class

rootログインを使用してファイルを削除しようとするとエラーが発生します。

rm: cannot remove ‘model/DailyUpdateClass.class’: Operation not permitted

所有権を変更したり他の操作を実行したりすることはできません。

に投稿しましたスタックオーバーフローいくつか試しましたが、これまで何も役に立ちませんでした。

誰かがUnix Stack Exchangeでこれを試してみることを提案して助けを求めました。

答え1

さまざまな可能性:

  • ファイル権限行の末尾のポイントは、ルートのオーバーライドを防ぐための-rwSr-s---.拡張権限、SE Linux(確認を含むls -lZ)、またはACLスタイルの権限(確認を含む)を表します。getfacl
  • ファイルが変更不可能になりましたchattr。ファイルシステムのプロパティを確認してください。lsattr
  • ファイルは、root_squash リモートrootユーザーを権限のないアカウントに再マップするオプションを使用してエクスポートされたNFSファイルシステムにあります。実際のファイル所有者としてコマンドを実行してくださいrmsudo -u <file_owner> rm filename
  • ファイルは読み取り専用ファイルシステムにあります。mount次のコマンドを使用して確認するか、/proc/mounts
  • procIIRCでは、カーネル設定(ファイルシステム内のファイルなど)を表す特別なデバイスエントリを削除することはできませんsysfs。そうですか?

答え2

ファイルにimmutable拡張属性セットがあるため削除できません。

lsattrファイルの拡張属性を返します。

$ lsattr model/DailyUpdateClass.class
-u-Diad--j------ DailyUpdateClass.class

-u-Diad--jすべての文字()を復号化する必要があります。

のマニュアルページでlsattr見るように教えてくれます。マニュアルページforchattrは属性の説明を拡張するために使用されます。ここに関連項目をリストしました。

uこの属性が設定されたファイルが削除されると、その内容が保存されます。これにより、ユーザーは削除解除を要求できます。注:この記事の最後にあるバグと制限事項のセクションを必ずお読みください。

プロパティが設定されているディレクトリが変更されると、変更はディスクに同期的に書き込まれます。これは、ファイルサブセットにマウントオプションが適用されるのとD同じです。dirsync

一つはD少し心配です。明らかにディレクトリに固有ですが、ファイルがあります。

この属性を持つファイルはi変更できません。削除したり名前を変更したり、ファイルへのリンクを作成したり、ファイルにデータを書き込めません。スーパーユーザーまたはCAP_LINUX_IMMUTABLE機能を持つプロセスのみがこのプロパティを設定または消去できます。

この属性が設定されているファイルは、a追加モードで書き込み用にのみ開くことができます。スーパーユーザーまたはこの機能を持つプロセスのみがこのプロパティを設定または CAP_LINUX_IMMUTABLE消去できます。

この属性が設定されているファイルは、dump(8)プログラムが実行されたときのバックアップの対象ではdありません。

または、オプションを使用してファイルシステムをマウントすると、このプロパティを持つファイルはファイルj自体に書き込む前にすべてのデータをext3またはext4ログに書き込みます。このオプションを使用してファイルシステムをマウントすると、すべてのファイルデータが記録され、このプロパティは適用されません。スーパーユーザーまたはこの機能を持つプロセスのみがこのプロパティを設定または消去できます。data=ordereddata=writebackdata=journalCAP_SYS_RESOURCE

これらの問題を解決するには、をchattr使用して不変属性に関連付けられている属性を削除します。

# chattr -ia model/DailyUpdateClass.class

関連情報