the rc.local script which calls backup.sh is not being triggered at boot time.
As a result the /backups folder is generally empty the script runs when triggered manually.
I think a better option is use crontab
@mrunal4 what was the issue when you tried to do it with cron?
Did you get any errors.