Mac下当前用户为何没有访问权限 /var/log

MacOS中,当前用户为使用者,在终端中却没有访问/var/log/xxx.log 的权限。

user1:bin soul$ ls -la /var/ | grep log
drwxr-xr-x  56 root          wheel         1904  2 26 21:14 log
user1:bin soul$ ./searchd -c ../etc/sphinx.conf
Sphinx 3.1.1 (commit 612d99f)
Copyright (c) 2001-2018, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)

using config file '../etc/sphinx.conf'...
FATAL: failed to open log file '/var/log/searchd.log': Permission denied
shutdown complete
user1:bin soul$ whoami
soul

1)为什么 /var/log没有访问权限
2)测试某个用户对某个目录或文件是否有哪些访问权限的命令

阅读 5k
1 个回答
  1. 你的open函数的flag是啥? 确认下是只读 O_RDONLY 吗? 其他权限可不行,bin soul可没有写权限
  2. 命令? 你的ls前面的 drwxr-xr-x 不就是查看吗?
    如果是代码,用 stat 应该可以,使用方法见 man 2 stat, 里面有很多flag
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题