web-dev-qa-db-ja.com

ファイルディレクトリの削除を防ぐためのCHMOD

Linuxサーバーでホスティングしているものもあれば、削除したくないフォルダがいくつかあります。これらの中に削除したいサブフォルダーがあります。

削除したくないフォルダにCHMODアクセス許可を設定するにはどうすればよいですか?

もちろん、「削除したくない」と言った場合、つまり、エンドカスタマーがFTPを介して、またはPHPスクリプトなどで)誤って削除してはならないということです。

ディレクトリ構造の例として...

MainFolder/SubFolder
MainFolder/Another

「MainFolder」を誤って削除したくないのですが、「SubFolder」と「Another」が削除されてうれしいです!

4
Fenton

ファイル/ディレクトリを削除すると、親ディレクトリの内容が変更されるため、MainFolderを削除したくない場合は、目的のユーザーがMainFolderの親ディレクトリへの書き込みアクセス権を持たないようにする必要があります。

この構造を想定:/some/dir/ParentDir/MainFolder/SubFolder

(すべてのユーザーの)削除を防ぐために、次のようなものを実行する必要があります。

chmod a-w /some/dir/ParentDir

もちろん、これは、ユーザーが/some/dir/ParentDirに追加のファイル/ディレクトリを追加できないので、これを書き込み不可にする手段として理想的な状況ではありません。

スティッキービットはあなたの目的によりよく合いますか?親ディレクトリにスティッキービットを設定すると、ディレクトリの所有者のみが削除できます。

chmod +t /some/dir/ParentDir

スティッキービットの詳細については、 http://en.wikipedia.org/wiki/Sticky_bit の使用法のセクションを参照してください。

11
Shawn Chin

MainFolderchownの所有者を変更できます

0
Oli

オリが言うように、あなたはchown -R new_owner Mainfolderすべてのサブディレクトリに、アクセスする所有者とは別の所有者がいることを確認します。それは他のユーザーがそれを削除するのを止めるべきです。

他のユーザーがそれにアクセスできるようにするには、グループを作成し、chgrpを使用してファイルグループを変更することもできます。このようにして、「顧客」グループのすべてのメンバーがフォルダにアクセスできます。代わりに、全員にアクセスを許可する場合は、他のビットを読み取るように設定します。

ご了承ください chmod -R/chown -R/chgrp -R/chcon -R権限を再帰的に設定します。

0
user32616