Guia de tecnologias

Como instalar o OpenERP 6 no Ubuntu 10.04 LTS Server

10 min read Instalação Atualizado 03 Oct 2025
Instalar OpenERP 6 no Ubuntu 10.04 LTS
Instalar OpenERP 6 no Ubuntu 10.04 LTS

Importante: os links para os tutoriais originais e as versões citadas foram mantidos. Este tutorial explica um método manual para ter maior controle na atualização e customização do sistema.

Sumário

  • Objetivo e contexto
  • Requisitos iniciais
  • Passo a passo: 1 a 6 (construção do servidor, usuário, PostgreSQL, dependências, código, configuração)
  • Abordagens alternativas e quando adotá-las
  • Caixa de fatos: caminhos, portas e versões citadas
  • Lista de verificação por função (admin, dev, ops)
  • Testes básicos e critérios de aceitação
  • Notas de segurança e privacidade
  • Resumo

Objetivo e contexto

Este guia explica a instalação manual do OpenERP 6 num servidor Ubuntu 10.04 LTS. O objetivo é obter um sistema:

  • Acessível apenas via serviços criptografados (SSL) quando exposto ao cliente GTK, navegador web, WebDAV e CalDAV.
  • Fácil de atualizar e customizar, com controle sobre arquivos e dependências.

Por que não usar o pacote pronto (apt)? Porque o pacote disponível nas distribuições pode estar desatualizado, limitar a flexibilidade e dificultar upgrades e patches. Fazer a instalação manual dá mais controle sobre versão, caminhos e personalizações.

Referência do autor original: http://www.theopensourcerer.com/2011/04/19/how-to-install-openerp-6-on-ubuntu-10-04-lts-server-part-1/ http://www.theopensourcerer.com/2011/04/21/how-to-install-openerp-6-on-ubuntu-10-04-lts-server-part-2-ssl/

Requisitos iniciais

  • Um servidor com Ubuntu 10.04 LTS instalado.
  • Acesso root ou sudo.
  • Conexão de rede para baixar pacotes e tarballs.
  • Familiaridade básica com linha de comando e edição de arquivos de texto.

Nota: este guia não é um tutorial completo de segurança. Ele indica práticas básicas e pontos de atenção.

Passo 1 — Preparar o servidor base

Instale apenas o mínimo necessário ao instalar o sistema operacional. Durante a instalação você pode optar por instalar o openssh-server ou fazê-lo depois.

Depois do primeiro reboot, instale o SSH e um bloqueador básico de ataques por força bruta (denyhosts). Existem outras opções (fail2ban, etc.), mas denyhosts é simples de configurar.

sudo apt-get install openssh-server denyhosts

Atualize os pacotes e aplique as correções disponíveis:

sudo apt-get update
sudo apt-get dist-upgrade

Reinicie o servidor se o kernel ou pacotes críticos forem atualizados. Verifique o acesso SSH após o reboot.

Dica: considere configurar acesso SSH por chave pública para reduzir risco de força bruta.

Passo 2 — Criar o usuário do OpenERP

Crie um usuário de sistema que vai possuir e executar a aplicação. Um usuário de sistema normalmente tem UID < 1000 e shell desabilitado.

sudo adduser --system --home=/opt/openerp --group openerp

Explicação rápida: /opt/openerp será a pasta onde o código do servidor e do cliente web residirão. Se quiser outro caminho, terá de ajustar instruções e configurações posteriores.

Importante: este usuário não é um usuário humano para login; é uma conta de serviço.

Passo 3 — Instalar e configurar o PostgreSQL

Instale o servidor de banco de dados PostgreSQL:

sudo apt-get install postgresql

Troque para o usuário postgres para criar o papel de banco de dados (role) que o OpenERP usará:

sudo su - postgres

Crie o usuário (role) com permissão de criar banco de dados. Você será solicitado a fornecer uma senha.

createuser --createdb --username postgres --no-createrole --pwprompt openerp

Você verá prompts como:

Enter password for new role: <– Enter it again: <– Shall the new role be a superuser? (y/n) <– y

