Hi Emadof
I think I understand what you want: a weekly course-by-course backup of the whole site. That collection of course backups is not meant as a site backup rather for situations where an individual course needs to be restored to an old state.
The problem with this approach is, the php driven backup process is very very inefficient. We had cases where powerful servers taking more then 24 h for the backup and thereby overtaken by the next backup process. OK, you have a dead line of 7 days, but that shouldn't mean your server may struggle with itself rater than servicing the visitors.
A full site backup from the shell is much faster, you can script it and schedule for early hours so that the visitors won't notice anything. The disadvantage is of course you need to restore the whole site even if you need just one course. But the restore process could too be scripted, if necessary on the spare machine. Then you can manually backup the particular course from there without disturbing the production machine. And you avoid mishaps like this "the story of the misteriously filling up hard disk"
http://moodle.org/mod/forum/discuss.php?d=191275 !
All these are common Unix system administration tasks, I might post more information if the time permits.