     dbg("age_m=#{opts.age_m}; min_age_m=#{opts.min_age_m}; time_since_last_backup_m=#{opts.time_since_last_backup_m}")
     async.series([
         (cb) ->
-            if opts.time_since_last_backup_m?
+            if opts.time_since_last_backup_m? or opts.local?
                 opts.database.recent_projects
                     age_m     : opts.age_m
                     min_age_m : opts.min_age_m

                        projects = v
                        cb(err)
        (cb) ->
            dbg("making backup of #{projects.length} projects")
            save_BUP_many
                database : opts.database

                            projects = []
                            cutoff = misc.minutes_ago(opts.time_since_last_backup_m)
                            for x in v
                                if opts.limit? and projects.length >= opts.limit
                                    break
                                if x.storage?.host != hostname
                                    # only consider projects on this VM
                                    continue
                                if opts.local and not fs.existsSync("/bups/#{x.project_id}") and fs.existsSync("/projects/#{x.project_id}")
                                    projects.push(x.project_id)
                                    continue
                                if x.last_backup? and x.last_edited? and x.last_backup >= x.last_edited
