Gnome 3 ~/.cache/gnome-control-centerに奇妙な権限があるのはなぜですか?

Gnome 3 ~/.cache/gnome-control-centerに奇妙な権限があるのはなぜですか?

特定の操作を実行するとfindエラーdu~/.cache発生します。

$ ls ~/.cache/gnome-control-center
ls: cannot open directory /home/user1/.cache/gnome-control-center: Permission denied

所有者がディレクトリを読み取ったり閲覧したりできないようにする奇妙な権限があります(ただし、共有されている場合はユーザーグループは可能です)。

$ ls -ld ~/.cache/gnome-control-center
d-w-r-xr-T. 2 user1 user1 4096 Sep 30 16:51 /home/user1/.cache/gnome-control-center

これは書き込み専用のドロップボックスのように見えますが、一貫して適用されないため、「グループ」と「その他」は書き込み専用ではなく読み取り専用として扱います。 (以前のエンタープライズ環境では)デフォルトグループがあると仮定するとuser(拒否が優先され、権限が左から右に読み取られるため)、誰でもディレクトリを読み取ることができます。とは別に所有者。ただし、親エントリは所有者.cacheだけを読み取って閲覧できるため、そうすることはできません。

確認しました。これは他の人にも起こります。。私は2つの質問をしていると思います:

  1. この許可が愚かな理由は文書化されていますか?
  2. 自分のホームディレクトリに保存されているディレクトリから所有者をロックするには、どのような理由がありますか?

ベストアンサー1

これはバグであり、GNOME 3.30で修正されました。gitlab.gnome.org/GNOME/gnome-control-center/-/issues/49

0700この問題は、サポートされていないユーザーディレクトリ権限の生の8進値が原因で発生し、この値は10進数に誤って変換されます700。この問題を解決するには、値を文字列値'0700'として作成する必要がありますmeson.build

源泉:github.com/GNOME/gnome-control-center/commit/37a6b940cb83d97b808da77f397e34100beb263f

ビルド:config.hの "USER_DIR_MODE"値の変更

mesonは、ユーザー設定ディレクトリを作成するときにデフォルトの権限として使用される生の8進値として「USER_DIR_MODE」を定義します。

ただし、中間子は元の8進値[0]をサポートしていないため、定義では最初の「0」値が失われます。そのため、ディレクトリが無効な権限で作成されました。

中間子では、8進値を文字列として使用するように変更されているため、定義は正しい値を持ちます。

修正 #49

[0]中間者建設/中子#2047

おすすめ記事