Saia do usuário postgres:

exit

Guarde a senha escolhida — ela será usada no arquivo de configuração do OpenERP.

Nota: conceder superuser ao papel openerp simplifica administração em ambientes pequenos. Em produções maiores, considere privilégios mais restritos e práticas de segurança específicas.

Passo 4 — Instalar bibliotecas Python necessárias

Instale as bibliotecas Python que o OpenERP 6 usa. Estes pacotes vêm dos repositórios oficiais:

sudo apt-get install python python-psycopg2 python-reportlab \
python-egenix-mxdatetime python-tz python-pychart python-mako \
python-pydot python-lxml python-vobject python-yaml python-dateutil \
python-pychart python-pydot python-webdav

Se pretende usar o cliente web (OpenERP Web), instale também:

sudo apt-get install python-cherrypy3 python-formencode python-pybabel \
python-simplejson python-pyparsing

Explicação curta de alguns pacotes:

  • python-psycopg2: conector PostgreSQL para Python.
  • python-reportlab: geração de relatórios em PDF.
  • python-cherrypy3: servidor web para o cliente web.

Se utilizar versões diferentes do Python ou ambientes virtuais, ajuste os pacotes e caminhos conforme necessário.

Passo 5 — Baixar e instalar o código do OpenERP

Baixe os tarballs oficiais para a versão que pretende instalar. No momento desta escrita, a versão usada era a 6.0.2.

wget http://www.openerp.com/download/stable/source/openerp-server-6.0.2.tar.gz

Se desejar o cliente web:

wget http://www.openerp.com/download/stable/source/openerp-web-6.0.2.tar.gz

Extraia os arquivos no directório /opt/openerp e ajuste permissões:

cd /opt/openerp
sudo tar xvf ~/openerp-server-6.0.2.tar.gz
sudo tar xvf ~/openerp-web-6.0.2.tar.gz

Mude a propriedade dos arquivos para o usuário openerp:

sudo chown -R openerp: *

Para simplificar upgrades, copie (ou mova) o conteúdo para pastas com nomes estáveis (por exemplo, server e web). Assim você pode extrair novas versões em diretórios com números de versão e depois sobrescrever as pastas “server” e “web” quando estiver pronto para promover a nova versão.

sudo cp -a openerp-server-6.0.2 server
sudo cp -a openerp-web-6.0.2 web

Estratégia de upgrade recomendada: extraia a nova versão ao lado, teste a nova pasta (ex.: /opt/openerp/openerp-server-6.0.3), e quando tudo estiver validado copie/cole para as pastas de execução ou altere um symlink gerenciado para apontar para a versão testada.

Importante: mantenha módulos customizados e dados fora de diretórios temporários de versão, em um local persistente (por exemplo /opt/openerp/custom_addons) para que não sejam sobrescritos acidentalmente.

Passo 6 — Configurar o OpenERP (arquivo de configuração)

O arquivo de configuração padrão encontra-se na pasta /opt/openerp/server/doc/. Recomenda-se criar um arquivo de configuração em /etc para facilitar a gestão do serviço.

Exemplo (ajustado e traduzido nos comentários):

[options]
; Esta é a senha que permite operações de banco de dados
; Será escrita pelo servidor quando a senha for alterada
; !! Mantenha este arquivo seguro !!
; admin_passwd = admin
root_path = /opt/openerp/server/bin
without_demo = False
verbose = False
; Configurações do banco de dados
db_user = openerp
db_password = ********
; Descomente a linha abaixo *após* criar o banco. Ativa a checagem automática de módulos ao iniciar.
; db_name = False
db_port = False
db_host = False
db_maxconn = 64
; Configurações de rede
xmlrpc = True
xmlrpc_interface =
xmlrpc_port = 8069
netrpc = True
netrpc_interface =
netrpc_port = 8070
; Descomente para xml-rpc via SSL
;xmlrpcs = True
;xmlrpcs_interface =
;xmlrpcs_port = 8071
;secure_pkey_file = /etc/ssl/openerp/server.pkey
;secure_cert_file = /etc/ssl/openerp/server.crt
; Configuração de logs
logfile = /var/log/openerp/openerp-server.log
syslog = False
logrotate = True
log_level = info
; False impede o cliente de mostrar a lista de bancos de dados
list_db = True
addons_path = /opt/openerp/server/bin/addons
demo = {}
soap = False
reportgz = False
translate_modules = ['all']
; Parâmetros http estático
static_http_enable = False
static_http_document_root = /var/www/html
static_http_url_prefix = /
; Configuração de e-mail de saída
;smtp_user = [email protected]
;email_from = "OpenERP Support" <[email protected]>
;smtp_port = 25
;smtp_password = ********
;smtp_ssl = True
;smtp_server = mail.example.com

