ディレクトリとファイルがあり、そのディレクトリは読み取り専用としてマークされています。
$ mkdir directoryname
$ touch directoryname/filename
$ chmod a-w directoryname
-f
フラグを次に渡してもファイルを削除することはできませんrm
。
$ rm -f directoryname/filename
rm: cannot remove `directoryname/filename': Permission denied
rm
このファイルを強制的に削除する方法はありますか?もちろん、一時的に書き込み権限を付与することもできますが、directoryname
より便利な方法を探しています。
私は基本的なunlink
システムコールも同じ方法で失敗すると思います。この問題を解決する方法はありますか?
答え1
何について:
sudo rm directory/filename
または:
su -c "rm directory/filename"
ディストリビューションおよび/または設定によって異なります。
root
root
上記のコマンドの実行中は、Unix / Linuxのalmightyのように何でもできる一時的な時間があります。これは、管理者アカウントへのアクセス権を削除できるMS Windowsとは対照的です(これを解決する方法もあります)。
SELinux
役に立つ可能性のあるさまざまな拡張プロパティツールなどのツールがありますが、最終的には拡張プロパティを変更して設定(または無効にすることができる)ので、これらのツールは無視される可能性がchattr
あります。root
SELinux