Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

killsapo

macrumors newbie
Original poster
Nov 4, 2018
15
4
Milan, Italy
as per title, each time I reboot my (late 2013, unsupported) iMac, location services get defaulted to disabled, and I have to manually reenable them in system preferences: is there a solution to this, a workaround, some startup script that I could use?

all other system preferences correctly behave, only location services apparently get reset (on my admin account - the only account in use on the iMac)

thanks in advance!
 
Hi! Do you use location-based apps or services, like "find my mac" or VPN. I'd also try Safe Mode or a new user account, then move on to reinstall OS if that doesn't help (don't forget to back up your files before that, just in case).
 
Exactly the same thing is happening to me since upgrading to MaC OS Monterey. Location Services preferences are not saving. 'Enable Location Services' automatically turns on after restart and system services location services is automatically selected (even if I unchecked prior to shutting down my macbook), but Calendar is not (ie box is unchecked).

Each time I start up my macbook a prompt appears saying Calendar would like to access my location. I say 'allow'. Upon restarting the Macbook this preference is lost and the message appears once more requesting Calendar access to my location. While it is annoying to see this prompt every time every time I start my Macbook, more disconcerting is that if I uncheck (ie deselect) 'Enable Location Services', on subsequent restarts the system automatically resets to (ie selects) 'Enable Location Services' albeit for System Services (though not - Find my mac is not selected) and not for Calendar. I've tried starting in Safe Mode and also running First Aid in Disc Utility and have also checked in Privacy and Security prior to shutting down that Calendar was selected. Does anyone know of a solution?
 
Mar 7, 2021 6:57 AM in response to Deep Sky Diver

Had this as well. Some research in the file system and comparison to a Mac with working location services revealed some old /etc/master.passwd file. While this file is not used by the system usually, it still provides vital data for the early boot phase (when the locationd and geod daemons will start). I had a /etc/master.passwd~orig file as well. The latter file contains the valid entries. Copy it to /etc/master.passwd as root, reboot and you're fine. You probably need to disable the csrutil as well. Mine was off while I was tinkering with the system.

Solved the issue just a couple hours ago with this method found here.

what I did:
  • enabled root user
  • restarted in recovery mode (command+R)
  • opened terminal in recovery mode (under “Utilities”)
  • disabled csrutil (terminal command csrutil disable )
  • rebooted and logged in with root account previously enabled
  • replaced all the content in /etc/master.passwd with all the content in /etc/master.passwd~orig ( I did this with a free text editor like Atom) then saved the file
  • rebooted the mac again in recovery mode and restored csrutil ( terminal command csrutil enable )
  • rebooted the mac again and logged in in my account, location services enabled and working!
  • disabled root account
tested again, everything working so far.
 
Thanks for this, but your advice is too technical for me. I am not a computer specialist. Is there another way to address which is suitable for a more basic user and does not require the detailed stages you outline? Location services works but just will not save my preferences, so is being automatically reset and enabled (though not for Calendar services or Find My Mac) after every startup.
 
Thanks for this, but your advice is too technical for me. I am not a computer specialist. Is there another way to address which is suitable for a more basic user and does not require the detailed stages you outline? Location services works but just will not save my preferences, so is being automatically reset and enabled (though not for Calendar services or Find My Mac) after every startup.
I am just a little bit “technical”: maybe with the help of a more tech-savy friend you can work it out… unfortunately this seems the only working method (and I've been tryin every week for a year, I also tried to setup automation to switch location services on automatically after the login, but nothing worked).

Just use my post as a reference in case you find some friend to help you! That should be pretty easy for the “average tinkerer” ;)
 
  • Like
Reactions: Muse2021
I don't have the file named /etc/master.passwd~orig and tried to rename the file /etc/master.passwd to something else then rebooting the system hoping this would re-create the file, but it seems to come back to the correct name (master.passwd) automatically after a reboot... This issue with location services switching off after each reboot is getting really annoying. How can fix this in my situation?


Solved the issue just a couple hours ago with this method found here.

what I did:
  • enabled root user
  • restarted in recovery mode (command+R)
  • opened terminal in recovery mode (under “Utilities”)
  • disabled csrutil (terminal command csrutil disable )
  • rebooted and logged in with root account previously enabled
  • replaced all the content in /etc/master.passwd with all the content in /etc/master.passwd~orig ( I did this with a free text editor like Atom) then saved the file
  • rebooted the mac again in recovery mode and restored csrutil ( terminal command csrutil enable )
  • rebooted the mac again and logged in in my account, location services enabled and working!
  • disabled root account
tested again, everything working so far.
 
I don't have the file named /etc/master.passwd~orig and tried to rename the file /etc/master.passwd to something else then rebooting the system hoping this would re-create the file, but it seems to come back to the correct name (master.passwd) automatically after a reboot... This issue with location services switching off after each reboot is getting really annoying. How can fix this in my situation?
Not really an expert, but my advice would be to enable root user and restart in recovery mode (first two steps of my previous post, then follow the other steps); I don’t think you can edit or modify those files without taking these steps first, as they’re system files not editable even by admin accounts… that’s just my guess though.
 
Solved the issue just a couple hours ago with this method found here.

what I did:
  • enabled root user
  • restarted in recovery mode (command+R)
  • opened terminal in recovery mode (under “Utilities”)
  • disabled csrutil (terminal command csrutil disable )
  • rebooted and logged in with root account previously enabled
  • replaced all the content in /etc/master.passwd with all the content in /etc/master.passwd~orig ( I did this with a free text editor like Atom) then saved the file
  • rebooted the mac again in recovery mode and restored csrutil ( terminal command csrutil enable )
  • rebooted the mac again and logged in in my account, location services enabled and working!
  • disabled root account
tested again, everything working so far.
Thank you for taking the time to write such a thorough explanation. I have tried everything I could think of up to this point. I even wiped my hard drive, installed Big Sur from recovery and migrated data from another computer and still the location services would turn off after every reboot.

I followed your steps exactly and the issue is instantly corrected. I for sure am not a advanced user and was very Leary, but what can happen? I am already at the point of doing fresh installs...

I just used the mac text editor program to paste all from the one file to the other and saved. Complete fix. Maybe I broke something else, but so far it is all working fine.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.