Chaque exécution de lsof
émet un avertissement concernant TraceFS:
$ lsof any-file
lsof: WARNING: can't stat() tracefs file system /sys/kernel/debug/tracing
Output information may be incomplete.
$ mount | grep trace
tracefs on /sys/kernel/debug/tracing type tracefs (rw,relatime)
(Ceci est sur Ubuntu 15.10, entièrement mis à jour)
Est-il normal que TraceFS soit monté pendant le fonctionnement normal?
Si oui, comment puis-je dire lsof
de l'ignorer?
filesystem
lsof
Zilk
la source
la source
lsof
tant qu'utilisateur normal a maintenant disparu.J'ai eu le même problème et cette réponse m'a aidé à mieux comprendre le problème.
J'ai découvert qu'une façon de supprimer l'avertissement ennuyeux est de démonter les debugfs
Si vous exécutez maintenant,
lsof
il n'y a aucun avertissement.la source
umount: /sys/kernel/debug: target is busy.
Le problème est que vous n'êtes pas autorisé à accéder au répertoire debugfs. Le répertoire tracefs a été créé pour permettre aux utilisateurs de monter le répertoire de traçage directement dans / sys / kernel / tracing et ne nécessite pas d'activer debugfs. Mais pour des raisons de compatibilité descendante, lors du montage du répertoire debugfs, il monterait automatiquement tracefs dans le répertoire "tracing" de debugfs.
Maintenant, lorsque vous effectuez lsof, il regarde le fichier / proc / filesystems ainsi que / proc / mounts. Il voit que tracefs est monté dans / sys / kernel / debug / tracing, et essaie donc de le stat. Malheureusement, parce que / sys / kernel / debug ne permet pas aux utilisateurs non root de voir l'intérieur, vous obtenez le message d'erreur lorsque vous essayez de statuer le répertoire "tracing" depuis / sys / kernel / debug. Si vous démontez le répertoire debugfs, l'avertissement disparaîtra.
la source
L'avertissement est écrit sur stderr. Vous pouvez toujours simplement rediriger ceci vers / dev / null:
À votre santé,
la source