Volevo rimuovere le applicazioni dai servizi di localizzazione nelle impostazioni di sicurezza e privacy su MaC OS X 10.8 Mountain Lion. (Le app erano ancora elencate anche se sono state disinstallate.) Ho trovato il post Rimuovi applicazione dai servizi di localizzazione in Sicurezza e privacy su Mac OS X 10.7 , e questo mi ha portato nella giusta direzione. Ecco l'equivalente di OS X 10.8.2 Mountain Lion che ha funzionato per me. La differenza principale è la posizione del file client.plist. Volevo anche fornire un processo graduale.
NOTA BENE: Questo ha funzionato per me. Assicurati di avere un buon backup del tuo sistema. Questo processo include l'esecuzione di un backup del file client.plist, ma non si può mai essere troppo sicuri.
1. Avviare il terminale e quindi sudo su una shell di root
sudo -s
2. Vai a / var / db / locationd
cd /var/db/locationd
3. Effettuare un backup del file client.plist
cp -p clients.plist clients.plist.save
4. Converti client.plist in xml (formato modificabile)
plutil -convert xml1 clients.plist
5. Utilizzare vi (vim) per modificare il file client.plist e rimuovere l'applicazione.
vi clients.plist
Il file conterrà probabilmente molte voci dell'applicazione. Ecco il formato di una singola voce dell'applicazione (Safari in questo caso). L'intera voce deve essere cancellata.
<key>com.apple.Safari</key>
<dict>
<key>Authorized</key>
<true/>
<key>BundleId</key>
<string>com.apple.Safari</string>
<key>Executable</key>
<string>/Applications/Safari.app/Contents/MacOS/Safari</string>
<key>LocationTimeStopped</key>
<real>376348187.80421197</real>
<key>Registered</key>
<string>/Applications/Safari.app/Contents/MacOS/Safari</string>
<key>RequirementString</key>
<string>identifier "com.apple.Safari" and anchor apple</string>
<key>Whitelisted</key>
<false/>
</dict>
6. Convertire il file client.plist nuovamente in binario
plutil -convert binary1 clients.plist
7. Riavvia posizioned
killall locationd
Se le app sono ancora lì, esegui di nuovo il processo, tranne riavviare locationd usando kill -9 dopo aver determinato il PID come segue. Il PID è il secondo campo nell'output ps.
ps -ef | grep locationd | grep -v grep
Produzione: 205 427 1 0 6:31PM ?? 0:00.07 /usr/libexec/locationd
kill -9 427
Ho eseguito il processo due volte per rimuovere un'app alla volta. La prima volta, killall è stato sufficiente. La seconda volta non lo era. Non so perché. Ha funzionato come locationd stava mantenendo una cache e ricostruendo client.plist. Dico questo perché le voci sono state aggiunte di nuovo a clients.plist dopo aver eseguito killall - e anche al riavvio. Qualunque sia la causa principale, usando kill -9 ho risolto il problema per me.
Se le cose vanno male, copia nuovamente il file originale e riavvia locationd.
cp -p clients.plist.save clients.plist
killall locationd
(o il metodo kill -9)
Spero che aiuti. Saluti!