誤って削除しないように、フォルダとそのファイルを読み取り専用にしようとしています。
私は走った
chmod -R 444 myfolder/
ただし、フォルダを右クリックして[プロパティ]> [権限]に移動すると、それでも読み取りと書き込みが表示されます。ファイルを修正してテストもしてみたところ、修正が成功しました。
また、ファイルマネージャのGUIで権限を読み取り専用に変更しようとすると、すぐに読み取りおよび書き込み権限に切り替えられます。
私の考えでは、4は読み取り専用アクセスを意味するということです。そうですか?
編集する:
私の問題は、ドライブをマウントする方法に関連していると思います。これはfstabエントリです。
UUID=6F7C5E910607D747 /media/storage1 ntfs-3g uid=1000,gid=1000,umask=0022,auto,rw 0 0
ベストアンサー1
ノート
この投稿は、OPがLinuxシステムでのWindowsファイルシステム(NTFS)の使用に関する追加情報を提供する前に公開されました。私の考えでは、彼はローカルのLinuxファイルシステムを使用しているようです。
所有者の読み取り、書き込み、実行可能フラグ、およびグループの読み取り、実行可能フラグを設定する必要があります。私のディレクトリ。このフォルダに入るには実行可能フラグが必要です。これがない場合は、cd myfolder
このグループまたは他のグループに属するユーザーとして行動しようとすると、「許可を拒否」というメッセージが表示されます。
chmod 755 myfolder
グループと他の人にアクセスを許可するか、
chmod 750 myfolder
グループにのみアクセスを許可し、他の人を除外します。
所有権を次に設定根とグループユーザー:
sudo chown root:users myfolder
これで、ルートだけがmyfolderに新しいファイルを作成できるようになりました。sudo touch mytest
新しいファイルには所有権root
とグループがありますroot
。
新しいファイルを強制的にグループをインポートするユーザー、SGIDビットをmyfolderに設定する必要があります。
これは2つの方法で行うことができ、結果は同じです。
sudo chmod +s myfolder
(sgidビットを追加)または
sudo chmod 2755 myfolder
(同じ+ユーザー、グループ、その他)
すると、ls -l
次のように表示されます。
drwsr-sr-x myfolder # last x optional depending on your others setting
sudo touch mytest2
今の場合、mytest2はmyfolder
644権限を持つroot
グループに属しています。users
既存のファイルは次の場所にあります。私のファイル次のように処理されます。
cd myfolder
sudo chown root:users *
sudo chmod 644 *
1 = execute
2 = write
4 = read
リード+ライト=4+2=6
PS:rootはすべてのユーザーまたはユーザーグループに置き換えることができます。
修正する @Rastapopoulosのリクエストに応じた追加の説明
myfolderが次のものであるとします。トム
これにより、chmod -R 444 myfolder/
フォルダをユーザー(tom)、グループ、その他、およびその中のすべてのファイルに対して読み取り専用にするため、トム(ルートを除く)も含め、誰もフォルダに入れることができません。実行可能なロゴ。
トムをするときはまだフォルダに入ることができませんchmod 644 myfolder
。正しい方法は、tomに読み取り、書き込み、および実行可能フラグを設定し、group / otherに読み取り実行可能フラグを設定することです。
(executable flag = 1)
つまり。chmod 755 myfolder
(ファイルではなくマイフォルダの権限のみ設定)
次のファイルの権限のみを変更してください。私のファイルしかし、myfolderの権限の代わりに、次のことを行います。
chmod 444 myfolder/*
ただし、所有者/ Tomでファイルを編集/書き込みしたい場合もあるため、そうすることをお勧めします。
chmod 644 myfolder/* (or 640)