J'exécute les tests debian avec le noyau 4.1 et la version 4.1 de l'outil perf
. Dans cette version, ils semblent avoir ajouté une sorte de protection pour empêcher les utilisateurs normaux de collecter des données à partir de cet outil. Donc, exécuter perf
en tant qu'utilisateur normal donnera cette erreur:
perf stat ls
Error:
You may not have permission to collect stats.
Consider tweaking /proc/sys/kernel/perf_event_paranoid:
-1 - Not paranoid at all
0 - Disallow raw tracepoint access for unpriv
1 - Disallow cpu events for unpriv
2 - Disallow kernel profiling for unpriv
perf_event_paranoid
en contient 3 dans mon installation. Malheureusement, je ne peux pas changer ce fichier même en tant que root. Comment autoriser mon propre utilisateur à utiliser perf
sans les droits Sudo?
Je souhaite analyser une application qui n'a pas besoin de root et je ne veux pas l'exécuter en tant que root pour l'analyse.
Les fichiers en écriture dans/proc qui sont en écriture sont généralement modifiés en leur renvoyant une valeur. Tu devrais essayer:
Sudo sh -c 'echo 1 >/proc/sys/kernel/perf_event_paranoid'