Linux centos 7ボックスに他のユーザーと共有されているフォルダがあります。フォルダ全体の権限を777に設定しても、他のユーザーが作成した新しいファイルはまだロックされています。
フォルダは/ dataフォルダです。 「現在/dataにあるすべてのファイルと/dataに生成されたすべてのファイルは、誰もが望むすべてのタスクを実行するために常に完全に使用できる必要があります」とLinuxにどのように通知できますか?
いくつか試してみましたが、Linuxが初めてなのでよくわかりません。 chmodを使用して権限を変更する方法を知っていますが、ディレクトリ自体を変更しても変更は新しいファイルに保持されないようです。
答え1
作成したファイルの権限は、ファイルの作成時にユーザーのumaskによって定義されます。以下から私のumaskを見ることができます:
ljm[~]$ umask
0022
ユーザーは次の方法でumaskを設定できます。
umask 0000
(これにより、誰もがすべてのファイルを読み書きできるようになります。これをしないでください。)
通常、権限はファイルの所有者によって決定されます。これをランダムアクセス制御と呼びます。所有者は次のことができます。
chmod a+rw /data/file
システムのルートであれば、すべてのファイルに対してこれを行うことができます。ルートのcrontabに行を追加してchmod -R a+rw /data
1分ごとに実行することもできます。
ただし、コンピュータの他のすべてのユーザー(またはシステムにアクセスできるランダムな行人やハッカー)とは非常に良い友達でない限り、これを行わないでください。セキュリティが緩和された環境のソリューションは次のとおりです。
- アクセスするグループを作成します
/data
。chown root.datagrp /data
- ディレクトリ3777(chmod 1777 / data)を作成します。これにより、ユーザーは自分のファイルを削除できます。ただし、他のファイルではなく、すべてのファイルがこのグループに属します。
datagep
- 0002のすべてのユーザーに対してumaskを設定し、ユーザーを追加します。
datagrp
そして実際にUnix / linuxの権限について読んでください。 Googleの「unixファイル権限umaskの説明」です。