Instalação, migração e configuração - TEDE2
Instalação TEDE2
A customização do DSpace para teses e dissertações (TEDE 2) foi realizada por meio derivação (fork) do projeto original do DSpace, e pode ser baixada no endereço https://github.com/ibict-br/TEDE. Recomenda-se o uso da ferramenta SVN (https://subversion.apache.org/) para download do código fonte em sua última versão. Uma vez que este tenha sido baixado e instalado (o que é feito nas distribuições Debian por meio do comando: apt-get install subversion) é possível obter o código do TEDE 2 executando-se o seguinte comando:
svn co https://github.com/ibict-br/TEDE/trunk TEDE2-fonte
O sistema baixará todos os arquivos do projeto na pasta TEDE2-fonte, a qual estará abrigada dentro do diretório em que for executado o comando.
Requisitos
Os procedimentos de instalação do sistema TEDE 2 são basicamente os mesmos que na instalação do DSpace, e como há um conjunto bastante vasto de possibilidades de contexto de configuração de sistemas operacionais, sejam eles baseados em Unix, MAC OS, Linux ou Windows, optou-se como ponto de partida um cenário de uma máquina de processador Intel 64 bits, SO Linux Debian 7, memória RAM de 1GB e 50GB de disco rígido. Os usuários que desejam criar um ambiente virtual de testes, antes da antes da instalação definitiva no servidor de produção, podem acessar seguinte endereço, onde encontrarão um tutorial de como fazê-lo:
http://wiki.ibict.br/index.php/Criando_um_ambiente_virtual_de_testes
Para a execução dos procedimentos constantes no presente manual é necessário ter acesso com o perfil de administrador aos servidores de instalação do TEDE e DSpace/TEDE2. Dessa forma, é necessário acessar tanto as interfaces do sistemas quanto os terminais dos servidores, com a execução de linhas de comando. Procedimento este que deve ser efetuado por um profissional de informática, trabalhando em conjunto, com o administrador do sistema TEDE e o administrador do sistema DSpace/TEDE2.
Configuração do arquivo de instalação (build.properties)
Uma vez baixado o pacote do TEDE 2, considerando-se que este esteja, descompactado, na pasta TEDE2-fonte, é necessário que se realize algumas modificações no arquivo TEDE2-fonte/build.porperties. Este é composto de parâmetros que adequam a instalação a cada ambiente específico. Segue uma tabela descritiva dos principais variáveis a serem configuradas:
Variáveis | Configurações |
---|---|
dspace.install.dir=/dspace-base | Diretório destino de instalação; |
dspace.hostname = localhost | Nome do servidor na rede; |
dspace.baseUrl = http://localhost:8080 | Endereço do servidor na rede; |
dspace.url = ${dspace.baseUrl}/tede | URL da aplicação na internet; |
dspace.name = TEDE | Nome da BDTD; |
db.url=jdbc:postgresql://localhost:5432/dspace;
db.username=dspace db.password=dspace |
Endereço do servidor SGBD do banco de dados e usuário e senha deste. Recomenda-se alterar somente o password; |
mail.server = smtp.example.com | Servidor de email da instituição, para que o DSpace envie mensagens automáticas; |
mail.server.username=
mail.server.password= |
Usuário e senha do servidor de email; |
mail.from.address | Endereço de email do remetente das mensagens; |
mail.feedback.recipient = | Endereço que receberá as mensagens de feedback dos usuários; |
mail.admin = | Email do administrador do repositório; |
mail.alert.recipient= | Email que receberá os erros de sistema; |
mail.registration.notify= | Email que receberá a notificação de registros de usuários; |
mail.helpdesk = | Email do responsável por gerenciar as solicitações de cópia de documentos embargados ou de acesso restrito; |
handle.prefix = tede | Prefixo identificador da instancia do DSpace; |
xpdf.path.pdftotext = /home/dspace/xpdfbin-linux-3.04/bin64/pdftotext
xpdf.path.pdftoppm = /home/dspace/xpdfbin-linux-3.04/bin64/pdftoppm xpdf.path.pdfinfo = /home/dspace/xpdfbin-linux-3.04/bin64/pdfinfo |
Servidor de email da instituição, para que o DSpace envie mensagens automáticas; |
Instalação das ferramentas
O DSpace/TEDE2 necessita de algumas ferramentas para sua correta compilação (Oracle-JDK, jai_core, jai_imageio e Apache-Maven), instalação (Apache-Ant) e execução (Oracle-JDK, Apache-Tomcat, PostgreSQL e XPDF), no entanto, recomenda-se a instalação via apt-get somente do PostgreSQL. Os demais podem ser baixados em suas versões binárias.
A seguir será dado um passo-a-passo da instalação de cada uma dessas ferramentas e por fim, a compilação e instalação do DSpace/TEDE2.
Passo 1 - Criando usuário DSpace
Para que as aplicações não fiquem espalhadas pelo servidor, com diversos tipos de permissões de acesso, recomenda-se a criação de um usuário de sistema de nome dspace que mais adiante será também o usuário do banco banco de dados. Os comandos para criação do grupo dspace e usuário dspace, e senha para usuário devem ser executados com o usuário root, e são os seguintes:
addgroup dspace useradd –m dspace -g dspace passwd dspace
Passo 2 - PostgreSQL
O DSpace necessita de uma base de dados para armazenamento dos registros. Os SGBDs recomendados para essa tarefa são o PostgreSQL ou Oracle DB. Por ser um software livre e atender perfeitamente aos requistos do DSpace, o PostgreSQL tem relativa vantagem em relação ao Oracle DB. Para instalação do PostgreSQL basta executar, com perfil de root, o comando:
apt-get install postgresql
Após sua instalação é necessário realizar alterações em alguns arquivos de configuração do SGBD. Primeiro, estando ainda logado como root, deve-se acessar o arquivo /etc/postgresql/x.x/main/postgresql.conf (onde x.x será o número da versão do postgreSQL instalado) e retirar o # da linha:
#listen_addresses = 'localhost'
Após, logado ainda como root, acessar /etc/postgresql/x.x/main/pg_hba.conf (x.x é o número da versão do postgreSQL instalado) e adicionar, ao final do arquivo, a seguinte linha:
host all all 127.0.0.1 255.255.255.255 md5
Em seguida, logado como root, deve-se criar o usuário do banco. Para tanto deve-se executar os seguintes comandos (o sistema pedirá uma senha, a qual deve ser fornecida de acordo com o preenchido no parâmetro db.password do arquivo build.properties) :
su postgres createuser –d –A –P dspace exit
Agora para criar o base de dados do sistema (que deverá receber o mesmo nome dado no final do parâmetro db.url):
su dspace createdb -E UNICODE dspace
Passo 3 - Oracle-JDK
O Java Development Kit (JDK), promove portabilidade das aplicações desenvolvidas nessa linguagem. Existem versões open source dessa ferramenta, como o Open-JDK, no entanto a compilação e execução do DSpace 4.x funciona somente com versão Oracle-JDK 1.7.x. Esta não é uma versão livre, mas ao aceitar sua licença, há a liberação do download, sem custos para o usuário. A Oracle-JDK 1.7.x pode ser baixada no seguinte endereço:
Após baixar o arquivo, deve-se alterar sua extensão de .gz para .tar.gz. Exemplo: de jdk-7u71-linux-x64.gz para jdk-7u71-linux-x64.tar.gz. Feito isso, estando logado como root, é necessário descompactar o pacote por meio dos comandos:
mkdir /opt/jdk tar -zxf jdk-7u71-linux-x64.tar.gz -C /opt/jdk
Feito isso, deve-se instalar o pacote, o que pode ser efetuado, estando ainda logado como root, por meio dos comandos:
update-alternatives --install /usr/bin/java java /opt/jdk/jdk1.7.0_71/bin/java 100 update-alternatives --install /usr/bin/javac javac /opt/jdk/jdk1.7.0_71/bin/javac 100
Após, como root, execute comando update-alternatives --config java, e selecione a opção (digitando o número de aparece à esqueda) em que aparece o caminho /opt/jdk/jdk1.7.0_71.
Verifique se a versão corrente é a versão instalada por meio de:
java -version
Deve aparecer como resposta, no terminal, algo como:
"java version "1.7.0_71" Java(TM) SE Runtime Environment (build 1.7.0_71-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)"
Passo 4 - Apache-Maven
O Apache-Maven é a ferramente que realiza a construção de toda a árvore de pacotes que serão necessários para instalação do DSpace, e além disso compila o código fonte, deixando-o pronto para instalação. A partir deste ponto, do passo-a-passo de instalação, o Apache-Maven e as demais ferramentas devem ser instaladas e executadas com o usuário de sistema dspace. Para a instalação do Apache-Maven, deve-se baixar o seu pacote binário no endereço http://maven.apache.org/ e descompactá-lo, estando dentro de /home/dspace/ por meio do comando (x.x.x representa o número da versão baixada):
tar -vzxf apache-maven-x.x.x-bin.tar.gz
Caso esteja em um servidor que necessita de autenticação em um servidor proxy para baixar recursos da internet, é necessário criar uma pasta de nome .m2 dentro de /home/dspace/, e dentro da pasta .m2 criar um documento de nome settings.xml com o seguinte conteúdo:
<settings> <proxies> <proxy> <active>true</active> <protocol>http</protocol> <host>10.1.1.1</host> <port>80</port> <username>username</username> <password>password</password> <nonProxyHosts>localhost|127.0.0.1</nonProxyHosts> </proxy> </proxies> </settings>
Onde 10.1.1.1 deve ser trocado pelo endereço IP do proxy. O número 80 é porta de conexão com este, e username e password são o login e senha de autenticação no proxy.
Passo 5 -Bibliotecas “jai_core”e “jai_imageio”, e o rederizador “XPDF”
Nativamente, o DSpace não cria, e portanto não exibe, as miniaturas das capas dos documentos PDF’s depositados. Assim é necessário que se instale um conjunto de ferramentas (as bibliotecas jai_core e jai_imageio, e o renderizador XPDF) para que essa funcionalidade seja executada de forma correta. Com o Apache-Maven instalado e configurado, deve-se fazer download das bibliotecas jai_core e jai_imageio, e renderizador XPDF dentro da pasta /home/dspace. Estes pacotes podem ser baixados nos seguintes endereços:
- jai_core: http://www.java2s.com/Code/JarDownload/jai/jai_core-1.1.2_01.jar.zip
- jai_imageio: http://download.java.net/media/jai-imageio/builds/release/1.1/jai_imageio-1_1-lib-linux-i586.tar.gz
- XPDF : https://mirror.hmc.edu/ctan/support/xpdf/xpdfbin-linux-3.04.tar.gz
Após o download, estando dentro /home/dspace, devem ser executados os seguintes comandos:
/home/dspace/apache-maven-x.x.x/bin/mvn install:install-file \ -Dfile=jai_core-1.1.2_01.jar \ -DgroupId=javax.media \ -DartifactId=jai_core -Dversion=1.1.2_01 \ -Dpackaging=jar \ -DgeneratePom=true
Após a execução, o sistema deverá exibir um pequeno log e a mensagem final BUILD SUCCESSFUL
/home/dspace/apache-maven-x.x.x/bin/mvn install:install-file \ -Dfile=jai_imageio-1_1/lib/jai_imageio.jar \ -DgroupId=com.sun.media \ -DartifactId=jai_imageio \ -Dversion=1.0_01 \ -Dpackaging=jar \ -DgeneratePom=true
Após a execução, o sistema deverá, novamente, exibir um pequeno log e a mensagem final BUILD SUCCESSFUL
Passo 6 - Apache-Ant
A ferramenta que executa a tarefa de instalação do DSpace é o Apache-Ant. Para tornar esse software disponível para uso, basta realizar o download de seu pacote binário em http://ant.apache.org/ e descompactá-lo dentro de /home/dspace.
Passo 7 - Apache-TomCat
O Apache-Tomcat, é o servidor Web que torna disponível o acesso do DSpace via rede (seja a Intranet ou a Internet). Para instalá-lo basta baixar seu pacote binário em http://tomcat.apache.org/ e descompactá-lo dentro de /home/dspace. É necessário que se faça ainda uma mudança na codificação de apresentação dos arquivos. Acessando o arquivo home/dspace/apache-tomcat-x.x.x/conf/server.xml e inserindo o termo URIEncoding="UTF-8" no seguinte conector:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />
Passo 8 - Compilando e instalando o DSpace/TEDE2
Nos passos 1 a 7, foi construída a infraestrutura necessária para compilação, instalação e execução do DSpace/TEDE2 . Portanto, o ponto agora a ser abortado é a seguinte sequência:
- Compilação do código fonte do DSpace, que é realizada por meio do Apache-Maven;
- Instalação do código compilado por meio do Apache-Ant; e
- Ativação do serviço Web por meio do Apache-Tomcat.
Todos comandos a seguir, salvo se explicitado o login de root, devem executados com o usuário dspace.
- A compilação é executada dentro da pasta TEDE2-fonte, e se dá por meio do comando:
/home/dspace/pache-maven-x.x.x/bin/mvn -Pxpdf-mediafilter-support -U clean package
Após aproximadamente 30 min, o sistema deve responder com um log na tela, e ao final a mensagem BUILD SUCCESSFUL.
- Uma falha bastante comum, nesse processo, é o erro de permissão de escrita na pasta definida no dspace.install.dir=/dspace-base do arquivo build.properties. Portanto para se certificar que o diretório destino de instalação está com permissões de escrita ao usuário dspace, deve-se logar como root e executar o comandos:
mkdir /dspace-base chown dspace:dspace /dspace-base
Retornado-se ao login com o usuário dspace, a instalação deve ser executada dentro de TEDE2-fonte/dspace/target/dspace-4.x-build, e é realizada por meio do comando:
/home/dspace/apache-ant-x.x.x/bin/ant fresh_install
Após, no máximo 10 min, o sistema deve responder com um log na tela, e ao final a mensagem BUILD SUCCESSFUL.
- A ativação do servidor Web Apache-Tomcat com a aplicação do DSpace se dá por meio dos comandos:
mv /home/dspace/apache-tomcat-x.x.x/webapps/ROOT \ /home/dspace/apache-tomcat-x.x.x/webapps/tomcat cp -R /home/dspace/dspace-base/webapps/jspui /home/dspace/apache-tomcat-x.x.x/webapps/ROOT cp -R /home/dspace/dspace-base/webapps/solr /home/dspace/apache-tomcat-x.x.x/webapps/ cp -R /home/dspace/dspace-base/webapps/oai /home/dspace/apache-tomcat-x.x.x/webapps/ export JAVA_OPTS="-Xmx512M -Xms64M -Dfile.encoding=UTF-8"
este último expande os parâmetro de memória reservada para o Apache-Tomcat. Contudo, se o servidor for reiniciado, essa configuração será perdida. Para torná-la definitiva, deve-se, com perfil de root, editar o arquivo /etc/profile e adicionar ao final dele as linhas:
JAVA_OPTS="-Xmx512M -Xms64M -Dfile.encoding=UTF-8" export JAVA_OPTS
Por fim, basta que se inicie o servidor Apache-Tomcat:
/home/dspace/apache-tomcat-x.x.x/bin/startup.sh
O TEDE 2 poderá ser acessado em https://meuservidor.br:8080, onde o termo meuservidor deverá ser substituído pelo endereço do servidor onde está instalado o DSpace.
Passo 9 - Configurações pós-instalação
Após a instalação do DSpace/TEDE2 é necessário que se crie uma senha de administrador, o que pode ser feito pelo comando:
/dspace-base/bin/dspace create-administrator
Ainda é necessário que se inclua alguns comandos na Contrab do sistema, que é uma forma de agendar algumas tarefas que deverão ser executadas durante o período em que o uso do sistema pela comunidade não seja tão intenso. Esse procedimento pode ser efetuado, quando se está logado como root, se executa o comando: crontab -e . Após abertura do arquivo da crontab, devem ser adicionadas as seguintes linha no final do texto:
0 0 * * * /dspace-base/bin/dspace oai import
0 1 * * * /dspace-base/bin/dspace filter-media
0 2 * * * /dspace-base/bin/dspace index-discovery
Customizações específicas
Há parâmetros que são inerentes a cada instituição, como o nome da instituição, os logos exibidos no cabeçalho e rodapé e telefone de contato administrativo. A seguir será abordado esse passo final de customização, que deverá deixar a BDTD local pronta utilização da comunidade.
Há dois logos que devem ser substituídos:
logo do rodapé (50 x 50 pixels) e;
logo do cabeçalho (132 x 132 pixels) .
Basta que se substitua respectivamente, com os logos da instituição, os arquivos:
/home/dspace/apache-tomcat-x.x.x/webapps/ROOT/image/logo-instituicao-rodape.png /home/dspace/apache-tomcat-x.x.x/webapps/ROOT/image/logo-instituicao.png
Lembrando que os arquivos substituídos deverão ter mesmo nome e extensão (logo-instituicao-rodape.png e logo-instituicao.png).
No caso do nome da instituição do contato telefônico, é necessário que se edite o arquivo /dspace-base/config/dspace.cfg, alterando-se os seguintes parâmetros:
- Dados da instituição
dspace.institution.heading1=Nome da instituicao dspace.institution.phone=(62) 3333-3333 dspace.institution.email=repositorio@instituicao.br
Para que estas últimas alterações entrem em vigor é necessário que se reinicialize o Apache-Tomcat:
/home/dspace/apache-tomcat-x.x.x/bin/shutdown.sh
Executar o comando ps -ef | grep tomcat
até perceber que o serviço do Apache-Tomcat não está mais de pé, e só iniciar novamente o servidor:
/home/dspace/apache-tomcat-x.x.x/bin/startup.sh
Exportação de Teses e Dissertações do Sistema TEDE Antigo
Para exportação de teses e dissertações de um sistema TEDE, o IBICT desenvolveu um Addon de exportação, conjunto de programas que podem ser adicionados ao sistema TEDE, para disponibilizar a facilidade de exportação de teses e dissertações no formato de importação do sistema TEDE 2. Este addon, não afeta as facilidades existentes no sistema TEDE, apenas acrescenta essa nova facilidade, ofertando certa segurança à aplicação.
Nesse ponto, a facilidade de exportação fica disponível apenas para o administrador, evitando acessos indevidos a este tipo de procedimento. Da mesma forma, os arquivos exportados ficam disponíveis em uma pasta do servidor em que o sistema TEDE esta implementado. Assim, somente a equipe técnica da instituição tem acesso aos registros e arquivos exportados.
Para a implantação deste addon de exportação, no entanto, é necessária algumas operações que garantem um menor impacto no sistema. Entretanto, é importante mencionar que este addon não faz alteração nos dados existente no sistema, apenas copia os dados necessários para a exportação, sem alterá-los.
Procedimentos para instalação do Plug-in de exportação de teses e dissertações do sistema TEDE para sistemas desenvolvidos com DSpace
O plugin, como um conjunto de programas, deve ser instalado pela equipe de TI da instituição. Para tanto, segue-se um procedimento. A instalação do plugin dá-se por meio de cópia de arquivos em diretórios específicos, não existindo um instalador. Assim, a seguir, o passo-a-passo para a instalação.
Passo 1 - Obtenção do Plugin
O Plugin está disponível, em formato compactado, com extensão .zip, para ser baixado no endereço https://github.com/ibict-br/TEDE-legado/tree/exportador ou pode-se solicitar um cópia pelo email: bdtd@ibict.br. O nome do arquivo é "TEDE-legado-exportador.zip" e deve ser descompactado diretamente no servidor do sistema TEDE antigo ou em um desktop para ser, posteriormente, transferido ao servidor.
Passo 2 - Fazer cópia de segurança do sistema TEDE
O Plugin de exportação não faz grandes alterações no sistema TEDE que altere os dados das teses e dissertações contidos no sistema, mas por precaução, é altamente recomendável que se faça uma cópia de segurança, em todo procedimento de manutenção de sistemas informatizados.
Assim, fazer uma cópia de segurança alinha-se aos procedimentos padrão de manutenção do sistema TEDE. Com esse procedimento, assegura-se a integridade original de todo o sistema TEDE. Caso venha ocorrer algum problema, basta retornar a cópia de segurança para ter o sistema no estado original.
Para os programas e arquivos arquivados no sistema, basta copiar o sistema de diretório do sistema TEDE, desde o diretório raiz (diretório inicial do sistema, em que está contido todo o sistema). Geralmente, se instalado na forma padrão, por ser um sistema PHP/Apache, fica no diretório /var/www/[nome-do-diretório-tede]. Para copiar pode-se utilizar o comando de sistema operacional cp –R que copia recursivamente os diretórios.
cp –R /var/www/[nome-do-diretório-tede] /var/www/[nome-do-backup]
Para as bases de dados, o sistema TEDE possui duas bases de dados, TDE e TDE_SUBMISSAO, em banco de dados MySql. Assim, é importante que a cópia de segurança contemple as duas bases de dados. Para fazer a cópia das bases de dados, pode-se fazer uso das facilidades do banco de dados MySql, da seguinte forma:
mysqldump -u [nomedousuario] -p [nomeBanco] > [nomeBackUp]
Passo 3 - Descompactar o Plug-in de exportação
O Plugin de exportação deve ser descompactado ou copiado para o diretório raiz do sistema TEDE, sobrescrevendo alguns programas. Por isso, é importante a cópia de segurança. O Plug-in de exportação possui uma nova pasta chamada arquivo-exportacao e alguns novos programas a serem sobrescritos na pasta tde-admin. Deve-se ter cuidado para manter os programas já existentes, apenas copiar ou sobrescrever os novos programas. A estrutura do Plugin de exportação é o seguinte:
- arquivo-exportacao (pasta vazia em que as teses e dissertações serão exportadas, pasta destino dos dados exportados)
- tde-admin (pasta existente no sistema TEDE, com os programas novos e alterados)
- biblioteca (pasta existente no sistema, com novos programas)
- export.php (programa exportador)
- detalhar_export.php (página de detalhamento da exportação)
- diretorio_export.php (arquivo para configuração do diretório de saída da exportação – padrão: arquivos_exportacao)
- excluir_export.php (script de exclusão de uma exportação)
- exportar.php (página de detalhamento da exportação)
- tde_admin.php (página de administração do sistema TEDE, único programa a ser sobrescrito, para adicionar a opção de menu de exportação)
- tela_export.php (página de que exibe as exportações)
- biblioteca (pasta existente no sistema, com novos programas)
- log-export.sql (script sql para alteração da base de dados, TDE, do sistema TEDE para criar tabela para conter os registros de logs da exportação).
Passo 4 - Verificar permissões
Como o Plugin precisa criar pastas e arquivos no diretório arquivos_exportacao, o sistema TEDE requer permissão de escrita neste diretório. Para tanto, use o comando de sistema operacional chmod com o argumento –R (recursivo a todos os subdiretórios) e 755 (7=permissão total para o dono do sistema, 5=leitura e execução para os membros do grupo do dono do sistema, e 5=leitura e execução para os demais usuários). Assim, de forma padrão, o comando ficaria assim:
chmod –R 755 [usuário-Apache:grupo-Apache, geralmente o www-data para os dois] arquivo-exportacao
Para verificar o usuário dono do sistema, pode-se dar o comando ps – ef | grep apache. Uma lista é apresentada, que na primeira coluna aparece o dono do sistema, que, geralmente, é o www-data.
Passo 5 - Criar tabela para registros de log da exportação
Como o Plug-in de exportação contempla o registro e visualização do procedimento de exportação diretamente na interface do sistema TEDE, uma tabela de banco de dados deve ser criada para esse fim. Para tanto, o arquivo “log_export.sql” é um script MySql que cria essa tabela (e deve ser aplicado na base TDE), que, também, pode ser criada manualmente com o comando em SQL (Structured Query Language), apresentado a seguir:
CREATE TABLE IF NOT EXISTS `log_export` ( `le_data` datetime NOT NULL, `tsIdentificador` int(11) NOT NULL, `le_metadados` text, `le_arquivos` text, `le_diretorio` varchar(200) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Passo 6 - Execução da exportação
A execução da exportação das teses e dissertações do sistema TEDE, no formato DSpace, dá-se na página de administrador. Para tanto o usuário deve ter acesso (usuário e senha com perfil de administrador do TEDE) para executá-lo. Ao entrar na página do administrador, uma nova opção no menu à esquerda se apresenta “Exportador DSPACE”, como mostra a Figura abaixo.