Copie este conteúdo para /etc/openerp-server.conf e proteja o arquivo:

sudo chown openerp:root /etc/openerp-server.conf
sudo chmod 640 /etc/openerp-server.conf

Edite a linha db_password com a senha que você criou no passo 3:

sudo nano /etc/openerp-server.conf

Para testar a inicialização do servidor manualmente (ainda rodando como seu usuário), execute:

/opt/openerp/server/bin/openerp-server.py --config=/etc/openerp-server.conf

Isto iniciará o processo em primeiro plano com seu usuário atual. Ele não funcionará plenamente até que seja executado pelo usuário openerp (permissões de DB). Interrompa com CTRL+C.

Para execução em produção, crie um script init ou um serviço Upstart/SystemV que execute o binário como o usuário openerp, leia a configuração em /etc/openerp-server.conf e direcione logs conforme necessário.

Iniciar como usuário openerp (exemplo rápido)

Um método simples para testar como o usuário openerp:

sudo su -s /bin/bash openerp -c "/opt/openerp/server/bin/openerp-server.py --config=/etc/openerp-server.conf"

Isto inicia o servidor com o usuário openerp no shell /bin/bash apenas para fins de teste. Para produção, use um init script ou gerenciador de processos.

Abordagens alternativas e quando adotá-las

  • Instalar via apt (pacote empacotado): rápido e simples. Útil para ambientes de teste ou quando a versão do repositório é aceitável. Não recomendado se precisar de versão mais recente ou customizações extensas.
  • Uso de containers (Docker/LXC): isola dependências e facilita rollback. Recomendado se sua infraestrutura já suporta containers. Não foi comum em 10.04, mas é uma alternativa moderna.
  • Ambientes virtuais Python (virtualenv): permitem ter dependências isoladas do sistema. Use se precisar executar múltiplas versões de OpenERP no mesmo host.
  • Pacotes gerenciados (contratar um provedor): terceirização da instalação e manutenção. Bom se quiser delegar a operação.

Quando evitar instalação manual:

  • Se precisa de suporte comercial com SLA imediato.
  • Se prefere atualizações automáticas e o pacote oficial atende a suas necessidades.

Modelo mental e heurísticas

  • Separação de responsabilidades: código (em /opt/openerp), configuração (em /etc), dados (PostgreSQL) e módulos customizados (em diretório separado). Isto facilita upgrades.
  • Princípio do menor privilégio: execute serviços com contas de sistema específicas e restrita. Evite executar como root.
  • Teste antes de promover: sempre valide uma nova versão em paralelo antes de substituir a versão em produção.

Caixa de fatos — valores citados e caminhos

  • Versão citada: OpenERP 6.0.2 (exemplo desta documentação).
  • Caminho do servidor: /opt/openerp/server/bin
  • Caminho do cliente web: /opt/openerp/web (se instalado)
  • Arquivo de configuração recomendado: /etc/openerp-server.conf
  • Usuário de serviço: openerp (conta de sistema)
  • Portas padrão:
    • xmlrpc: 8069
    • netrpc: 8070
    • xmlrpcs (SSL): 8071 (se ativado)
  • Log padrão: /var/log/openerp/openerp-server.log

Lista de verificação por função

Administrador de Sistema

  • Criar usuário openerp como conta de sistema
  • Instalar PostgreSQL e criar role openerp
  • Ajustar permissões em /etc/openerp-server.conf
  • Configurar init script / serviço para iniciar como openerp

