To configure VPS deployments, many cloud hosting providers use the dhclient script, which includes the configuration of the instance’s hostname.
The dhclient script may not preserve the locally-configured hostname, so hosting providers use scripts to work around this issue. For example, the Google Cloud Platform™ service uses the google_set_hostname script.
The workaround scripts may interfere with WHM’s Change Hostname feature (WHM » Home » Networking Setup » Change Hostname), which causes hostname configuration issues and a locked cPanel & WHM license.
The solution
To resolve this issue, you must create a dhclient exit hook script to set the hostname properly.
Create the zzz-set-hostname file with the following contents in the /etc/dhcp/dhclient-exit-hooks.d/ directory, where hostname.example.com represents your server’s new hostname:
#!/bin/sh
hostname hostname.example.com
/scripts/fixetchosts
You can also create the file with the following command, where hostname.example.com represents your server’s new hostname: