“Разрешение, отклоненное” при записи в/dev/stdout

AFAIK там не является таким стандартным инструментом, которому можно передать текст, и он возвращает человекочитаемую форму. Вы можете находить, что пакет выполняет упомянутую задачу для Вашего дистрибутива.

Однако я не понимаю, почему Вам, возможно, понадобится такой инструмент. Большинство пакетов, которые дают связанный вывод, обычно имеет-h или эквивалентный переключатель для человекочитаемого вывода.

1
26.08.2013, 20:49
1 ответ

Я предположил бы, что это было отклонением apparmor та операция открытия. Вы получаете что-то подобное ниже в Вашем системном журнале?

kernel: [14124112.152452] type=1400 audit(1377537799.840:40): apparmor="DENIED" operation="open" parent=111 profile="/usr/sbin/tcpdump" name="/dev/pts/0" pid=222 comm="tcpdump" requested_mask="wc" denied_mask="wc" fsuid=0 ouid=0

По умолчанию tcpdump (без-w) передает вывод stdout так или иначе - Вы пытаетесь получить данные воспроизведения по stdout? В этом случае можно использовать -w - вместо -w /dev/stdout?

Если Вы хотите использовать /dev/stdout, и конкретно /dev/pts/* через apparmor, редактирование /etc/apparmor.d/usr.sbin.tcpdump и добавьте запись:

/dev/pts/* rw,

и затем перезагрузите профиль:

apparmor_parser -r /etc/apparmor.d/usr.sbin.tcpdump
2
27.01.2020, 23:39

Теги

Похожие вопросы