我正在运行 Fedora 22 并且刚刚安装了 snort:
sudo dnf install snort
当尝试运行它时,我得到:
$ snort
snort: error while loading shared libraries: libdnet.1: cannot open shared object file: No such file or directory
但我已经安装了最新版本libdnet
和libdnet-devel
软件包:
$ locate libdnet
/usr/lib64/libdnet.so
/usr/lib64/libdnet.so.1
/usr/lib64/libdnet.so.1.0.1
/usr/local/lib/libdnet.so.1.0.1
/usr/share/doc/libdnet
/usr/share/doc/libdnet/LICENSE
/usr/share/doc/libdnet/README
/usr/share/doc/libdnet/THANKS
/usr/share/doc/libdnet/TODO
我不知道从这里开始该怎么做,有人有什么建议吗?
编辑
$ rpm -q --qf "%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n" snort
snort-2.9.7.3-1.x86_64
答案1
我最近也升级到 Fedora 22 并遇到了同样的问题。我通过创建一个名为 libd.1 的符号链接解决了这个问题,它指向(在我的例子中)libdnet.so.1.0.1:
ln -s /usr/lib64/libdnet.so.1.0.1 /usr/lib64/libdnet.1
之后Snort工作了