私はという名前のディレクトリをdir1
所有しておりroot
、権限を持っています777
。が所有し、権限を持つfile1
inside というファイルがあります。名前は一般ユーザーとしてログインしています。dir1
root
644
user1
vimで編集すると、file1
読み取り専用ファイルとして宣言されて保存できるのはなぜですかwq!
?sudo
私が入らない場合は、書き込みアクセスを拒否する必要があると思います。
編集後の所有権がからにfile1
変更されたことを確認しました。また、権限をに変更すると期待が満たされることも確認しました。つまり、書き込みアクセスが拒否されました。root
user1
dir1
775
答え1
これは、dir1
すべてのユーザーに書き込み権限が与えられているために発生します。権限があれば、777
誰でもディレクトリを表示してコンテンツを作成/削除できます。
これで、基準はwq!
vimを使用するとvimを削除file1
し、新しい権限セットで再生成してuser1
書き込みアクセスを許可することです。これはuser1
、内部的にファイルを削除して生成する機能のために可能です。dir1
# at beginning
$ ls -li file1
# after vim wq!
$ ls -li file1
ただし、dir1の権限をに変更すると、もはやファイルの作成/削除は775
許可されません。したがって、vimは元のファイルを削除して再作成することはできません。user1
dir1
file1