首页 > 解决方案 > 如何在 MacOS 中设置目录 /var/log 的权限

问题描述

我发现当前用户没有访问权限/var/log

什么权限最适合它?

如何显示当前用户对文件夹/文件的访问权限?

user:bin soul$ ls -la /var/ | grep log
drwxr-xr-x  56 root          wheel         1904  2 26 21:14 log
user: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
user:bin soul$ 
user:bin soul$ whoami
soul
user:bin soul$ 

标签: macospermissions

解决方案


请参考chmod。例子 :

您可以像这样设置权限:

sudo chmod +wrx folder/or/file/path将为指定的文件夹或文件添加读取、写入和可执行权限(注意:这将为所有用户执行此操作。)。

要为每个用户类别指定,您可以执行以下操作:

sudo chmod u=rwx,g=rx,o=rx path/to/file/or/folder

或者

sudo chmod 755 path/to/file/or/folder

这会将其设置为当前权限集,如/var/log目录所示。

您还可以运行man chmod以获取有关该命令用法的更多详细信息。

什么权限最适合它?

默认权限足够,推荐。

如何显示当前用户对文件夹/文件的访问权限?

当前用户的权限可以从第一列确定。从里面的字符串rwxr-xr-x可以drwxr-xr-x推断出user具有读、写和可执行权限(用 表示rwx),而组和其他用户只有读和可执行权限(用 表示r-x)。


推荐阅读