Roundcube on cPanel failing with DB Error: [14] unable to open database file — Root-Cause Fix
When Roundcube fails on INSERT INTO session, this is typically a write-path problem, not an application bug.
Key diagnosis points
- Per-account SQLite path:
/home/USER/etc/domain.com/email@domain.com.rcube.db- Validate ownership/permissions:
chown -R USER:mail /home/USER/etc
chmod 750 /home/USER/etc
chmod 640 /home/USER/etc/domain.com/*.db
- If corruption is suspected:
mv /home/USER/etc/domain.com/email@domain.com.rcube.db \
/home/USER/etc/domain.com/email@domain.com.rcube.db.bak
Roundcube rebuilds the account database on next login.
Infrastructure layers that commonly break writes
- CloudLinux/CageFS
cagefsctl --remount USER
cagefsctl --force-update
/tmpsanity and inode availability
ls -ld /tmp
df -h /tmp
df -i /tmp
- Filesystem read-only remount
mount | grep -E ' / | /home | /tmp '
- SELinux context mismatch
getenforce
restorecon -Rv /home/USER/etc
Last-resort package repair
/scripts/check_cpanel_rpms --fix
dnf reinstall cpanel-roundcube
Conclusion
DB Error [14] in Roundcube is usually an infrastructure write denial signal. A layered runbook (account -> temp -> filesystem -> confinement -> package) delivers fast, repeatable recovery.
This post is licensed under CC BY-NC.
Comments
Join the discussion below.
Comments are not configured yet. Add Cusdis settings in /assets/json/config/blog-comments-config.json.