Levantar e instalar o Corpógrafo
1. Informação geral
O Corpógrafo é disponibilizado livremente ao público de duas formas:
- on-line:
esta é a forma mais simples para o utilizador. Nesta
opção, o utilizador recorre à versão do
Corpógrafo que se encontra instalada no servidor da Linguateca,
sendo para isso apenas necessário proceder a uma
inscrição via formulário
on-line. Recorrendo a esta forma de utilização, o
utilizador não necessita de fazer qualquer
instalação de software no seu computador podendo utilizar
o Corpógrafo logo após receber a
confirmação da sua inscrição. Esta é
a forma de utilização recomendada para a maioria dos
utilizadores e não envolve qualquer custo ou trabalho de
manutenção.
Nota: o Corpógrafo é disponibilizado
gratuitamente, mas não oferecemos qualquer garantia relativamente
ao desempenho computacional, ao tempo de serviço, nem à
salvaguarda dos dados do utilizador contra eventuais falhas.
- em pacote instalável: desta forma, distribuimos o código fonte do Corpógrafo sob a licença GPL.
Significa isto que poderá levantar o Corpógrafo para
que este seja instalado num servidor local. Esta forma de
instalação só é recomendada a quem tenha avançados conhecimentos de administração de sistemas e de Linux.
Não é de todo aconselhável para quem pretende
apenas utilizar o Corpógrafo no âmbito dos seus trabalhos,
sendo para isso recomendada a utilização na rede a partir
dos nossos servidores. O pacote instalável permite a
instalação de todo o Corpógrafo assim como do seu ambiente de
administração e desenvolvimento. A
distribuição é feita segundo a licença GPL,
a qual permite a alteração e a
redistribuição gratuita de todo os programas do
Corpógrafo e dos programas produzidos a partir desse código
fonte do Corpógrafo nos mesmos termos. Para mais
informações ver a licença GPL que acompanha a distribuição do Corpógrafo.
2. Como levantar e instalar o Corpógrafo
O Corpógrafo é disponibilizado num pacote "tgz" que pode ser levantado aqui (versão 4.3.0). A melhor forma de instalar o Corpógrafo é utilizando este programa em Perl, conforme descrito abaixo.
Em termos de equipamento, os requisitos mínimos para a instalação do Corpógrafo são:
- CPU: Pentium IV @ 2Ghz
- RAM: 512Mb
- HD: Cerca de 500Mb de espaço livre, e uma
porção variável, dependendo do que se pretende
fornecer a cada utilizador do Corpógrafo (ex.: 50 Mb por
utilizador)
Até agora o Corpógrafo foi apenas instalado
sobre sistemas operativos Linux, e em particular sobre
distribuições RedHat 9.X, Fedora Core 2-4 e Ubuntu 7.04.
Aconselha-se vivamente a utilização destas
distribuições para a instalação do
Corpógrafo, embora nos pareça possível (embora
não testado) a instalação do Corpógrafo
noutras distribuições Linux. Em qualquer caso,
recomenda-se uma instalação completa de todo o sistema
operativo.
Para além disso, são necessários os seguintes
pacotes, que podem já estar incluídos na sua
distribuição Linux:
São ainda necessários os seguintes pacotes:
E são também necessários os seguintes
módulos Perl (que serão instalados pelo programa de
instalação do Corpógrafo ou poderão ser
instalados a partir do CPAN):
- Carp
- CGI
- DBD::mysql
- DBI
- Encode
- File::Basename
- FileHandle
- GD::Graph::lines
- Getopt::Long
- HTML::Entities
- HTML::Format
- HTML::FormatText
- HTML::TokeParser::Simple
- HTML::TreeBuilder
- HTML::Tree
- HTTP::Headers
- HTTP::Parse
- HTTP::Request
- Lingua::PT::PLN
- Lingua::PT::PLNbase
- locale
- LWP::Simple
- LWP::UserAgent
- Mail::Sendmail
- POSIX
- RTF::Config
- RTF::Parser
- Shell
- Text::Unaccent
- threads
- threads::shared
- Time::HiRes
- Time::Local
- Unicode::Map8
- Unicode::String
- URI::URL
- vars
- XML::Parser
- XML::Parser::PerlSAX
- Yahoo::Search
A instalação do Corpógrafo pode ser iniciada
executando, como utilizador 'root', o programa de instalação:
bash# ./perl install.pl
Nota: O ficheiro .tgz de distribuição
do Corpógrafo deve estar colocado na mesma directoria que o
programa de instalação. Para a execução do
programa install.pl pode ser necessário instalar vários
módulos Perl. A forma mais simples para instalar módulos
Perl é através do programa cpan, um programa que serve
para descarregar e instalar módulos Perl. Este programa
já deverá estar incluído na sua
distribuição de Perl. No terminal, execute 'cpan' para
confirmar que está instalado. Se não encontrar o comando
cpan, pode obtê-lo em http://search.cpan.org/~andk/CPAN-1.9301/lib/CPAN.pm.
Levante o Corpógrafo e siga as instruções no INSTALL do arquivo.
A primeira vez que correr o comando cpan, este irá pedir-lhe
para configurar o CPAN (definições de utilizador e
repositórios), bastando seguir as instruções que
lhe são apresentadas. Deve garantir que o CPAN está
configurado antes de correr o programa install.pl.
- Verificar serviços
O programa de instalação irá verificar as versões do MySQL e Apache que está a executar.
O Corpógrafo necessita das versões 5.0 do MySQL e 2.0 do
Apache. Se estas versões não forem encontradas no seu
sistema, terá que as instalar.
- Verificar bibliotecas e programas externos
O programa
irá verificar se tem os programas necessários instalados.
Poderá instalar os programas em falta no final da
instalação do Corpógrafo.
- Verificar módulos
O programa irá verificar se tem os módulos Perl
necessários instalados, e tentará instalar os que
estão em falta. Dependendo da configuração do seu
MySQL, poderá ter problemas com a instalação do
módulo DBD::mysql. Se isso acontecer deverá forçar
a instalação deste módulo através do
programa cpan (force install DBD::mysql). O install.pl pode detectar
que o módulo threads não está instalado. Isto pode
ocorrer se a sua versão de Perl não tiver sido compilada
com suporte para threads (verifique no terminal com o comando 'perl -e
"use threads"'. Se der erros é porque o seu Perl não os
suporta). Nesse caso, deverá obter uma versão
com suporte de threads ou deverá obter o código fonte
do Perl e compilar usando a opção '-Dusethreads' ao
invocar './configure' (siga as instruções do ficheiro
INSTALL incluido com o código fonte). Dependendo da
configuração do seu sistema, poderá ter que
interromper a instalação do Corpógrafo e instalar
manualmente módulos em falta.
- Cópia de ficheiros
O programa irá copiar os ficheiros que compõem o Corpógrafo e o SAGI para as directorias respectivas.
- Criação de links simbólicos
O
Corpógrafo precisa criar links simbólicos para os
ficheiros HTML. Será pedida a directoria usual para colocar os
ficheiros HTML. Esta directoria é "/var/www/html" (por exemplo no Fedora)em alguns sistemas e "/var/www/" em outros (por examplo em Debian).
- Configuração das bases de dados MySQL
Será
pedida a password de 'root' do MySQL. O Corpógrafo necessita
desta informação para poder criar as bases de dados
necessárias e respectivos utilizadores.
Depois de as bases de dados MySQL serem copiadas, serão criados
três utilizadores, um para cada base de dados. Terá que
escolher palavras-passe para cada um destes utilizadores.
- Configuração do servidor Apache
Terá de escolher duas palavras-passe para autenticação com o servidor. A primeira palavra-passe é para a conta de
administração global do sistema e a segunda para a
gestão das contas de utilizadores.
O Nooj vai permitir aos utilizadores pesquisar os textos no
Corpógrafo usando expressões de pesquisa com marcas POS.
Se não desejar instalar o Nooj, será sempre
possível executar as pesquisas com expressões regulares.
Para a instalação do NooJ, deverá descomprimir o
ficheiro de distribuição para /corpora/gc/NooJ/. As funcionalidades do Corpógrafo que dependem do NooJ só funcionarão se tiver também o programa "noojapply.exe". Para obter este programa deve contactar Max Silberztein ou a Université de Franche-Comté O ficheiro
noojapply.exe deve ser copiado para a pasta /corpora/gc/NooJ/.
Pode necessitar alterar o caminho dos executáveis para o mono. Verifique se o caminho para o mono no seu sistema é o mesmo que está definido em /corpora/gc/lib/NooJUtil.pm. Se necess&aacuJe;rio, altere as variaveis $mono e $nooj. Os recursos do Nooj estão separados por língua em diversas pastas em /corpora/gc/NooJ/. Por exemplo, para actualizar um dicionário português, deve
copiar o ficheiro .nod para /corpora/gc/NooJ/pt/. Para adicionar um novo dicionário, alemão, por exemplo, deve criar uma pasta/corpora/gc/NooJ/de e copiar o ficheiro .nod para lá. Pode obter um dicionário português em http://195.220.182.190/site/pages/portuguese.html ou na página alojada no repositório da Linguateca, http://www.linguateca.pt/Repositorio/Port4Nooj/.
O CWB vai permitir ao
corpógrafo fazer o alinhamento entre dois textos de forma
automática. Se não instalar este programa, as seguintes
funcionalidades estarão indisponíveis: 'Alinhar
ficheiros', 'Corpora paralelos', 'Pesquisa paralela'.
Para a instalação do CWB, deverá descomprimir e instalar o arquivo, garantindo que os executaveis são instalados em /usr/bin/.
Se instalar noutra directoria, necessita editar o ficheiro /corpora/gc/lib/CWBalign.pm e redefinir $cwb_path. Pode ser ainda necessário especificar onde está a directoria registry do CWB na variável $registry_path no ficheiro /corpora/gc/lib/CWBalign.pm. Por omissão o caminho para a directoria de registo é /usr/share/cwb/registry.
Para testar este caminho pode executar o seguinte comando no terminal:
cwb-align foo1 foo2 s. O cwb-align deverá devolver um erro indicando o caminho do registo.
- Melhorar o desempenho do MySQL para o Corpógrafo
A configuração do servidor MySQL deve ser modificada para
permitir um melhor desempenho do Corpógrafo. Edite os ficheiros
/etc/mysql/my.cnf ou /etc/mysql.cnf, de acordo com o sistema, e adicione as linhas seguintes:
socket=/tmp/mysql.sock
skip-locking
key_buffer = 128M
max_allowed_packet = 10M
table_cache = 1024
sort_buffer_size = 64M
read_buffer_size = 64M
myisam_sort_buffer_size = 64M
thread_cache = 6
query_cache_size = 64M
query_cache_limit = 128M
innodb_file_per_table
tmpdir=/corpora/mysql/tmp
max_connections=250
A cache RAM deve ser seleccionada com uma tamanho o mais elevado possível para melhorar o desempenho global. Depois de mudar estes
parâmetros, re-inicie o servidor MySQL.
- Firewall
Para que o Corpógafo esteja disponível aos utilizadores
da sua rede LAN, verifique que as seguintes portas estão
disponíveis no servidor do Corpógrafo:
- 80: interface http
- 25: servidor Sendmail
3. Problemas conhecidos e sua resolução
- O MySQL indica "Error: Client does not support authentication
protocol:"
Este
problema pode ocorrer quando se tenta utilizar uma extensão
MySQL mais antiga com o MySQL 4.1.1 ou superior. Pode normalmente ser
resolvido mudando a variável de ambiente do MySQL
"old_passwords" para "yes" no ficheiro de configuração
/etc/my.cnf, e redefinindo as palavras-passe.
Ver: http://dev.mysql.com/doc/refman/5.0/en/old-client.html para mais
informações.
- As autorizações para os programas estão correctas mas o
Apache diz não ter autorização para execução
(relacionado com as flags do SE Linux)
Alguns sistemas estão configurados com a opção
'Security Enhanced', que não permite aceder a alguns
serviços necessários para a versão corrente do
Corpógrafo. A solução é desligar o modo
Security Enhanced. Para isso:
- Edite o ficheiro '/etc/sysconfig/selinux' para desligar o Security-Enhanced Linux (necessita reboot)
- Defina 'SELINUX=disabled'
- Reinicie o computador para que as acções tenham efeito (pode ser feito no final da instalação)
Última actualização desta página: 19 de Março de 2010
Perguntas, comentários e sugestões