Mac OS X Snow Leopard:在/ var上更改权限会导致dns查找问题

我试图解决一个问题(“/var/log/msmtp.log:权限被拒绝”错误时尝试发送邮件使用msmtp)当我这样做:

> chmod -R 770 /var 

之后,我的机器不会通过cURLparsing域名。 (ping也失败)但奇怪的是,我可以进入Safari的域名,并访问任何网页W / O问题…

我实际上不确定chmod命令是否是问题的原因,但我怀疑它是。

另外,如果我ls -l在/ var(或/ private / var)似乎没有任何的子目录或文件实际上已经改变了权限,但有很多,所以我不能确定地说…

顺便说一下,我通过在本地环境(bash)中设置TMPDIR = / tmp来修复原始错误(msmtp.log权限被拒绝)。 现在错误消失,但我得到这个错误:

 msmtp: cannot locate host domainname.org: nodename nor servname provided, or not known 

任何关于如何去获得DNS工作的想法?

运行chmod -R 700 /var将使得操作系统的一些重要部分对除root以外的任何东西都是不可访问的。 您可以使用权限修复来重新生成事物:从安装DVD启动,select主要语言,然后从“实用工具”菜单中select“磁盘工具”。 在“磁盘工具”中,从侧边栏中select您的HD,然后在右侧select“急救”选项卡,然后select“修复磁盘权限”。 这可能不会将所有的东西都修复回原来的样子(它不知道所有文件上的烫发应该是什么样的东西),但是可能会让它恢复到可以启动的地步。

如果之后成功重启,我实际上会从引导的操作系统中运行权限修复(它将使用与正在运行的操作系统相匹配的“磁盘工具”版本,并且可能会有更好的理解, 。

更多信息…

在做了一些检查后,我发现这个有用的文章debuggingmDNSResponder(在雪豹中处理DNS的守护进程) http://www.afp548.com/article.php?story=20100329090657793

不幸的是,我打开了mDNSResponder的debugging方式:

 > sudo killall -USR1 mDNSResponder 

然后我打开syslog的debugging:

 > sudo syslog -c mDNSResponder -d 

此时其他应用程序(如“应用程序监视器”)将不会加载,系统的运行速度也会降低。

看一下system.log文件,发现mDNSResponder确实有问题,似乎mDNSResponder守护进程无法启动并保持循环,并向syslog发送相同的错误消息。 我会发布消息,但我不能再获取system.log文件。 (我试图重新启动机器,但是现在好像挂了或者重启了15分钟以上)

在重新启动之前,我试图通过将这一行添加到/etc/asl.conf来closures来自mDNSResponder的system.log文件的消息:

 [= Sender mDNSResponder] ignore 

然后用以下命令重新启动syslog:

 > sudo killall -HUP syslog 

这似乎不起作用,因为消息不断涌入…

我希望我的机器重新启动…它似乎挂在重启过程中。

有关如何进行的任何想法? 我似乎正在深入挖掘自己

这最终是从备份重新安装。

在此之前,我从Snow Leopard安装DVD启动,并从磁盘工具运行权限修复,无济于事。 (磁盘实用程序似乎没有发现任何关于/ var或任何子目录的权限的问题)重新启动导致相同的行为,机器只是卡在启动窗口。

感谢大家的回应!