To efficiently restore electricity customers from a large-scale blackout, this paper proposes a novel mixedinteger linear programing (MILP) model for the optimal disaster recovery of power distribution systems. In the proposed recovery scheme, the maintenance crews (MCs) are scheduled to repair damaged components, and the restoration crews (RCs) are dispatched to switch on the manual switches. Then, the MC and RC dispatch models are integrated into the disaster recovery scheme, which will generate an optimal sequence of control actions for distributed generation (DG), controllable load, and remote/manual switches. Besides, to address the time scale related challenges in the model formulation, the technical constraints for system operation are investigated in each energization step rather than time step, hence the co-optimization problem is formulated as an "event-based" model with variable time steps. Consequently, the disaster recovery, MC dispatch and RC dispatch are properly cooperated, and the whole distribution systems can be restored step by step. Last, the effectiveness of the co-optimization model is validated in the modified IEEE 123 bus test distribution system. 1