DSpace 7.6.1

De BrapciWiki
Ir para navegação Ir para pesquisar

Download

[https://dspace.lyrasis.org/download/]

Instalação

Instal ZIP

apt install zip

Java 17

sudo apt update
sudo apt install -y openjdk-17-jdk

Ajustando variáveis de ambiente

  1. Opção 1
sudo nano /etc/environment

Incluir no arquivo

JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
JAVA_OPTS="-Xmx512M -Xms64M -Dfile.encoding=UTF-8"

Atualiza ambiente

source /etc/environment
echo $JAVA_HOME
echo $JAVA_OPTS
  1. Opção 2
sudo nano /etc/profile

incluir:

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

Aplicar os ajustes

source /etc/profile

Maven

apt install maven

para checar a versão (maior que 3.3 tem que ser a versão no caso 3.6.3)

mvn -version

ANT

apt-get install ant

para checar a versão (maior que 1.10.X no caso 1.10.12)

ant -version 

Langange

apt-get install language-pack-pt

Para checar o padrão (contém pt_BR.utf8 ou pt_BR.UTF-8? seguir o sim)

locale -a 

Se sim, continua Editar o arquivo padrão locale (trocar para o que aparece no "locale -a" para pt_BR com utf8)

pico /etc/default/locale 

Alterar de:

LANG=en_US.UTF-8

para

LANG=pt_BR.UTF-8

Reboot no servidor com reinicialização

shutdown now -r

POSTGRES

apt update
apt-get install postgresql postgresql-client postgresql-contrib

Configurando pg_hba.conf

pico /etc/postgresql/14/main/pg_hba.conf 

Incluir na última linha

host    dspace          dspace          127.0.0.1/32            trust

Configurado postgres.conf

pico /etc/postgresql/14/main/postgresql.conf

Alterar

#listen_addresses = 'localhost' => listen_addresses = 'localhost' 
max_connections = 100 => max_connections = 200
lc_messages = 'en_US.UTF-8' => lc_messages = 'pt_BR.UTF-8'
lc_monetary = 'en_US.UTF-8'  => lc_monetary = 'pt_BR.UTF-8' 
lc_time = 'en_US.UTF-8' => lc_time = 'pt_BR.UTF-8'   
lc_numeric = 'en_US.UTF-8' => lc_numeric = 'pt_BR.UTF-8' 
default_text_search_config='pg_catalog.english'  => default_text_search_config='pg_catalog.portuguese' 
shared_buffers = 256MB  => shared_buffers = 1024MB

Reinicializando o PostGres

service postgresql restart

Configurando usuário DSPACE no PostGresQl

su - postgres 

createuser --username=postgres --no-superuser --pwprompt dspace 

Senha: dspace

exit

Usuario DSPACE

sudo su
useradd dspace -s /bin/bash -d /home/dspace -m
su - postgres
createdb --username=postgres --owner=dspace --encoding=UNICODE dspace 
psql --username=postgres dspace -c "CREATE EXTENSION pgcrypto;" 

SOLR

sudo su 
useradd solr -s /bin/bash -d /home/solr -m
cd /opt
wget https://downloads.apache.org/lucene/solr/8.11.3/solr-8.11.3.zip 

Caso apresente erro, veja a última versão

[https://downloads.apache.org/lucene/solr/]

Descompactando o arquivo

unzip solr-8.11.3.zip
rm *.zip
chown -R dspace:dspace solr-8.11.3

Configurando, use o usuário dspace

su - dspace 
cd /opt/solr-8.11.3/bin/

Solr como servico

Criando um diretório /opt/solr para a versão atual do SOLR

sudo ln -s /opt/solr-8.11.3 /opt/solr 
chown dspace:dspace /opt/solr-8.11.3 -R

Alternativo

chown dspace:dspace /usr/local/solr-8.11.3 -R

Edite o arquivo /etc/limits e inclua no final:

pico /etc/security/limits.conf
# End of file
* soft nofile 65000
* hard nofile 65000
* soft nproc 65000
* hard nproc 65000

Inicializando o SOLR

su - dspace
cd /opt/solr/bin/ 
./solr start

init.d/solr

Mais informações: [[1]] Como root:

sudo su
cp /opt/solr-8.11.3/bin/init.d/solr /etc/init.d/solr
cp /opt/solr-8.11.3/bin/solr.in.sh /etc/default/.

Edit o arquivo solr

nano /etc/init.d/solr
#Localizar e editar as 3 variáveis abaixo, para ficarem:
SOLR_INSTALL_DIR=/opt/solr
SOLR_ENV=/etc/default/solr.in.sh
RUNAS=dspace

Ativando o serviço, ainda como root

chmod 755 /etc/init.d/solr
chown root:root /etc/init.d/solr
update-rc.d solr defaults
update-rc.d solr enable

// Irá aparecer o seguinte erro, pois já foi instalado com o comando defaults // Failed to enable unit: Unit /run/systemd/generator.late/solr.service is transient or generated. Rebootar pra ver se solr sobe sozinho

reboot

ou

shutdown now -r

Quando voltar, conferir se SOLR está rodando com usuário dspace

ps xua | grep solr

dspace xxxx xxxx xxxxxxxxxx


update-rc.d solr defaults

Inicializando SOLR

./solr start

Instalando o TOMCAT

apt-get install tomcat9 

Edit o arquivo tomcat9.service

pico /usr/lib/systemd/system/tomcat9.service 

Comente a linha:

#Environment="JAVA_OPTS=-Djava.awt.headless=true" 

Inclua as linhas:

Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"  
Environment="JAVA_OPTS=-Xmx512M -Xms64M -Dfile.encoding=UTF-8"

Ajuste

# Security
#User=tomcat
User=dspace
#Group=tomcat
Group=dspace

Adicionado

ReadWritePaths=/dspace/

Ambiente

pico /etc/environment

JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
JAVA_OPTS="-Xmx512M -Xms64M -Dfile.encoding=UTF-8"

Salve e execute:

source /etc/environment

Edite o arquivo server.xml

pico /etc/tomcat9/server.xml 

Comente o conncetor 8080 e crie uma nova configuração

<Connector port="8080" 
             minSpareThreads="25" 
             enableLookups="false" 
             redirectPort="8443" 
             connectionTimeout="20000" 
             disableUploadTimeout="true" 
             URIEncoding="UTF-8"/> 

Altere o proprietários do tomcat9 para o dspace

chown -R dspace:dspace /etc/tomcat9/ 
chown -R dspace:dspace /var/log/tomcat9/ 
chown -R dspace:dspace /var/lib/tomcat9/ 
chown -R dspace:dspace /var/cache/tomcat9/ 
  1. Esse passo tem de ser feito antes para não dar erro do ReadWritePaths=/dspace/ não ter sido criado ainda

Crie a parta do repositório

mkdir -p /dspace 
chown -R dspace:dspace /dspace

root@host: su - dspace

Configurações da WEB

Copy the DSpace web apps folder to the Tomcat server

sudo cp -R /dspace/webapps/* /var/lib/tomcat9/webapps

Copy Solr folders and change permission

sudo cp -R /dspace/solr/* /opt/solr-8.11.2/server/solr/configsets
sudo chown -R subrat:subrat /opt/solr-8.11.2/server/solr/configsets

Restart Solr

cd /opt/solr-8.11.2/bin
./solr restart

TomCat9 como serviço

systemctl daemon-reload 
systemctl stop tomcat9 
systemctl start tomcat9 

Para converir se está ok:

ps xua | grep tomcat 
//conferir se o usuário que está executando o serviço é o dspace 


root@host: wget http://localhost:8080 //liberar firewall na porta 8080 para acessar em http://xxx.xxx.xxx.xxx:8080/ (onde xxx são o número do IP)

DSPACE

ERROS

  • Unable to autodetect 'javac' path, using 'javac' from the environment.
  • SOLR_ULIMIT_CHECKS