Каждое выполнение lsof
выдает предупреждение о 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)
(Это на Ubuntu 15.10, полностью обновлено)
Нормально ли для TraceFS монтироваться во время нормальной работы?
Если так, как я могу сказать, lsof
чтобы пропустить это?
filesystem
lsof
Zilk
источник
источник
lsof
от имени обычного пользователя теперь исчезло.У меня была та же проблема, и этот ответ помог мне немного лучше понять проблему.
Я обнаружил, что один из способов удалить надоедливое предупреждение - это размонтировать debugfs
Если вы сейчас бежите,
lsof
предупреждения нет.источник
umount: /sys/kernel/debug: target is busy.
Проблема в том, что у вас нет прав доступа к каталогу debugfs. Каталог tracefs был создан, чтобы позволить людям монтировать каталог трассировки непосредственно в / sys / kernel / tracing и не требовать включения debugfs. Но для обратной совместимости при монтировании каталога debugfs он автоматически монтирует tracefs в каталоге «tracing» debugfs.
Теперь, когда вы выполняете lsof, он просматривает файл / proc / filesystems, а также / proc / mounts. Он видит, что tracefs монтируется в / sys / kernel / debug / tracing, и таким образом пытается его определить. К сожалению, из-за того, что / sys / kernel / debug не позволяет пользователям без полномочий root просматривать его, вы получаете сообщение об ошибке при попытке определить «трассировку» каталога из / sys / kernel / debug. Если вы отключите каталог debugfs, предупреждение исчезнет.
источник
Предупреждение написано в stderr. Вы всегда можете просто перенаправить это в / dev / null:
Ура,
источник