作为sudo从python作为pyshark/tshark运行

问题描述:

我试图用pyshark做一个实时捕捉,但它想要使用sudo运行tshark。我不知道如何从python运行sudo。 github线程指出:“你可以创建一个只运行”sudo tshark“的脚本,并告诉pyshark运行它而不是tshark。”作为sudo从python作为pyshark/tshark运行

Buuuuut我不太确定该怎么做。我一直在寻找Using sudo with Python script

却又不知道如何“跑那的,而不是tshark的”

有没有人这样做呢?任何人都可以建议吗?

位更多信息在这里:如果你是管理员用户,你不需要sudo来运行“tshark -c 100 -i en0”。如果你的“sudo chmod 777/dev/bpf *”适用于像加工中的食肉动物一样的东西,但是可以压缩所有的Pyshark。尝试编辑启动项目以使您可以读取访问权限,因为Yosemite将其投入了OSX。

其他信息:https://apple.stackexchange.com/questions/138694/what-is-access-bpf-group 我真的开始认为一些东西是刚刚起来的PyShark本身。

感谢

WELP。事实证明,这只是因为我没有使用'en0'标记为已解决。哈。

不要使用sudo运行Wireshark的。相反,将您的用户帐户配置为无需root权限即可使用Wireshark。详细说明如下:https://ask.wireshark.org/questions/7976/wireshark-setup-linux-for-nonroot-user

+0

我可以使用sudo运行wireshark和tshark w/out。我遇到的问题是PyShark出于某种原因不会这样做。此外,我在OSX上,而不是Linux发行版。 –

+0

如果你可以在没有sudo的情况下运行Wireshark和tshark,并且PyShark拒绝,那么你在PyShark中发现了一个bug,或者你还没有弄清楚它想要什么。你不应该需要sudo。 –

+0

同意,我不应该使用sudo。它是回购所有者提出的建议,所以我在这里。我不是唯一有这个问题的人。 –