System: Fresh install / Base
Ubuntu 24.04 / 26.04
I am trying to install Hestia using a customized script from the installation page.
This fails whether I run it as “root” or with “sudo”.
The following error message always appears:
Example: bash hst-install-ubuntu.sh -e [email protected] -p p4ssw0rd --multiphp yes
I have tested both variants:
1.) bash hst-install-ubuntu.sh (or -h)
2.) bash hst-install.sh (or -h)
If I run the installation without options, the script proceeds until the “Nginx” installation stage. “Nginx” fails to start, and the installation aborts.
The script does not execute but terminates with the specified error message.
-–
Error:
[ * ] Configuring NGINX…
[ * ] Updating Cloudflare IP Ranges for Nginx…
Job for nginx.service failed because the control process exited with error code.
See “systemctl status nginx.service” and “journalctl -xeu nginx.service” for details.
Error: nginx start failed
sahsanu
September 24, 2026, 10:46pm
4
Do you have the entire output of the command?
Are you installing it on a VPS, LXC, VirtualBox…?
What is the output of the following command?
systemctl status nginx --no-pager -l
No output. No VPS, LXC, VirtualBox. Setup on Server-Hardware.
I have no output because I have already performed a fresh base installation.
The script is currently running on Ubuntu 24.04. However, the selection step is once again not executing (port, language, MultiPHP).
Only the base script is running. This installation is not yet complete. The NGINX error might recur.
sahsanu
September 24, 2026, 11:16pm
6
I don’t use Ubuntu but I’ve tested it right now on a virtual machine using Ubuntu 26.04 and the installation works fine.
It’s important to know if something is not working as expected before the Nginx error.
Use all the arguments you need and use always single quotes for the values, for example:
bash hst-install.sh --hostname 'here.your.hostname' --username 'admin' --email '[email protected] ' --password 'Secret$Passw0rd' --sieve yes --quota yes --webterminal yes
Checking the current error when starting the Nginx service could give us a clue about the issue.
I used this script on my second attempt, and the installation was successful:
bash hst-install.sh --port ‘%PORT%’ --lang ‘%LANG%’ --multiphp ’ ’ --force
However, the generated script fails to work if it contains %HOSTNAME%, %USERNAME%, %PASSWORD%, or %EMAIL%.
I cannot yet determine which component is responsible for this. I have a backup of the base installation, so I can test this again if necessary.
sahsanu
September 24, 2026, 11:58pm
8
TomTDooley:
However, the generated script fails to work if it contains %HOSTNAME%, %USERNAME%, %PASSWORD%, or %EMAIL%.
I can’t reproduce that issue, it works fine here using those options.
If you want to test where the issue is, download the ubuntu script and run it using bash -x:
wget -q https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install-ubuntu.sh -O hst-install-ubuntu.sh
bash -x hst-install-ubuntu.sh --hostname 'here.your.hostname' --email '[email protected] ' --password 'Secret$Passw0rd' --sieve yes --quota yes --webterminal yes 2>&1 | tee /root/debug-hestia.log
Are you using a hostname or mail using non ascii characters?
No.
Good Morning,
the question is why script 1 doesn’t work, while script 2 does execute?
1.) bash hst-install.sh -h
2.) bash hst-install.sh --port ‘%PORT%’ --lang ‘%LANG%’ --multiphp ’ ’ --force
I’m also moving the troubleshooting to a virtual machine.
--
The solution:
1.) The “-h” option only displays the options but does not start an individual installation. (My mistake)
2.) The password contained a ’ character. The subsequent part could not be interpreted.
The issue with the password is also clear.
Normally, I don’t enter it into the script. There is no error message when copying it into the terminal.
You shouldn’t start preparing servers in the evening; other times of day are better suited for it.