自安装Mavericks以来,我已经有好几个月了。由于我运行的是High Sierra和Lion,可以立即无缝地检测到我的地理位置,因此我有机会比较两者之间的各种网络设置,这才导致Mavericks中的问题得以解决。该问题源于“系统偏好设置”的“网络设置”窗格中的代理参数值不正确。导航至窗格,然后遵循以下路径:Advanced-Proxy,然后注意Web代理(HTTP)代理的值。它应该是127.0.0.1:8228,用冒号分隔的数字字符串转到相应的框(字段)。参数本身应为未选中状态,无需授权凭据。退出高级首选项,单击“应用”。
在更改代理的值之前,我运行了网络诊断程序。我自发地提出了后者,因为“您的地理位置目前不可用”消息在Lion中出现,并且在诊断后消失了。
重要更新
我不再遇到地理位置问题。我不确定以下是否真的是导致我在OS X Mavericks(或您运行的任何其他macOS)中找不到和定位Mac的反复失败的真正原因,但是在我的情况下,我在3个MacOS上运行了其中的2个包括连接的外部驱动器Mavericks。对于那些我禁用了Spotlight很长时间的人,仅对内部驱动器启用了它。我没有解释为什么它会击中Mavericks,但不会击中也安装在外部驱动器上的High Sierra,但是我怀疑这是由于跨所有分区的元数据索引不正确造成的。我为启动的每个分区打开了Spotlight,然后为其他两个分区关闭了它(例如,如果Mavericks是最新的,则对其他分区禁用Spotlight)。每次从3个分区之一重新启动时,我都会这样做。此后,Mavericks能够与地理定位服务建立连接,此后此功能就非常坚固。也许这对那些努力使它起作用的人有所帮助。通过重新索引驱动器来尝试运行元数据进程,并确保它是唯一的可启动分区,或者如果不是,则仅针对当前可启动分区打开Spotlight。我很想知道这个建议是否可以纠正这种烦人的行为。
重要更新#2
我突然开始在Lion中遇到这个问题,在过去的7年中,我从未使用过它,而是设法复制并解决了它。简而言之:如果无法通过操作代理设置或重新编制卷索引来解决该问题,则可能是由名为进程的较低系统级文件夹之一中的数据库高速缓存文件损坏而引起的“定位”。我要指的特定文件是数据库文件cache.db。在狮子,有一个与路径的文件夹/私人的/ var /文件夹/ ZZ / zyxvpxvq6csfxvn_n00000sm00006d / C。在该文件夹中,您会找到clients.plist文件,其中包含有关已授予对地理定位服务的访问权的每个进程和应用程序以及几个数据库文件的信息,包括在内。问题是,如果您卸载以前使用Mac地理位置的应用程序,则macOS无法正确更新它。在GUI级别,您可以在“系统偏好设置”的“安全性和隐私”设置中将其视为已卸载应用程序的空白图标。仅通过删除相应的值来更改plist不会导致上述cache.db文件的自动更新,
但会导致操作系统丢失位置信息,因此,当您位于“ “日期和时间”设置窗格的“时区”部分。解决方案是也删除cache.db文件并重新启动(重新启动很重要)。之后,系统可能需要一些时间来重建缓存。文件,但现在您的位置变得可检测并且红色别针已正确定位。现在,它使应用程序可以无缝使用您的位置。
请注意,以上所有内容均与Lion有关。在较新的版本中,“已定位”文件和文件夹的位置可能有所不同,数据库文件名及其在包含文件夹中的计数也很有可能是高概率,因此您必须自己进行调查:例如,在High Sierra中,相关文件夹位于/ private / var / db / locationd /,并且在其中隐藏了带有“ dat”前缀的文件,代替了cache.db。使用以下命令来查找client.plist文件,该文件指向可以打开以在其中查找cache.db或类似类型文件的封闭文件夹。该命令是
sudo find -x / -iname *clients\.plist* ! -ipath *yourhomefolder* ! -ipath *applications* ! -ipath *system* -prune
用您的主文件夹的实际名称替换yourhomefolder。过滤输出:您只需要包含client.plist的那些条目。仔细查看它所在的文件夹。