На новых Mac в России очень часто не работает геолокация. Решение есть

На новых Mac в России очень часто не работает геолокация. Решение есть

Я на днях получил жалобу от коллеги на то, как новые Mac начали работать в России в последние три года. Это уже неизвестно какая подобная жалоба по счёту, на которую ответил за всё это время, поэтому решил запостить сюда решение проблемы.

Ситуация: у вас (вероятно) новый Mac на чипах M2, M3 или M4. То есть купленный после середины 2022 года. Вы его начали использовать, и либо почти сразу, из коробки, либо чуть позже в нём «отвалилась» геолокация.

Не работают все сервисы, которые запрашивают ваше местоположение: виджет Погоды, автосмена часового пояса и так далее. Макбук (это касается вообще любых Маков, не только ноутбуков) выдаёт ошибки.

Сейчас кратко разберёмся, кто виноват, почему так происходит и как это решается.

Кто виноват и почему так происходит


Источник

Виновата Apple. Начиная с macOS 13, сервис геолокации в macOS работает некорректно. Он считывает местоположение устройства не по GPS (его нет в Mac), а по другим факторам, вроде IP-адреса.

В какой-то момент после релиза macOS 13, при частой смене этих факторов сервис ловит критическую ошибку, которая автоматически не «лечится». Иногда после установки очередного апдейта macOS проблема решается, но затем возвращается вновь. У некоторых она пропадает временно, после чего возвращается сама.

Система не отображает какую-то конкретную, понятную ошибку в этих случаях. Просто всё, что требует геолокацию на Mac, перестаёт работать.

Высокая частота жалоб на эту проблему в России — лишь совпадение факторов. Жалоб полно и в англоязычном сегменте интернета. Просто в РФ некоторые особо активно пользуются сервисами и способами смены IP-адреса компьютера. В результате ошибка возникает значительно чаще, чем у тех, кто этим пренебрегает.

Как это решается

Есть два пути: очевидный и грубый, но хотя бы относительно рабочий.

Очевидное решение. Перестаньте баловаться сервисами и способами смены IP-адреса, включая физические. Теоретически, тут всё понятно. В реальности возникает резонный вопрос –, а что делать тем, кто часто путешествует? Не обязательно в другие страны — в одной только России 11 часовых поясов. Так что рассматривать его всерьёз не будем.

Грубое решение. Держите bash-скрипт, который надо запускать, если у вас сломалась геопозиция на Mac.

Содержимое скрипта на всякий случай:

#!/bin/bash
pid=$(ps -ef | grep '[l]ocationd' | awk '{print $2}')
sudo kill $pid
sleep 3
if ps -p $pid > /dev/null; then
sudo kill -9 $pid
fi
/usr/libexec/locationd &

Этот скрипт ликвидирует все процессы, связанные с сервисом геолокации. Теперь он перезапустится при первом обращении к нему (например, запуске Погоды). Обычно это решает проблему.

Если скрипт вам не помог, откройте приложение Terminal (Терминал) на вашем Mac и выполните в нём следующую команду:

sudo killall locationd

Далее принцип аналогичный.

Жалобы на этот счёт отправляют в Apple уже два года, но ничего не меняется. Если хотите присоединиться, писать стоит сюда.

©  iphones.ru