POSIX find-grepでこれらの「許可拒否」を読むことができる理由は何ですか?

POSIX find-grepでこれらの「許可拒否」を読むことができる理由は何ですか?

Posixでこれを実行しているfind $HOME +perm 0666 -type f -exec grep -l "XSym" {} \;が理解できないメッセージが表示されます。

find: ‘/home/masi/.dbus’: Permission denied
grep: /home/masi/.viminfo: Permission denied
grep: /home/masi/.cache/dconf/user: Permission denied

~から

drwx------  3 root root     4096 Jun 18 14:49 .dbus
-rw-------  1 root root     6266 Jun 18 13:24 .viminfo
-rw------- 1 root root 2 Jun 18 14:51 /home/masi/.cache/dconf/user

私は二重否定構造とPosix以外のものが好きではありません。! -perm -g+r,u+r,o+r -prune ここ私はこれが同じだと思います! -perm 0444 -prune

クサラナンダ復元後の提案

はい

# http://unix.stackexchange.com/a/121020/16920
find / -type d \! -perm 0666 -prune -o -type f -name '._*' -print

出力:ファイルがありません。期待される出力:多くの適切なファイルを含む多くのファイル。私は走る

find / -type d \! -perm +0666 -prune -o -type f -name '._*' -print

わかりました。

find: invalid mode ‘+0666’

システム: Ubuntu 16.04 64 ビット
Grep: 2.25
検索: 4.7.0-git

ベストアンサー1

これらのファイルとディレクトリはあなたのものではなくユーザーのものであり、アクセスと操作の権限がroot過度に制限されています。そのため、ディレクトリに入ることができないと文句を言い(作業を実行し)、ファイルを読み取れないと文句を言います(作業を実行します)。findgrepfind/home/masi/.dbusgrepそれ働く)。

これらのファイルとディレクトリは、ホームディレクトリにあってもあなたのものではありません。彼らがユーザーに属しているのは、何よりもファイルとディレクトリを作成したプログラムが何であれ、何かを実行したからrootです。vimroot

chown masi:masiを使用してこれらのファイルとディレクトリの所有権を変更できますが(ユーザー名とデフォルトのグループ名に置き換える必要がある場合は、他のファイルを参照)、これを行う必要があるため、masi:masiroot使用してくださいsudo chown ...

確かにしたいならみんなホームディレクトリのファイルとディレクトリはあなたの所有ですが、sudo chown -R masi:masi $HOMEまずそれが本当に欲しいものであることを確認してください。

編集する$HOME:その中のすべてのファイルとディレクトリを探します。いいえユーザーに属し、masi次の操作を行います。

$ find $HOME \! -user masi

おすすめ記事