CloudLinux OS adds per-account resource limits (LVE), file system isolation (CageFS) and PHP Selector to a standard RHEL-compatible server. An existing AlmaLinux or Rocky Linux server can be converted in place. This guide covers DirectAdmin, Plesk and servers without a panel; for cPanel see install CloudLinux on a cPanel server. Why it matters: what CloudLinux does.
Before you start
- OS: AlmaLinux or Rocky Linux 8 or 9, 64-bit, fully updated. CentOS 7 conversions are legacy.
- Licence: a CloudLinux OS activation key, or an IP-based licence from your provider.
- Kernel: a standard boot setup the converter can manage. Some VPS types (OpenVZ/LXC) cannot run CloudLinux; KVM and dedicated servers can.
- A full backup or snapshot, and console access in case the reboot fails.
Prepare the server
- Update everything and reboot into the latest kernel:
dnf -y update && reboot - Make sure the control panel is fully up to date (DirectAdmin CustomBuild
./build update_versions; Pleskplesk installer update).
Convert to CloudLinux
- Download the converter:
wget https://repo.cloudlinux.com/cloudlinux/sources/cln/cldeploy - Run it with your key (or
-ifor an IP-based licence):sh cldeploy -k YOUR-ACTIVATION-KEY - When it finishes, reboot into the CloudLinux kernel:
reboot - Confirm the conversion:The release should read CloudLinux and the kernel should contain
cat /etc/redhat-release && uname -rlve(on CloudLinux 8/9 the standard kernel includes LVE support).
Install the management tools
dnf -y install lvemanager lve-utils lve-stats cagefs alt-php*Then initialise CageFS and enable it for all users:
cagefsctl --init
cagefsctl --enable-allPanel-specific steps
- DirectAdmin: enable CloudLinux support in CustomBuild and rebuild PHP so PHP Selector works:CloudLinux Manager then appears at admin level.
cd /usr/local/directadmin/custombuild ./build set cloudlinux yes ./build set cagefs yes ./build update ./build rewrite_confs - Plesk: CloudLinux Manager appears under Extensions after installing
lvemanager. Set default limits there and enable PHP Selector for subscriptions. - No panel: manage limits on the command line with
lvectl, for examplelvectl set-user USERNAME --speed=100% --pmem=1G --maxEntryProcs=20.
Post-install settings
- Set sensible default limits (CPU, physical memory, entry processes, I/O) in CloudLinux Manager.
- Enable PHP Selector and choose the default alt-php version.
- Turn on the notification emails for users who hit limits.
Verify
lvectl listshows default limits;lveinfostarts collecting statistics.cagefsctl --list-enabledlists users in CageFS.
Troubleshooting
- cldeploy fails on registration: the key is wrong or the IP licence is not active yet; check with your provider.
- Server does not boot after conversion: pick the previous kernel from the console boot menu and contact CloudLinux support with the cldeploy log in
/var/log/cldeploy.log. - PHP Selector shows no versions: install
alt-php*packages and refresh withcagefsctl --force-update.
