当 tcpdump -w 遇到 Permission denied

为了定位问题,需要在Linux上使用tcpdump并且保存到文件,遇到了如下问题:

tcpdump port 9001 -w xx
tcpdump: xx: Permission denied

因为已经是root用户,所以判断不是文件系统权限的问题。

在网上查了一下,找到解决方法:将tcpdump的模式从enforce改为complain模式。

修改过程如下:

先查看处在那个模式:

grep tcpdump /sys/kernel/security/apparmor/profiles
/usr/sbin/tcpdump (enforce)

果然不是complain模式。

修改为complain模式:

aa-complain /usr/sbin/tcpdump
The program 'aa-complain' is currently not installed.  You can install it by typing:
apt-get install apparmor-utils

出现错误,按照提示安装apparmor-utils,过程略,然后再次执行:

aa-complain /usr/sbin/tcpdump
Setting /usr/sbin/tcpdump to complain mode.

查看:

grep tcpdump /sys/kernel/security/apparmor/profiles
/usr/sbin/tcpdump (complain)

 

完成

 

你可能感兴趣的:(php)