Log in as root and run /usr/local/cpanel/scripts/upcp. Add --force to reinstall all cPanel files, even when the server is already up to date.
Check your current version
/usr/local/cpanel/cpanel -V
This prints the version and build, for example 134.0 (build 57). WHM also shows it at the top of every page.
Run the update
Connect as root (see Connect to your server with SSH). An update can take a while, so start a tmux session first. It keeps the update running if your connection drops:
tmux new -s upcp
Then run the update script:
/usr/local/cpanel/scripts/upcp
This updates cPanel & WHM to the newest build of the release tier set in Update Preferences. You'll often see the shorter path /scripts/upcp in older guides: it points to the same script.
When it finishes, run /usr/local/cpanel/cpanel -V again to see the new version.
Force a full update
/usr/local/cpanel/scripts/upcp --force
--force reinstalls all cPanel files, even if the server is already up to date. Use it when files are damaged or an earlier update failed halfway. It ignores your update settings and moves the server to the latest version of its tier.
Other useful options
| Command | What it does |
|---|---|
upcp --bg | Runs the update in the background; the output goes to a log file |
upcp --sync | Repairs the files of the version you already have, without moving to a newer one |
upcp --security | Installs only critical security fixes for your version |
upcp --help | Shows all options |
You can't combine --force and --sync.
Read the update log
Every update writes a log to /var/cpanel/updatelogs/, named update. plus a number. Show the newest one:
ls -t /var/cpanel/updatelogs/ | head -n 3
tail -n 50 /var/cpanel/updatelogs/$(ls -t /var/cpanel/updatelogs/ | head -n 1)
Search the log for lines marked [ERROR] or [WARN]: they tell you what went wrong.
grep -E '\[(ERROR|WARN)\]' /var/cpanel/updatelogs/$(ls -t /var/cpanel/updatelogs/ | head -n 1)
Update from WHM instead
In WHM, go to cPanel » Upgrade to Latest Version and click Click to Upgrade. This runs the same update.
Choose how cPanel updates itself
In WHM, go to Server Configuration » Update Preferences. There you pick the release tier:
- LTS: one version per year, the most conservative choice.
- STABLE: tested longer in public than RELEASE.
- RELEASE: the default for new servers.
- CURRENT and EDGE: newer and less tested. Don't use EDGE on a live server.
The tier is also stored in /etc/cpupdate.conf (the line CPANEL=). Change it in WHM rather than in the file.
Common problems
"cPanel & WHM is already up to date"
There's no newer build in your tier. To reinstall the files anyway, use --force.
The update stops with a disk space error
cPanel needs at least 5 GB free in /usr/local/cpanel. Check with df -h /usr/local/cpanel, make room and run the update again.
The server can't move to a newer version
cPanel blocks upgrades on operating systems it no longer supports, such as Rocky Linux, CentOS 7 or Ubuntu 22.04. The log says so. Move the server to a supported system first: see the table in Install cPanel & WHM on AlmaLinux.
Related articles
- Install cPanel & WHM on AlmaLinux
- Free SSL for the server hostname and sites in WHM (AutoSSL)
- Install or remove the CSF firewall on a cPanel server
Still stuck? Open a support ticket and we'll help.