Posts

Showing posts from August, 2026

How to Migrate DSpace 8.x to DSpace 10.x on Ubuntu (Step-by-Step Guide)

DSpace 8.x → 10.x Migration Guide Fresh Installation + Data Migration This guide follows a migration approach: install DSpace 10.x fresh and move the existing DSpace 8.x database, assetstore, configuration, and required supporting data. It is not an in-place upgrade. ⚙ Environment Reference Environment reference (fill in / confirm before running on a new box): Component Reference Old server DSpace 8.x, hostname dspace-8x New install fresh DSpace 10.x at /dspace Solr /opt/solr (Solr home: /opt/solr/server/solr ) Target DB dspace10 (Postgres 16, role dspace ) 8.x backup location /home/dspace/Downloads/Dspace_8.X_BKP/Dspace_8X._BKP_July_2026/ This is the migration approach (fresh 10.x install + move data over), not an in-place upgrade — recommended since you're skipping a major version (9.x) and already had 10.x installed fresh. Step 1 1. Backup the 8.x source (if not already done) Copy code # DB dump pg_dump -U [dspace8-db-user] -f dspace8_backup.sql [dspace8-db-nam...

How to Install Java 21 and Set Java Environment Variables System-Wide on Ubuntu

DSpace Administrator Guide DSpace 8.x → 10.x Migration Guide Fresh installation + database, assetstore, Solr, metadata, DOI, and frontend migration DSpace 8.x → 10.x PostgreSQL 16 Solr Angular UI Ubuntu ⚠ Migration warning: This guide uses a fresh DSpace 10.x installation + data migration , not an in-place upgrade. Before executing commands on a production server, confirm your paths, database names, service users, backup integrity, and custom configuration. What this guide covers Back up the DSpace 8.x database, assetstore, configuration, and Solr data. Create and prepare the DSpace 10.x PostgreSQL database. Restore the database and migrate the schema. Restore the assetstore with correct ownership and permissions. Handle Solr cores safely without copying old cores into configsets/ . Reindex Discovery and import OAI data. Review DOI metadata and metadata registries. Merge configuration changes and address Angular UI breaking changes. Restart services and perform f...

How to Set Java Environment Variables System-Wide on Ubuntu

How to Set Java Environment Variables System-Wide on Ubuntu Once OpenJDK is installed, plenty of Java-based software — DSpace included — still needs to know exactly where Java lives, and how much memory to give it. That's what JAVA_HOME and JAVA_OPTS are for. Setting them in /etc/environment makes them available to every user and every service on the machine, instead of just your own login shell. Why /etc/environment (and Not ~/.bashrc) It's common to see JAVA_HOME exported inside a personal ~/.bashrc or ~/.profile . That works for interactive logins as that one user — but background services like Tomcat, or another system user like dspace , won't see it. /etc/environment is read system-wide by PAM at login, independent of which shell or user is involved, which is exactly what a server process needs. Step 1: Confirm Your Java Installation Path Before setting JAVA_HOME , confirm exactly where Java was installed — the path differs slightly depending on the...

How to Install Apache Maven 3.9.x on Ubuntu 24.04

How to Install Apache Maven 3.9.x on Ubuntu 24.04 Ubuntu 24.04's own package repository doesn't ship the latest Apache Maven release — and projects like DSpace explicitly require Maven 3.9.x or above to build correctly. This guide walks through installing a current Maven version manually, straight from the Apache Software Foundation, alongside OpenJDK 21. Step 1: Update the System i. Confirm your Ubuntu version Copy code lsb_release -a Purpose: Confirm OS version Explanation: Displays your Ubuntu release details. Worth checking before you start, especially on a server that's changed hands a few times. ii. Update and Upgrade System Packages Copy code sudo apt update && sudo apt upgrade -y Purpose: Update and upgrade system packages Explanation: This command updates the package lists and upgrades all installed packages to their latest versions. The -y flag auto...