Desenvolvedor / Integrador

  • Colocar módulos custom no diretório persistente (ex.: /opt/openerp/custom_addons)
  • Testar atualizações em ambiente de staging antes de promoção
  • Validar relatórios (ReportLab) e dependências Python

Operações / DevOps

  • Monitorar logs (/var/log/openerp/openerp-server.log)
  • Configurar rotação de logs (logrotate)
  • Criar backups regulares do PostgreSQL
  • Planejar janelas de manutenção para upgrades

Testes básicos e critérios de aceitação

Testes iniciais que comprovam instalação mínima:

  1. O serviço OpenERP inicia com o usuário openerp sem erros no log.
    • Critério: processo em execução e nenhuma mensagem de erro crítica no log durante a inicialização.
  2. Conexão ao PostgreSQL com as credenciais configuradas funciona.
    • Critério: OpenERP lista bancos e consegue criar um banco de testes.
  3. Cliente web (se instalado) responde na porta configurada (ex.: 8069) localmente.
  4. Teste de criação de usuário e dados básicos.
    • Critério: criar um usuário e um cliente (contact) no OpenERP via interface.

Procedimento de teste manual:

  • Inicie o servidor como openerp (ver seção acima).
  • Acompanhe o arquivo de log enquanto realiza operações simples.
  • Verifique tabelas e conexões no PostgreSQL se ocorrerem erros.

Notas de segurança e privacidade (resumo prático)

  • Criptografia: habilite XML-RPC over SSL (xmlrpcs) quando o servidor for exposto à Internet. Use certificados válidos e proteja chaves privadas.
  • Acesso ao arquivo de configuração: /etc/openerp-server.conf contém senhas — proteja com chmod 640 e propriedade openerp:root.
  • Backup e retenção: faça backups regulares do banco de dados e armazene em local seguro e com políticas de retenção.
  • GDPR e privacidade: se o sistema armazenar dados pessoais, implemente controles de acesso, logging de auditoria e processos para atender solicitações de acesso/remoção de dados. Consulte um especialista em proteção de dados para conformidade completa.

Migração e compatibilidade (notas)

  • Ao migrar entre versões (ex.: 6.0.2 → 6.0.3), extraia a nova versão em paralelo, execute testes de compatibilidade dos módulos e então promova a versão aprovada.
  • Módulos customizados: mantenha-os em um diretório separado e declare esse diretório em addons_path para evitar sobrescrita.

Resumo

  • Fazer a instalação manual do OpenERP dá mais controle sobre versões e customizações.
  • Crie um usuário de sistema (openerp), configure o PostgreSQL com um role dedicado e instale dependências Python essenciais.
  • Mantenha configuração em /etc/openerp-server.conf e código em /opt/openerp; proteja arquivos sensíveis e teste atualizações antes de promover.

Notas finais: esta documentação é focada em Ubuntu 10.04 LTS e OpenERP 6.x. Para versões de sistema operacional ou do OpenERP mais recentes, adapte pacotes, comandos e caminhos conforme necessário.

Resumo rápido (takeaways):

  • Use accounts de sistema e diretórios separados para código, configuração e módulos customizados.
  • Teste upgrades em paralelo antes de promover para produção.
  • Proteja senhas e habilite SSL quando o serviço for acessível externamente.
Autor
Edição

Materiais semelhantes

Instalar e usar Podman no Debian 11
Containers

Instalar e usar Podman no Debian 11

Apt‑pinning no Debian: guia prático
Administração de sistemas

Apt‑pinning no Debian: guia prático

Injete FSR 4 com OptiScaler em qualquer jogo
Tecnologia

Injete FSR 4 com OptiScaler em qualquer jogo

DansGuardian e Squid com NTLM no Debian Etch
Infraestrutura

DansGuardian e Squid com NTLM no Debian Etch

Corrigir erro de instalação no Android
Android

Corrigir erro de instalação no Android

KNetAttach: Pastas de Rede remota no KDE
KDE

KNetAttach: Pastas de Rede remota no KDE