18.03  
Inicio
Principal
Inicio
Noticias
Artigos
Regras da Lista
Assinar a Lista
Histórico da Lista
PC-BSD: Artigos
PC-BSD: Notícias
Galeria de Imagens
Contador Usuários FUG
FUGs Estaduais
Downloads
Enquetes
FAQ
Resumo do Site
Links
Pesquisar
Contato
Sobre a FUG-BR
RSS / Twitter
-
DOC-BR (FUG BR)
Introdução
Projeto DOC-BR
Handbook
FAQ Oficial
-
+ Noticias
Alertas de Seguranca
Alertas em Ports
BSD em Geral
DaemonNews (Ingles)
MyFreeBSD
Todas Categorias
-
Login
Nome de Usuário

Senha

Lembrar login
Esqueceu sua senha?
Sem conta? Crie uma


OpenBravo ERP + PostgreSQL + jail no FreeBSD 7.2 PDF Imprimir E-mail
Por Diego Queiroz dos Santos   
09/07/2009
 Nesse tutorial irei demonstrar como instalar o OpenBravo ERP , usando banco de dados PostgreSQL dentro de um subsistema, usando o Jail. O OpenBravo é um sistema de gestão Enterprise Resource Planning e tem por função, basicamente o controle de informações financeiras, administrativas, logísticas, transacionais e contábeis de uma empresa. Estarei usando o FreeBSD 7.2-stable com uma placa sis0. Faça as mudanças em alguns paths caso necessário. Algumas coisas são opcionais, como o jail (o postgresql por exemplo, requer algumas mudanças para funcionar dentro da jail) e o DEVICE_POLLING. Isso é só para evitar dores de cabeça futuras.

Primeiramente, vamos atualizar o nosso sitema:

# portsnap fetch && portsnap extract
(caso você use tcsh)
# cp /usr/share/examples/cvsup/stable-supfile /home/diego/
# csup -g -L2 /home/diego/stable-supfile -h cvsup3.br.freebsd.org

Compile o kernel do sistema e adicione as seguintes linhas

options DEVICE_POLLING
options HZ=1000

O OpenBravo funciona pela web e isso vai melhorar o desempenho da rede, porém não funciona com algumas placas de rede. A opção DEVICE_POLLING muda o método que os dados da interface são passadas para o kernel. Normalmente cada vez que a placa de rede precisa de "atenção" (por exemplo, quando recebe um pacote) é gerado um pedido de interrupção (interrupt request). Esse interrupt request causa um "context switch" e uma chamada para interrupção. O context switch é quando a CPU e Kernel tem que trocar do user land (programas de usuário ou daemons) para kernel land (driver, hardware, etc). Com o DEVICE_POLLING ativado você muda isso, em conjunto com a opção HZ=1000, ele vai deixar mais lento o clock interrupts para 1000 vezes por segundo. É necessário adicionar a linha kern.polling.enable=1 no /etc/sysctl.conf.

OBS: Se o SMP estiver ativado no seu kernel, ele certamente não irá compilar. Não tem problema usar o DEVICE_POLLING mesmo com mais de um processador, mas você terá que DELETAR algumas linhas no arquivo /usr/src/sys/kern/kern_poll.c:

#ifdef SMP
        #include "opt_lint.h"
        #ifndef COMPILING_LINT
        #error DEVICE_POLLING is not compatible with SMP
        #endif
        #endif

     
Agora, make config nele! Caso não saiba compilar o kernel, acesse esse link!

Depois de uns cafezinhos, o sistema deve ta todo atualizado! E que tal montar um jail pra deixar mais seguro?

# vi /root/jail.sh

Insira as seguintes linhas:

D=/home/diego/JAIL
cd /usr/src
mkdir -p $D
make world DESTDIR=$D
make distribution DESTDIR=$D
mount -t devfs devfs $D/dev


# sh /root/jail.sh

Esse vai demorar bastante! Ainda bem que é opcional ! Enquanto isso, adicione as seguintes linhas no /etc/rc.conf

sshd_enable="YES"            
ifconfig_INTERFACE="inet x.x.x.x m.m.m.m media 100baseTX mediaopt full-duplex"

OBS: Possivelmente sua placa de rede faz autonegociação de velocidade. Mas isso acarreta alguns contras, a placa para de transferir dados para fazer a alto negociação, por exemplo. Adicionando "media 100baseTX mediaopt full-duplex" você diminui o uso da CPU. Claro que sua placa não pode ser tão velha :)

defaultrouter="x.x.x."
hostname="hostname.domain"
sendmail_enable="NONE"
firewall_enable="YES"
firewall_script="/etc/firewall"


Vou por o nome da jail de skunk, mas esse não é o hostname, apenas um meio de "listar" as jail no rc.conf

jail_enable="YES"
jail_list="skunk"
jail_set_hostname_allow="NO"       
jail_socket_unixiproute_only="YES"
jail_sysvipc_allow="YES"
jail_skunk_rootdir="/usr/home/diego/JAIL"
jail_skunk_hostname="hostname.domain"
jail_skunk_ip="192.168.1.1"
jail_skunk_interface="SUA_INTERFACE"
jail_skunk_exec_start="/bin/sh /etc/rc"
jail_skunk_flags="-l -u root"
jail_skunk_procfs_enable="YES"
jail_skunk_devfs_enable="YES"

