Skip to content

Install or convert a server

A server joins PlusPanel in one of three ways:

Way What runs on the server Status
Native image (ISO, qcow2, cloud) PlusPanel OS from the first boot at general availability
In-place conversion PlusPanel OS, replacing AlmaLinux or Rocky Linux, data kept available
Compatibility mode the PlusPanel agent on your AlmaLinux or Rocky Linux, as it is available

PlusPanel OS is the recommended target: an immutable, signed system that we update for you (how updates work). Compatibility mode is the quickest start, and a server in Compatibility mode can be converted later; it does not receive OS updates from us.

Every way starts in the panel: Servers → Add server gives you a one-time enrollment command.

You need
OS AlmaLinux 9 or 10, Rocky Linux 9 or 10, x86_64 (conversion and Compatibility mode)
Machine a dedicated server or a VM with full virtualization (KVM, VMware, Proxmox, Hyper-V, cloud instances). Not OpenVZ, Virtuozzo or LXC containers
Resources at least 2 GB of RAM, a 20 GB disk with 6 GB free
Disk the root filesystem (xfs or ext4) on a normal partition; /boot on it or on its own partition. The default layouts of Hetzner Cloud and most cloud images fit
Firmware BIOS or UEFI with Secure Boot off
Network outbound HTTPS to registry.pluspanel.net and the control plane, outbound UDP 51820. No inbound port is needed for management
Access root (or sudo) over SSH, and a console (cloud console, IPMI/KVM) in case you want to roll back by hand later

Not supported yet for conversion (the check refuses them and says why): LVM, software RAID (for example the default two-disk RAID of Hetzner dedicated servers), encrypted disks, a separate /var or /home, extra data disks in /etc/fstab, Secure Boot.

Conversion is how you get PlusPanel OS on providers that do not let you upload your own image, such as Hetzner Cloud. The server keeps its place in your panel and every account with its sites, databases and files. It is careful by design:

  • the current OS stays on the disk until PlusPanel OS has proven itself on your server;
  • the first boot of PlusPanel OS is a trial: if the server does not reach the control plane within 10 minutes, it goes back to your current OS by itself, restores it and tells you why;
  • nothing is repartitioned or reformatted, no port is opened, and only PlusPanel’s registry and control plane are contacted.

Take a snapshot first if your provider offers one. The conversion rolls back on its own, but a snapshot also protects data that PlusPanel does not manage.

What changes for you: PlusPanel OS is managed only from the panel. It has no SSH and no login: your SSH session ends with the conversion’s reboot. Software you installed yourself with dnf, other users, cron jobs and firewall rules are not carried over. PlusPanel’s own data is: the server’s identity and every account with its sites, databases, files and quotas.

Run the check with the values of your enrollment command (nothing is changed):

Terminal window
curl -fsSL https://get.pluspanel.net/install.sh | sudo bash -s -- preflight --mode convert \
--enroll-url https://… --token ppe1_…

Every check prints ok, warn or FAIL, with an explanation for each failure. Add --json for a machine-readable report (exit code 0 = ready, 1 = not ready). A server that already runs the agent in Compatibility mode keeps its identity: leave out --enroll-url and --token.

Terminal window
curl -fsSL https://get.pluspanel.net/install.sh | sudo bash -s -- convert --dry-run \
--enroll-url https://… --token ppe1_…

The plan lists exactly what will be touched (the boot partition and boot loader), what is kept and what is not. Still nothing is changed.

Terminal window
curl -fsSL https://get.pluspanel.net/install.sh | sudo bash -s -- convert \
--enroll-url https://… --token ppe1_…
Option
--channel stable|preview release channel (default stable)
--health-timeout SECONDS how long the trial boot waits for the control plane (120–3600, default 600)
--no-reboot prepare everything and stop; reboot yourself when ready, or undo with convert --abort
--yes do not ask for confirmation

The installer enrolls the server (if needed), downloads PlusPanel OS and checks its signature, installs it next to the current OS, moves PlusPanel’s data over and reboots. Your sites are down from that moment until PlusPanel OS has started them again, usually a few minutes.

In Servers, the operating system changes from Compatibility mode · AlmaLinux 9.x to PlusPanel OS · version once the server reports from PlusPanel OS. Nothing else is needed.

The server comes back on its old OS by itself when PlusPanel OS does not reach the control plane during its trial boot, or does not start at all. It then restores itself completely (boot loader, data, nothing of PlusPanel OS left) and the panel shows Compatibility mode again, with every account working. Over SSH you see why:

Terminal window
sudo cat /var/lib/pluspanel-convert/result # OUTCOME=rolled_back, REASON=…
cat /etc/motd.d/pluspanel-convert

Fix the cause (usually outbound access to the control plane) and run the conversion again.

To go back yourself after a successful conversion, open the server’s console, restart it and choose “Previous OS: … (PlusPanel rollback)” in the boot menu (it shows for one second: hold Esc or Shift while the server starts). The previous OS restores itself the same way. This works until the previous OS is cleaned up from the disk.

Before the reboot (with --no-reboot) you can undo everything:

Terminal window
curl -fsSL https://get.pluspanel.net/install.sh | sudo bash -s -- convert --abort