2016-09-14 5 views
0

MacOSXでファイルが削除されないようにする簡単な方法を探しています。別のオペレーティングシステムでHDを読み込むなど、いつでも削除する方法があることはわかっていますが、私は技術的な知識がない人にとっては少し難しい方法を探しています。ファイルの削除を防止する

私は、所有フォルダの権限を読み取り専用に変更し、所有者を "nobody"に変更しようとしましたが、管理者パスワードでファインダを使用して簡単に削除できます。

fileHandleForUpdatingAtPathでファイルを開こうとしましたが、使用中のファイルを削除することはできないと思っていましたが、問題なくファイルを削除するだけです。

MacOSXでファイルが削除されないようにする方法はありますか?

+1

管理者パスワードのあるユーザーでもファイルの削除を防止したい場合は、絶対に避けてください。管理者権限は、この種のものを対象としているためです。管理者権限をあまり簡単に与えないでください... –

+0

@ Jean-BaptisteYunès確かに、アプリケーションの機能の1つは、誤って特定のファイルを削除しないようにすることです。 OS Xのデフォルトユーザーは自分のパスワードで管理者権限を持っているので、変更することはできません。つまり、なぜファインダーは使用中のファイルを削除できますか? – MazarD

+1

使用中のファイルを削除しても、そのファイルを使用するアプリケーションがファイルを操作できないことには注意してください。ファイルが本当に削除されるのは、それ以上のリンク(名前が好きな場合)がなく、それ以上のプロセス(望むならアプリケーション)がそれを使用している(開かれていて実際に閉じていない)場合です。 –

答えて

1

ファイルをロックすることもできます。そのため、rootでも削除できません。 chflagsコマンドを使用して

、様々なオプションが用意されています

arch "archived flag" 
opaque "opaque flag" 
nodump "nodump flag" 
sappnd "system append-only flag" 
schg "system immutable flag" 
uappnd "user append-only flag" 
uchg "user immutable flag" 

は、以下の

でもルートとして、ファイルを削除しようと
chflags schg testfile 

を行い、我々はtestFileというファイルがありますと仮定すると、否定される。今、ファイルを削除する唯一の方法は、シングルユーザーモードで起動することです。

+1

これは私が探していたものです。あなたは命の恩人です、ありがとうございます!将来の読者のために、フラグを解除するには、シングルユーザモードで次のようにします:chflags noschg testfile – MazarD

関連する問題