How to Create a Full cPanel Backup through SSH

This article will guide you on how to create a full cPanel backup through SSH.

Note: The syntax detailed in this document is for cPanel & WHM versions 11.28 and later. The syntax and parameters listed below will not work for older versions of cPanel & WHM.


    1. You will need to log into your server via SSH as root. If you unfamiliar with how to do this, please feel free to visit this guide.


  1. you will then execute the command /scripts/pkgacct $user.


Things to keep in mind.


    • $user is used in the sense that it represents the username of the cPanel account you are attempting to create a backup of.



I've provided a list of the available parameters that can be passed with the script.

ParameterDescriptionInput Type
$userThis variable is required whenever --bincheck is not used. When passing this variable, replace $user with the username corresponding to the cPanel account you wish to package.string
$destinationThis is an optional variable that allows you to specify the path to the directory in which you wish to store the cpmove archive. The $destination variable must follow the $user variable, e.g./scripts/pkgacct $user $destination.string
--allow-overrideCauses the script to use instructions in /var/cpanel/lib/Whostmgr/Pkgacct/pkgacct, if any are present.N/A
--bincheckThis parameter ensures that any scripts called by the cPanel binary will run. If successful, the script will print 'BinCheck ok'. When using this argument, you do not need to pass $user.N/A
--versionThe version of the archive being created.string
--mysqlThe version of MySQL used by the account's databases.string
--use_backupsCauses the most recent backup to be converted into a cpmove archive. This option will speed up the process but may result in lost or old data.N/A
--skiphomedirThis parameter will exclude the user's home directory from the archive. If the account will be transferred, the user's home directory can be moved with a faster protocol.N/A
--incrementalWhen this parameter is used, only information that was not contained within the previous archive will be packaged. This parameter will not work if no cpmove archive is found.N/A
--splitCauses the archive to be created in chunks. This will reduce the overall load on the system.N/A
--nocompressPassing this parameter will leave the resulting cpmove archive uncompressed.N/A
--compressThis parameter can override the --nocompress argument if it is present. There is no reason to use this argument as archives are compressed by default.N/A
--skipacctdbThis parameter prevents the account's databases from being included in the archive.N/A
--userbackupAllows the user to use the resulting cpmove archive as a backup for the account.N/A
--backupCauses the resulting archive to be used as an account's backup.N/A


The guide was constructed from cPanel's official guide found here.