Defining objects for restoration includes the following:

  1. Specifying a source backup file.
  2. Defining the level of restored objects.
  3. Applying filter on the specified level.

Generally speaking, the data that can be restored with one call of the pleskrestore utility are represented by any cell of the following table.

    Restoration levels specified with the -level option            
    Server Resellers   Customers   Subscriptions  
       

Selected with the

-filter option

  Selected with the -filter option   Selected with the -filter option
Backup file <server>.xml | zip Full restoration All reseller accounts Selected reseller accounts All customer accounts belonging to administrator Selected customer accounts belonging to administrator All subscriptions belonging to administrator Selected subscriptions belonging to administrator
  <reseller>.xml | zip   Full restoration of a reseller account   All customer accounts belonging to reseller Selected customer accounts belonging to reseller All subscriptions belonging to reseller Selected subscriptions belonging to reseller
  <customer>.xml | zip       Full restoration of a customer account   All subscriptions belonging to customer Selected subscriptions belonging to customer
  <subscription>.xml | zip           Full restoration of a subscription  

Specifying a source backup file

The source backup file defined for restoration can be of one of the following types:

  • <info> .xml - backup metadata file, in case of restoring from backup located in Plesk’s storage.
  • <backup> .<zip> - archived backup file, in case of restoring from an exported backup.

For example, to restore the whole server backup, you choose a <backup storage root>\<server> .xml file, or an exported server backup file. To restore a customer account belonging to a reseller, you choose a <backup storage root>\ resellers\ <reseller ID>\ clients\ <customer ID>\<customer> .xml file.

Defining level of restored objects

Defining level of restored objects allows you to narrow the amount of restored data according to your needs. For example, you may want to restore only subscriptions which belong to a customer or a reseller, skipping all other data not related to subscriptions.

To define the level of restored objects, use the -level option with appropriate value. The option is required, so in cases when you do not need any narrowing but just restoring all data from a backup, define the level equal to the level of file.

To restore entire server:

pleskrestore --restore <backup storage root>\<server>.xml -level server

Note: When the whole server backup is restored, license keys are not restored by default. To restore license keys along with other server content, use the -license option in your restore command.

To restore entire server with license keys:

pleskrestore --restore <backup storage root>\<server>.xml -level server -license

To restore all subscriptions and sites belonging to a reseller:

pleskrestore --restore <backup storage root>\resellers\<reseller ID>\<reseller>.xml -level domains

To restore all reseller accounts:

pleskrestore --restore <backup storage root>\<server>.xml -level resellers

Applying filter on the specified level

To perform a more selective restore, use a filter (the -filter option) which selects for restoring particular objects of the specified level (resellers, customers, subscriptions). The objects are specified by their names, which are domain names for subscriptions, and usernames for resellers and customers. The specification can be done as follows:

  • Command line specification. The restore command takes objects identifiers as values of the -filter option defined in the following string: list: <item1>,<item2> ,..., <itemN>.
  • File specification. The restore command takes the objects identifiers from the file specified as argument of the -filter option. The file must be in plain text format, and object identifiers are separated by line breaks (that is, one identifier per line).

To restore two resellers from a server backup:

pleskrestore --restore <backup storage root>\<server>.xml -level resellers -filter list:JohnDoe,JaneDoe

or

pleskrestore --restore <upload directory>\<server backup name>.zip -level resellers -filter list:JohnDoe,JaneDoe

To restore two subscriptions owned by server administrator:

pleskrestore --restore <backup storage root>\<server>.xml -level domains -filter list:example.com,sample.org

To restore several subscriptions of a customer defined in a file:

pleskrestore --restore <backup storage root>\resellers\SandyLee\clients\JaneDow\<customer>.xml -level domains -filter <path to the file>\restore-subscriptions.txt