web-dev-qa-db-fra.com

Autorisation refusée en cours d'exécution de la commande de recherche

J'exécute cette commande:

cleber@ubuntux:~$ find . -name "*log*" -name "*2016*"
./log-2016-05-04.txt
./log-2016-05-03.txt
./log-2016-05-08.txt
./log-2016-05-02.txt
./log-2016-05-05.txt
find: ‘./.cache/dconf’: Permission denied
./log-2016-05-01.txt
./log-2016-05-06.txt
./log-2016-05-09.txt
./log-2016-05-07.txt
./log-2016-05-10.txt
find: ‘./.dbus’: Permission denied

Pourquoi ai-je l'erreur "Autorisation refusée"? Tous mes paramètres d'autorisation sur /home/cleber sont correctement définis. Quelqu'un peut m'aider? Je vous remercie.

3
Cleber Holanda

On dirait que vous avez des dossiers avec des propriétaires incorrects (ou peut-être des autorisations) dans votre répertoire personnel.

L’avertissement Permission denied signifie que find ne peut pas rechercher dans un dossier spécifique car il n’avait évidemment pas l’autorisation de répertorier son contenu.

Dans votre répertoire personnel, la cause la plus probable est que vous exécutiez certaines applications avec l'interface graphique avec Sudo qui gâchait la propriété des fichiers. Pour résoudre ce problème et faire de vous le propriétaire de tous les fichiers de votre répertoire personnel, exécutez ceci:

Sudo chown -R $USER ~

Sinon, si vous êtes certain que toutes les autorisations et tous les droits de propriété sont corrects et que vous ne souhaitez rien modifier, vous pouvez également masquer l'avertissement de la sortie en ajoutant une redirection STDERR à /dev/null à votre commande de recherche:

find . -name "*log*" -name "*2016*" 2> /dev/null
4
Byte Commander