Or, you can ...
01. Set up a '
root' account.
02. Log in as 'root'. If you do not have '
fast user switching' enabled - you will have to 'log out' of the existing account.
03. Seiect 'Finder's 'Go, Go to Folder...' menu item ('Command <shift> G'), and in the 'Go to Folder' drop down sheet or separate 'Go to Folder' window, that appears, enter ...
/private/etc/
... and click on the 'Go' button.
If a file' crontab' exists ...
04. Drag 'crontab' onto 'TextEdit's 'Dock' based icon.
05. Add text such as ...
# Run daily/weekly/monthly jobs.
01 3 * * * root periodic daily
02 3 * * * root periodic monthly
03 3 * * * root periodic weekly
... and select 'TextEdit's 'File, Save' menu item.
If a file 'crontab' does not exist ...
04. Open (run, launch) 'TextEdit', and select its 'Format, Make Plain Text' menu item.
05. Add text such as ...
# /etc/crontab
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#
# Run daily/weekly/monthly jobs.
01 3 * * * root periodic daily
02 3 * * * root periodic monthly
03 3 * * * root periodic weekly
... and select 'TextEdit's 'File, Save' menu item.
Note: as per '01 3 * * * root periodic daily' you enter the text as such ...
01<tab>3<tab>*<tab>*<tab>*<tab>root<tab>periodic daily
This also applies for '02 3 * * * root periodic monthly' and '03 3 * * * root periodic weekly'.
Also, I have 'periodic daily' executed at 3.01 (AM), 'periodic monthly' executed at 3.02 (AM), and 'periodic weekly' executed at 3.03 (AM). Change the values to what times you want the 'periodic's to execute.
If a file' crontab' exists ...
06. Save the changes - 'File, Save' menu item.
If a file 'crontab' does not exist ...
06. Save the changes - 'File, Save' menu item, and enter 'crontab' as the file's name, making sure you save the file the 'Desktop', and then dragging the 'Desktop' based 'crontab' file onto the opened '/private/etc/' folder's window.
07. Quit 'TextEdit'.
08. Log out as 'root' via the 'Apple, Log out System Administrator' menu item.
09. Log in to an existing account, to again use the Macintosh.
---
Now, let the Mac do what it is supposed to do - all without the need of any additional applications, error messages, file changes, etc.
[
Added 25 Feb. 2006, at 14.25.
The above instructions work, as is, without any additional steps needed, for 'Panther' (MacOS X 10.3.x); and, possibly 'Jaguar' (MacOS X 10.2.x).
---
For the above to work with 'Tiger' (MacOS X 10.4.x), and not to duplicate the 'periodic' executions - once by 'crontab' and once by 'Tiger's '
launchd' daemon / agent manager ...
... while logged in as 'root', go to '/Library/' and create a 'LaunchDaemons_disabled' folder. Then drag the three (3) files: 'com.apple.periodic-weekly.plist', 'com.apple.periodic-monthly.plist', and 'com.apple.periodic-daily.plist' from the '/Library/LaunchDaemons/' folder onto the '/Library/LaunchDaemons_disabled/' folder.
Or, if you prefer to use 'Tiger's 'launchd' services, instead of 'crontab' to manage your 'periodic's; but, at times (hours, minutes, which day, how often, etc) you want (other than what is currently entered), then ignore the above steps 03. through 09.; and instead, do the following.
03. Open the '/Library/LaunchDaemons/' folder.
04. Select and drag the three (3) files: 'com.apple.periodic-weekly.plist', 'com.apple.periodic-monthly.plist', and 'com.apple.periodic-daily.plist' onto 'TextEdit's 'Dock' based icon.
05. In 'com.apple.periodic-daily.plist's opened window scroll down to ...
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>15</integer>
</dict>
... and edit the <interger> values. The first value being - the Hour, and the second value - the Minute.
As in my earlier example, this piece of code would be edited as ...
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>1</integer>
</dict>
07. Save any changes.
08. In 'com.apple.periodic-weekly.plist's opened window scroll down to ...
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>15</integer>
<key>Weekday</key>
<integer>6</integer>
</dict>
As in my earlier example, this piece of code would be edited as ...
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>3</integer>
</dict>
... and edit the <interger> values. The first value being - the Hour, the second value - the Minute, and the third value - the Day in the week.
09. Save any changes.
10. In 'com.apple.periodic-monthly.plist's opened window scroll down to ...
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>5</integer>
<key>Minute</key>
<integer>30</integer>
<key>Day</key>
<integer>1</integer>
</dict>
As in my earlier example, this piece of code would be edited as ...
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>2</integer>
</dict>
... and edit the <interger> values. The first value being - the Hour, the second value - the Minute, and the third value - the day of the month.
11. Save any changes.
12. Quit 'TextEdit'.
13. Log out as 'root' via the 'Apple, Log out System Administrator' menu item.
14. Log in to an existing account, to again use the Macintosh.
]