                             if output?.stderr? and output.stderr.indexOf('does not exist') != -1
                                 err = undefined
                         cb(err)
+                ###
         (cb) ->
             dbg("throw in a umount, just in case")
             create_user

                    project_id : project_id
                    cb         : (err) ->
                        if err
                            errors[project_id] = err
                        cb()
            async.mapLimit(projects, opts.limit, f, cb)
    ], (err) ->
        if err

        start      : undefined
        stop       : undefined
        repeat     : false       # if true, will loop around, repeatedly backing up, over and over again; opts.cb (if defined) will get called every time it completes a backup cycle.
        projects   : undefined   # if given, only backup *this* list of projects (list of project id's)
        cb         : undefined
    dbg = (m) -> winston.debug("backup_all_projects: #{m}")
    errors = {}
    projects = opts.projects
    async.series([
        (cb) ->
            if projects?
                cb(); return
            dbg("querying database...")
            database.select
                table   : 'projects'
