我为snort安装了barnyard2,但是当我在下面运行命令时会出现此错误。
[root@localhost snort]# barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort/ -f snort.log -w /etc/snort/bylog.waldo /etc/snort/gen-msg.map /etc/snort/sid-msg.map -C /etc/snort/classification.config
Running in Continuous mode
--== Initializing Barnyard2 ==--
Initializing Input Plugins!
Initializing Output Plugins!
Parsing config file "/etc/snort/barnyard2.conf"
+[ Signature Suppress list ]+
----------------------------
+[No entry in Signature Suppress List]+
----------------------------
+[ Signature Suppress list ]+
Barnyard2 spooler: Event cache size set to [2048]
ERROR: Can not get write access to logging directory "/var/log/barnyard2". (directory doesn't exist or permissions are set incorrectly or it is not a directory at all)
Fatal Error, Quitting..
Barnyard2 exiting
并且许可是:
[root@localhost snort]# ls -l /var/log/barnyard2
-rwxrwxrwx. 1 root root 0 Aug 14 16:35 /var/log/barnyard2
在这个链接中,这个问题已经解决,但我不明白如何...
https://forums.freebsd.org/threads/barnyard2-start-service-error.51378/
答案 0 :(得分:1)
看起来那里缺少目录标志。错误消息显示
ERROR: Can not get write access to logging directory "/var/log/barnyard2". (directory doesn't exist or permissions are set incorrectly or it is not a directory at all)
可能最后一个/ var / log / barnyard2不是目录的情况可能适用。
备份文件并尝试使用权限640和相应的所有权创建目录/ var / log / barnyard2。
编辑:只要您不知道/ var / log / barnyard2的内容,请将文件重命名或移动到某个地方(以root身份< mv / var / log / barnyard2 / var / log / barnyard2名.old&#39)。现在重新启动barnyard2可能有所帮助,它可能会自己创建具有适当权限的目录。否则作为根类型' mkdir / var / log / barnyard2'然后键入> chmod 640 / var / log / barnyard2'来设置权限。另外,通过键入' ps -u |来检查运行barnyard2的用户grep" barnyard2"'。然后输入' groups< user>'为该用户找到合适的组。然后键入" chown< user>:< group>,然后将目录的所有权设置为相应的用户在/ var /日志/ barnyard2&#39 ;.
答案 1 :(得分:0)
'/ var / log / barnyard2'应该是日志目录。在你的情况下,它是一个文件。因此,请删除该文件并改为创建目录。这是步骤。以root用户身份输入命令。
rm /var/log/barnyard2
mkdir /var/log/barnyard2