1
Linux find命令行为异常
在最近的漏洞披露之后搜索系统解决的服务时,我发现find命令的行为非常奇怪。 root@localhost:/# find . -name "*systemd-resolved*" ./usr/share/man/man8/systemd-resolved.service.8.gz ./usr/share/man/man8/systemd-resolved.8.gz 该命令返回0或两行作为第一次运行的输出。但是,如果我第二次运行命令,则会得到: root@localhost:/# find . -name "*systemd-resolved*" ./usr/share/man/man8/systemd-resolved.service.8.gz ./usr/share/man/man8/systemd-resolved.8.gz ./lib/systemd/systemd-resolved ./lib/systemd/system/systemd-resolved.service.d ./lib/systemd/system/systemd-resolved.service 这意味着第一次“查找”并没有真正找到所有内容。同样,这仅发生一次。下次运行该命令将显示正确的输出。我在其他安装了Debian 8(jessie)的系统上进行了检查。在使用内核4.9+的计算机上,始终会出现此确切问题,但在具有内核3.16的系统上则不会发生。 系统重启后,所有这些再次发生。但是,每个系统的行为都是相同的。这意味着,如果在特定系统上进行的测试(错误地)返回两行用于第一次运行的输出,而正确地输出用于第二次运行的输出,则在重新引导系统后第一次运行命令将再次输出2行。因此,系统在每次重新启动后都会显示相同的行为(根据我的测试)。文件详细信息如下: -rw-r--r-- 1 root root ./usr/share/man/man8/systemd-resolved.service.8.gz lrwxrwxrwx 1 root root ./usr/share/man/man8/systemd-resolved.8.gz -> systemd-resolved.service.8.gz -rwxr-xr-x 1 root root ./lib/systemd/systemd-resolved drwxr-xr-x 2 root root ./lib/systemd/system/systemd-resolved.service.d -rw-r--r-- 1 root root ./lib/systemd/system/systemd-resolved.service 编辑:对于所有建议问题的人,这些特定文件可能与此特定情况有关:“ …