mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-05-29 20:14:43 +00:00
Fix MariaDB runtime directory persistence on container reboot (#10468)
Co-authored-by: MickLesk <47820557+MickLesk@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -3261,6 +3261,31 @@ setup_mariadb() {
|
|||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Configure tmpfiles.d to ensure /run/mysqld directory is created on boot
|
||||||
|
# This fixes the issue where MariaDB fails to start after container reboot
|
||||||
|
msg_info "Configuring MariaDB runtime directory persistence"
|
||||||
|
|
||||||
|
# Create tmpfiles.d configuration with error handling
|
||||||
|
if ! printf '# Ensure /run/mysqld directory exists with correct permissions for MariaDB\nd /run/mysqld 0755 mysql mysql -\n' > /etc/tmpfiles.d/mariadb.conf; then
|
||||||
|
msg_warn "Failed to create /etc/tmpfiles.d/mariadb.conf - runtime directory may not persist on reboot"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Create the directory now if it doesn't exist
|
||||||
|
# Verify mysql user exists before attempting ownership change
|
||||||
|
if [[ ! -d /run/mysqld ]]; then
|
||||||
|
mkdir -p /run/mysqld
|
||||||
|
# Set permissions first (works regardless of user existence)
|
||||||
|
chmod 755 /run/mysqld
|
||||||
|
# Set ownership only if mysql user exists
|
||||||
|
if getent passwd mysql >/dev/null 2>&1; then
|
||||||
|
chown mysql:mysql /run/mysqld
|
||||||
|
else
|
||||||
|
msg_warn "mysql user not found - directory created with correct permissions but ownership not set"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
msg_ok "Configured MariaDB runtime directory persistence"
|
||||||
|
|
||||||
cache_installed_version "mariadb" "$MARIADB_VERSION"
|
cache_installed_version "mariadb" "$MARIADB_VERSION"
|
||||||
msg_ok "Setup MariaDB $MARIADB_VERSION"
|
msg_ok "Setup MariaDB $MARIADB_VERSION"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user