从源代码构建BCC并运行测试之后"sudo/usr/share/bcc/tools/execsnoop";,我得到了以下输出:
追踪(最近一次通话(:文件"/usr/share/bcc/tools/execsnoop";,第21行,in来自bcc导入BPFImportError:没有名为bcc-的模块
这意味着什么?可以采取什么补救措施?
在安装了依赖项之后,我遵循了以下步骤:
git clone https://github.com/iovisor/bcc.git
mkdir bcc/build; cd bcc/build
# python2 can be substituted here, depending on your environment
cmake -DPYTHON_CMD=python3 ..
make && sudo make install
sudo /usr/share/bcc/tools/execsnoop #Test
这是由于python2被设置为默认python所致。
$ ls -l `which python`
lrwxrwxrwx 1 root root 7 Mar 4 2019 /usr/bin/python -> python2
有一种方法可以改变的所有出现
#!/usr/bin/python
至#!/usr/bin/python3
或
sudo ln -s /usr/bin/python3 /usr/bin/python
或
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.7 100
update-alternatives: using /usr/bin/python3.7 to provide /usr/bin/python (python) in auto mode
这将把python改为替代品python
$ ls -l `which python`
lrwxrwxrwx 1 root root 24 Nov 29 20:21 /usr/bin/python -> /etc/alternatives/python