1

如何在 OSX leopard 中使用 python 语言在 /var/log 目录中创建新文件?我尝试使用 os.open 函数来做,但我得到“权限被拒绝”

提前致谢

4

3 回答 3

6

只有 root 可以在/var/log/Mac OS X 上写入...:

$ ls -ld /var/log
drwxr-xr-x  60 root  wheel  2040 Oct  6 17:00 /var/log

也许考虑使用syslog标准库中的模块......

于 2009-10-07T05:16:10.690 回答
1

它可能失败了,因为 /var/log 将用户设置为 root 并将组设置为 wheel。尝试以 root 身份运行您的 python 代码,它可能会工作。

于 2009-10-07T05:11:17.897 回答
1

您可以以 root 身份创建日志文件,然后将所有者更改为运行脚本的用户

# touch /var/log/mylogfile
# chown myuser /var/log/mylogfile

其中 mylogfile 是您的日志文件,myuser 是脚本运行的用户

也看看 logrotate

于 2009-10-07T05:29:02.463 回答