The newly installed version 1.9.4 shows the following error. How can I fix it?

root@debian:~# systemctl status hestia
× hestia.service - LSB: starts the hestia control panel
     Loaded: loaded (/etc/init.d/hestia; generated)
     Active: failed (Result: exit-code) since Sat 2026-02-14 00:54:08 CST; 45s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 628 ExecStart=/etc/init.d/hestia start (code=exited, status=1/FAILURE)
        CPU: 142ms

2月 14 00:54:07 debian.xxx systemd[1]: Starting hestia.service - LSB: starts the hestia control panel...
2月 14 00:54:08 debian.xxx hestia[628]: Starting hestia-nginx: hestia-nginx
2月 14 00:54:08 debian.xxx hestia[672]: nginx: [alert] could not open error log file: open() "/usr/local/hestia/nginx/logs/error.log" failed (30: Read-onl>
2月 14 00:54:08 debian.xxx hestia[672]: 2026/02/14 00:54:08 [warn] 672#0: "ssl_stapling" ignored, issuer certificate not found for certificate "/usr/local>
2月 14 00:54:08 debian.xxx hestia[672]: 2026/02/14 00:54:08 [emerg] 672#0: open() "/var/log/hestia/nginx-error.log" failed (30: Read-only file system)
2月 14 00:54:08 debian.xxx systemd[1]: hestia.service: Control process exited, code=exited, status=1/FAILURE
2月 14 00:54:08 debian.xxx systemd[1]: hestia.service: Failed with result 'exit-code'.
2月 14 00:54:08 debian.xxx systemd[1]: Failed to start hestia.service - LSB: starts the hestia control panel.

root@debian:~# cat /usr/local/hestia/nginx/logs/error.log
2026/02/14 00:17:36 [warn] 57569#0: "ssl_stapling" ignored, issuer certificate not found for certificate "/usr/local/hestia/ssl/certificate.crt"
2026/02/14 00:52:33 [warn] 1601#0: "ssl_stapling" ignored, issuer certificate not found for certificate "/usr/local/hestia/ssl/certificate.crt"
root@debian:~# cat /proc/mounts | grep " / "
/dev/vda1 / xfs ro,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota 0 0
root@debian:~# systemctl start hestia
Job for hestia.service failed because the control process exited with error code.
See "systemctl status hestia.service" and "journalctl -xeu hestia.service" for details.

The server is Debian 12

Your root file system is mounted as read only so no one can write there. Maybe the FS is corrupted so the system mounted it as read only…

3 Likes

I found the solution to the error. It’s because

The root cause is an error caused by HestiaCP’s disk quota script. The v-add-sys-quota script writes the following configuration to the /etc/fstab file. This can cause the system kernel to enter protected mode, and this issue has already been fixed in the patch you provided.

This is the code in the original /etc/fstab file!

UUID=ef94bc71-6cfe-4f7b-a849-fd4b6cac584b / xfs defaults,usrquota,grpquota,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 0

This is the code from the adjusted /etc/fstab file

UUID=ef94bc71-6cfe-4f7b-a849-fd4b6cac584b / xfs defaults,usrquota,grpquota 0 0

After editing is completed, remount the system drive to enable the system to enter read-write mode!

sudo mount -o remount,rw /dev/vda1 /

Then just restart the system and it will be fine.

reboot

Could you provide more details?

I added detailed instructions. Is this suitable?

In addition, I submitted a fix request for the v-list-sys-services script, but it seems it hasn’t been merged into the main branch. Can you help me get it approved?

Ok, that makes sense and that’s the reason I’ve modified the quota scripts.

Actually it is not fine:

1.- usrquota and grpquota are not the right values for XFS file system.

2.- keep in mind that right now you are not using quotas. If you execute repquota -a you shouldn’t get any output so that means quota is not enabled. To enable XFS quota on / you must add the rootflags to grub.

To fix it use the new quota scripts:

sudo-i
cd /usr/local/hestia/bin/
mv v-add-sys-quota v-add-sys-quota.ori
wget https://raw.githubusercontent.com/sahsanu/hestiacp/34282438f64147962c37b0dcaeabde1b6b619111/bin/v-add-sys-quota
chmod +x v-add-sys-quota
mv v-delete-sys-quota v-delete-sys-quota.ori
wget https://raw.githubusercontent.com/sahsanu/hestiacp/34282438f64147962c37b0dcaeabde1b6b619111/bin/v-delete-sys-quota
chmod +x v-delete-sys-quota

Once done:

v-delete-sys-quota
v-add-sys-quota

And after reboot you should have quota enabled:

repquota -a

I can’t help here, take a look to all my open PRs :stuck_out_tongue:

Uh, after I restarted and went into the web panel to rerun all the services, everything was back to normal. Thank you for your complete supplement.

1 Like