From AwkwardTV
Revision as of 17:23, 24 March 2007 by (talk) (How to disable Watchdog)
Jump to: navigation, search

What is Watchdog

Watchdog reboots the Apple TV it if the GUI isn't running.

How to disable Watchdog

Apparently BackRow.framework tells Watchdog that "we are up and running":

strings /System/Library/PrivateFrameworks/BackRow.framework/Versions/A/BackRow
BRSettingsHelper tellWatchdogWeAreUpAndRunning

This function seems to reset the boot count but does not prevent the machine from rebooting.
There is also the key:

which is probably used in one of:

-[RUIPreferences boolForKey:]
-[RUIPreferences boolForKey:withValueForMissingPrefs:]
-[RUIPreferences canSetPreferencesForKey:]
-[RUIPreferences descriptionForKey:]
-[RUIPreferences floatForKey:]
-[RUIPreferences integerForKey:]
-[RUIPreferences objectForKey:]
-[RUIPreferences setBool:forKey:]
-[RUIPreferences setFloat:forKey:]
-[RUIPreferences setInteger:forKey:]
-[RUIPreferences setObject:forKey:]
-[RUIPreferences stringForKey:]

This seems to indicate that the auto reboot interval is stored as a key somewhere. I don't know if this is simply used for the or if there is something else on the system that will use this.

SettingsHelper has a reference to "/sbin/shutdown -r now"

Symlinking /sbin/shutdown to /usr/bin/true makes the shutdown command do nothing

Background information

This Apple document about Watchdog may shed some light: (However, on the Apple TV, there is no /etc/watchdog.conf, other than what this document is saying)

Watchdog is not used in Mac OS X 10.4: look at launchd.