tmpfsは、すべてのユーザーが読み取り/書き込みアクセスを許可します。

tmpfsは、すべてのユーザーが読み取り/書き込みアクセスを許可します。

/mnt/ramdisk異なるユーザー間でtmpfsフォルダ()を共有したいです。すべてのユーザーは、このフォルダ(fat32 / fuse / sambaと同様)のすべてのファイルを読み書きできる必要があります。これは、各アプリケーションに固有のuid / gidを持つAndroidで特に便利です。ソリューションはLinux/ファイルシステムレベルになければなりません。問題は、ほとんどのファイルが独自のuid / gid 600で生成されるため、他のアプリケーションがこれらのファイルにアクセスできないことです。

これはどのように達成できますか?

ベストアンサー1

(ほとんど)デフォルトのACLを使用してこれを実行できます。

mkdir dir
setfacl -d -m u::rwx,g::rwx,o::rwx dir
chmod 0777 dir

デフォルトのACLはumaskファイルを生成したプロセスのACLをオーバーライドするため、通常、プロセスは誰でも書き込み可能なファイルを生成できません。デフォルトのACLは、open(filename, flags, 0600)所有者(使用など)のみがアクセスできる「個人」ファイルを明示的に生成するプロセスを停止せず、後で権限を変更することもありません。

tmpfsCONFIG_TMPFS_POSIX_ACLACLがカーネル構成に設定されていると仮定すると、インストールオプションなしでデフォルトでサポートされているようです。

これが十分でない場合、ディレクトリ内のファイルが望ましくない方法で変更された場合は、そのファイルの権限を変更するためのいくつかの手順を設定する必要があります。cronこれには、または同様のものを使用してください。inotify

おすすめ記事