Tuesday, October 8, 2024

Install DSpace 8 on Debian 12

Here, we use Debian 12 to install DSpace 8. If you don't like the Vanilla Debian, try PepperMintOS, / MX Linux / Linux Mint Debian edition. Beginners can find YouTube videos on how to install Debian Linux.

Prepare the system for Dspace installation

DSpace consists of both a Java-based backend and an Angular-based front end. Both the backend and front end need to be installed separately. Install the prerequisites for the DSpace software. Dspace builds on the Java platform and requires software packages like Tomcat, Solr, Maven, Ant, etc.

Monday, October 7, 2024

Install DSpace 8 on Ubuntu 24.04 LTS

Here, we use Xubuntu 24.04 LTS to install DSpace 8. Xubuntu 24.04 LTS loaded with Snap, which makes the system slow. In such cases, choose snapless Ubuntu-based Linux operating systems like Linux Lite / Rhino LinuxAsmi Linux.

Prepare the system for Dspace installation.

DSpace consists of both a Java-based backend and an Angular-based front end. Both the backend and front end need to be installed separately. Install the prerequisites for the DSpace software. Dspace builds on the Java platform and requires software packages like Tomcat, Solr, Maven, Ant, etc.

Wednesday, May 8, 2024

Add a new item type in item submission page in DSpace 7

Open the following file in a terminal:

sudo mousepad /dspace/config/input-forms.xml

Find the lines for item types.


Copy an existing code for an item type.

<pair>
       <displayed-value>Animation</displayed-value>
       <stored-value>Animation</stored-value>
</pair>

Add new value and paste between any default item types.

<pair>
       <displayed-value>PhD Theses</displayed-value>
       <stored-value>PhD Theses</stored-value>
</pair> 

Save and close the file.
Restart Tomcat and refresh the page to see the change.

sudo systemctl restart tomcat9.service

Tuesday, January 16, 2024

Change the text at DSpace 7 home page


Frontpage template available at [dspace-angular-frontend]\src\themes\dspace\app\home-page\home-news\home-news.component.html. The location of the dspace-angular-dspace may vary.

Open the template file using a text editor like Nano, e.g.

sudo nano /home/dspace/dspace-angular-dspace-7.6.1/src/themes/dspace/app/home-page/home-news/home-news.component.html 

Rebuild the production environment to take effect the changes.

Enter the location of the dspace-angular-dspace. Find the exact location of the [dspace-angular-frontend] and apply the following command. Here is an example of the command,

cd /home/dspace/dspace-angular-dspace-7.6.1/config

Apply the following command

yarn run build:prod

Refresh the home page of DSpace to see the changes made.

Thursday, February 23, 2023

Automate DSpace backups with Cron Task

Database backup

Open a Terminal and log in as a Postgres user,

sudo su - postgres

Create a directory in the Postgres user’s home to store the backups. Apply the following command,

mkdir -p ~/backups

Enter into the crontab:

crontab -e

Add the following entry into the Cron,

#DSpace Postgres backup

10 20 * * * pg_dump -U postgres dbname > ~/postgres/backups/dbname-$(date +%d-%m-%Y-%H.%M).bak

Change the timing of the backup, here backup take at 8:10 PM

Apply  CTRL + O button to save the cron entry.
Then apply CTRL + X to exit from the cron. 

Type exit to exit from Postgres prompt.

Backup of asset store and log folders


Open a terminal and apply the following command to create a folder in Home to hold asset store and log folders.

sudo mkdir dspacebkup

Open crontab to add the entry to automate the folder backup,
sudo su
crontab -e

Add the following lines,

10 20 * * * zip -r /home/vimal/dspacebkup/assetstore-$(date +%d-%m-%Y-%H.%M).zip /dspace/assetstore
10 20 * * * zip -r /home/vimal/dspacebkup/log-$(date +%d-%m-%Y-%H.%M).zip /dspace/log

Change the path based on your local setup.

Saturday, February 4, 2023

Error 500-Service unavailable: how to solve

Many DSpace users got Error 500. To solve the error, check the following things one by one.

Solr

Apply the following commands to restart Solr.

su dspace
/opt/solr/bin/solr start
exit

Tomcat

Apply the following command restart Tomcat

sudo systemctl restart tomcat9.service

Start the user interface

Apply the following commands,

sudo su
pm2 start /home/dspace/dspace-angular-dspace-7.4/dspace-ui.json

Make available DSpace in a local network / web

DSpace version 7 and 8 default port for the front end is 4000. The port needs to open to make DSpace available in a local network. I applied this method on Ubuntu 24.04 and Debian 12. Here are the processes to make available DSpace version 8 in the network. 

Open the Port 4000

ufw is the default firewall configuration tool. Install ufw by applying the following command,
 
sudo apt install ufw
 
Apply the following command to open port 4000 and 8080.

sudo ufw allow 4000
sudo ufw allow 8080
sudo ufw enable 

Network configuration for DSpace

Find the IP address of the computer where DSpace is installed. Apply the following commands to install net-tools software in Ubuntu and know the network details.
 
sudo apt install net-tools 
ifconfig 

Debian users can apply the following command to know the network details,

nmcli -p device show

Note down the details and add the IP address. 
Open the DSpace configuration file, 

sudo mousepad /dspace/config/local.cfg 

Find the following lines and add the IP address/domain name instead of localhost.

dspace.ui.url = http://localhost:4000 
dspace.server.url = http://localhost:8080/server 


Save and close the file. 
Open the following configuration file (make sure the location of the file in your server) of the DSpace front end, 

sudo mousepad /home/dspace/dspace-angular-dspace-8.0/config/config.prod.yml

Find the following piece of lines, 

ssl: false 
host: localhost 
port: 4000 

Change the hostname. Change localhost to the IP address/domain name.

ssl: false 
host: your-ip-address
port: 4000 


Save and close the file.

Enter into the dspace-angular config folder,

sudo su

cd /home/dspace/dspace-angular-dspace-8.0/config

Apply the following command to build the front end,

yarn run build:prod

Start the application using PM2. Apply the following command to start the service,

sudo su
pm2 start /home/dspace/dspace-angular-dspace-8.0/dspace-ui.json

Restart the Tomcat,

sudo systemctl restart tomcat10.service

Change localhost to the IP address. Save and close the file.
 
Restart PC. Try to load DSpace 7 from other PC in the network. 
Example, http://192.168.1.20:4000

References