# vi /etc/firewall
ipfw add 50 divert natd ip4 from any to any via INTERFACE

Você precisa do divert para o jail acessar a net !

Agora digite:

# jail /usr/home/diego/JAIL skunk 192.168.1.1 /bin/sh

Pronto, você acessou o novo jail!

# touch /etc/fstab

 Copie o resolv.conf do sistema anfitrião e cole no /usr/home/diego/JAIL/etc/resolv.conf

# touch /etc/resolv.conf
# echo 'rpcbind_enable="NO"' >> /etc/rc.conf
# passwd
# adduser
# /etc/rc.d/sshd start
# echo 'sshd_enable="YES"' >> /etc/rc.conf
# echo 'sendmail_enable="NONE"' >> /etc/rc.conf


Caso você queira o ports no jail:

# mkdir /usr/home/diego/JAIL/usr/ports

# mount_nullfs  /usr/ports/ /usr/home/diego/JAIL/usr/ports/


O Jail está pronto para uso.

OBS: caso você nao consiga usar a internet no jail, verifica as entradas no sysctl

# sysctl -a | grep -i jail

O security.jail.allow_raw_sockets tem que ta como ligado (1)

Verifique também o NAT  !

Beleza, agora vamos instalar o OpenBRAVO ERP !! Mas antes, entre no site da sun e baixe o tzupdater e o diablo jdk. Será necessário fazer um registro, mas nada muito demorado. Depois de baixar os dois pacotes, mova-os para o /usr/ports/distfiles. Vamos instalar o postgreSQL server também, porque durante a instalação do OpenBravo só o postgreSQL client é instalado, pule essa parte caso você já possua um servidor postgreSQL.

# cd /usr/ports/database/postgresql83-server; make install clean
# echo 'postgresql_enable="YES"' >> /etc/rc.conf


O postgreSQL é um database que roda em sandbox, ou seja, todas as operações dele terá que ser feito pelo o seu usuário, que no caso é o pgsql (default).

# su -l pgsql
# initdb -D /usr/local/pgsql/data/
# createuser --pwprompt postgres


Quando o prompt perguntar se o novo usuario será super usuario, responda que sim. O initdb irá povoar o diretório data. (Você provavelmente terá problemas relacionados a shared memory, insira as seguintes linhas no /boot/loader.conf:

kern.ipc.semaem=32767
kern.ipc.semvmx=65534
kern.ipc.semusz=184
kern.ipc.semume=80
kern.ipc.semopm=200
kern.ipc.semmsl=120
kern.ipc.semmnu=4096
kern.ipc.semmns=8192
kern.ipc.semmni=32767
kern.ipc.semmap=60


E no /etc/sysctl.conf:

security.jail.sysvipc_allowed=1
kern.ipc.shmall=65536
kern.ipc.shmmax=134217728
kern.ipc.semmap=4096

(Fonte: http://www.freebsddiary.org/jail-multiple.php)


# cd /usr/ports/www/openbravoerp; make install clean

No final da instalação aparecerá um setup, aceite a licença e responda as questões referente ao PostgreSQL. Ponha o mesmo usuario e senha do createuser. Adicione a linha tomcat5.5_enable="YES", também adicione a linha referente ao apache, também verifique se o postgresql está presente no /etc/rc.conf. Depois de tudo isso dê um reboot

Agora acesse pelo navegador, não esqueça de configurar o httpd.conf !! As entradas Servername irá ficar com o nome do seu servidor, ou então o ip caso não existe /etc/hosts configurado. Por exemplo, se você definiu como ServerName 10.1.2.3, o OpenBravo deverá ser acessado pelo http://10.1.2.3:8180/openbravo.

Tae! Espero que funcione ! :) Qualquer dúvida mail to: Este endereço de e-mail está sendo protegido de spam, você precisa de Javascript habilitado para vê-lo

Abraços!

Comentários


Comente!*
Nome:
E-mail
Homepage
Título:
Comentário:

Código:* Code

Última Atualização ( 09/07/2009 )
 
< Anterior   Próximo >
FUG-BR - Espalhando BSD
Dicas Rápidas:

Para remover os caracteres ^M de um arquivo de texto de MS-DOS (e Windows), use o tr(1):

tr -d \\r < arquivo_dos > arquivo_unix

 

 

 






Wallpapers
FreeBSD Security Advisories
  • FreeBSD-SA-10:03.zfs
  • FreeBSD-SA-10:02.ntpd
  • FreeBSD-SA-10:01.bind
  • FreeBSD-SA-09:17.freebsd-update
  • FreeBSD-SA-09:16.rtld
  • FreeBSD-SA-09:15.ssl
  • FreeBSD-SA-09:14.devfs
  • FreeBSD-SA-09:13.pipe
  • FreeBSD-SA-09:12.bind

  • Online:
    Nós temos 26 visitantes online


    Devil Store - Sua loja BSD
    FreeBSD Brasil LTDA

    FUG-BR: Desde 1999, espalhando BSD pelo Brasil.