Instalação do PostgreSQL 8.0.3 no Slackware 10.1
Neste pequeno How-to, aprenderemos, como montar um servidor POSTGRESQL do zero no Slackware 10.1. Espero que gostem. ;-)
1º Passo) Bootar o CD e conectar como root.
Durante o boot, irá pedir algumas questões. Em geral, pode dizer sim.
2º Passo) Particionar.
Basicamente, precisaremos criar as partições no qual será instalada o Slackware e os utilitários. Se precisar de ajuda, veja em http://www.slacklife.com.br/article.php?sid=183
[root@localhost /root]# fdisk /dev/hda
Menu principal do Fdisk
n – Nova partição
m – Ajuda
p – mostra as partições
t – Troca do tipo ID da partição (83 para Linux e 82 para Linux Swap).
Menu de “Nova Partição”
p – Criar partição primária (Até 4 primárias)
Quando criamos uma partição informamos basicamente:
• Número da partição: seqüencial, crie a 1, depois a 2, etc.
• Cilindro inicial: Deixe o padrão
• Cilindro final OU tamanho: Sempre especifico em tamanho (+1024M, por exemplo para 1Gb)
e – Criar partição extendida (Geralmente a 4ª partição é primária)
• Quandro criar estendida, especifique o cilindro final como default, neste caso será criada uma partição do tipo estendida com TODO O HD, Dentro desta estendida será criada as demais partições lógicas no tamanho que definirmos.
PLANO DE PARTICIONAMENTO (Usando no 2º e 3º passo)
Partições |
Device |
Montagem |
Tipo |
2 Gb (p1) |
/dev/hda1 |
/ |
Reiserfs |
300 Mb (p2) |
/dev/hda2 |
/tmp |
Ext2 |
300 Mb (p3) |
/dev/hda3 |
Swap |
Swa p |
1 Gb (e5) |
/dev/hda5 |
/var |
Ext2 |
1 Gb (e6) |
/dev/hda6 |
/sqlmazine |
Reiserfs |
Tabela 1
Obs.: Temos aproximadamente 34Gb restante, que será usado para montarmos o LVM de nome CONCAT.
3º Passo)Setup
[root@localhost /root]# setup
No setup iremos seguir a seguinte ordem:
Etapas do Menu |
Informações |
ADDSWAP |
inicializa a partição de SWAP |
Formatar os sistemas de arquivos |
especificando o ponto de montagem definida na tabela 1 |
Seleção do Source |
Seleciona 1 (CD) e auto scan |
Seleção de packages
|
Deixe apenas os pacotes:A, AP, D, F, L, N |
Método de instalação |
Escolha a opção MENU |
Tabela 2
Opções dos Pacotes |
Informações |
A |
selecionar Kernel e remover floppy, gpm, isapnptools, jfsutils, loadlin, minicom, pcmcia-cs |
AP |
selecionar bc, diffutils, groff, man, man-pages, rzip, sudo, vim |
D |
deixar o PADRAO |
F |
deixar o PADRAO |
L |
remover GTK*, jre |
N |
selecionar inetd, iproute2, iptables, iptraf, links, lynx, nail, netwatch, openssh, openssl, sendmail, stunnel, tcpdump, tcpip, traceroute, wget, whois |
Tabela3
Os demais passos de instalação do Slackware são o padrão, ou seja, criar menu de boot do Lilo, seleção de Fuso horário, configuração de IP da máquina, etc. Para isso, recomendo a leitura do guia de instalação disponível em:
http://www.slackware-brasil.com.br/web_site/downloads/livros/guiadolinux-02-pdf.zip
Reboot
4º Passo) Atualizando o Kernel e instalando o LVM 2
Montar o CD 2 do Slackware
#mount /dev/cdrom
#cd /mnt/cdrom/testing/packages/linux-2.6.10
#installpkg kernel-generic-2.6.10-i486-1.tgz
#installpkg kernel-modules-2.6.10-i486-1.tgz
#installpkg alsa-driver-1.0.8_2.6.10-i486-1.tgz
Toda a criação será dentro do /boot, então vamos entrar nessa pasta.
#cd /boot
Habilitando o ReiserFS para funcionar no Boot
#mkinitrd -c -k 2.6.10 -m reiserfs
Habilitando o XFS para funcionar no Boot
#mkinitrd -c -k 2.6.10 -m reiserfs
Será criado o arquivo initrd.gz. Agora é só editar o lilo.conf linha no lilo.conf.
#vi /etc/lilo.conf
image = /boot/vmlinuz-generic-2.6.10
initrd = /boot/initrd.gz
root = /dev/hda1
label = Linux_2.6.10
read-only
# Deixando a opção para bootar a versão 2.4
image = /boot/vmlinuz-2.4.29
root = /dev/hda1
label = Linux_old
read-only
Para efetivar as alterações no lilo.conf
# lilo
Instalação do LVM
Instalando device-mapper (pré-requisito)
#installpkg /mnt/cdrom/testing/packages/lvm2/device-mapper-1.01.00-i486-1.tgz
Instalando o LVM2
#installpkg /mnt/cdrom/testing/packages/lvm2/lvm2-2.01.03-i486-1.tgz
Configurando a partição LVM
Criação das partições LVM:
# fdisk /dev/hda
Adicionar o resto do espaço não particionado. Lembrando que não usamos todo o HD até este ponto, por isso, deve ter um espaço não particionado de pelo menos 35Gb.
Após criar a partição, ainda no FDISK, iremos mudar o tipo ID da partição como do tipo LVM´ (opção t, código 8e). Nesse ponto é necessário reinicializar o computador para que SO reconheça a nova partição.
# reboot
5º Passo) Configurando o LVM
Neste passo, iremos criar o espaço para armazenar os dados do PostgreSQL ou qualquer outro tipo de aplicação como por exemplo o repositório de dados do CVS.
pvcreate /dev/hda7 - /dev/hda7é a partição flagada com o código 8e.
vgcreate concat /dev/hda7
lvcreate -L 24G -n dados concat - Volume logico DADOS
lvcreate -L 2G -n backup concat - Volume logico BACKUP
vgchange -ay concat - Confirma as criações do LV´s
Formatando as partições do LVM
# mkfs.xfs /dev/concat/dados - Formatando LV DADOS Type=XFS
# mkfs.ext2 /dev/concat/backup - Formatando LV BACKUP Type=ext2
Preparando diretórios para montagem das partições:
# mkdir /sqlmagazine/dados
# mkdir /sqlmagazine /backups
Montando os volumes:
# mount -t xfs /dev/concat/dados /sqlmagazine/dados
# mount -t ext2 /dev/concat/backup /sqlmagazine/backups
Automatizando as montagens desses volumes:
Acrescentar no arquivo /etc/fstab as seguintes linhas:
/dev/concat/dados /sqlmagazine/dados xfs defaults 1 2
/dev/concat/backup / sqlmagazine /backups ext2 defaults 1 2
6º Passo) Instalação do PostgreSQL
Criar dentro da pasta root a pasta “instaladores”.
# cd ~
# mkdir instaladores
Agora fazer downloads
# wget ftp://ftp.br.postgresql.org/pub/PostgreSQL/v8.0.3/postgresql-8.0.3.tar.bz2
Pré- instalação do PostgreSQL:
Criando o Home Folder do usuário PostgreSQL
#mkdir /sqlmagazine/pgsql - diretorio do postgres
Adicionando o Grupo e o Usuário PostgreSQL
#groupadd postgres - criando um grupo postgres
#useradd postgres -g postgres -d /sqmagazine/pgsql - criando usuario postgres
Informações Basicas: Para descompactar pacotes *.bz2 , deve-se utilizar as seguintes opções do tar (jxvf), no caso de *.tgz (zxvf)
Decompatando e insttalando o PostgreSQL
#cd /root/instaladores/pacotes
#tar jxvf postgresql-8.0.3.tar.bz2
#cd postgresql-8.0.3
#./configure --prefix=/unesp/pgsql
#make all install
#cd /sqlmagazine/pgsql
#chown postgres:postgres –R
Adicionando os binários do PostgreSQL no PATH (/unesp/pgsql/bin)
#vi /etc/profile - acrescentar a PATH acima
#source /etc/profile - executa o arquivo
Acrescentar as bibliotecas do postgres no arquivo ld.so.conf
echo "/unesp/pgsql/lib" >> /etc/ld.so.conf
ldconfig - refaz a leitura do ld.so.conf
6º Passo) Pós Instalação do PostgreSQL
(logar como usuário do postgres)
#su – postgres
$cd /sqlmagazine/dados
$initdb -D pgsql
$cd pgsql
Regras de acesso IP
$vi pg_hba.conf
Alterar a linha do postgresql.conf, colocando '*' na variável listen_addresses
$vi postgresql.conf
Testando o postgres
Start do PostgreSQL
$pg_ctl -D ~/data -l ~/pgsql.log start - inicializando o POSTGRES
Testando a conexão
$ psql –D template1 –U postgres
Aparecerá a seguinte tela:
Welcome to psql 8.0.3, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
template1=#
7º Passo) Pós Instalação do PostgreSQL – Automatizando o Start e Stop
Copiando o script de start/stop que vem com o PostgreSQL na pasta /etc/rc.d
#cp /root/instaladores/postgresql-8.0.3/contrib/start-script/linux /etc/rc.d/rc.pgsql
Alterando as permissões:
#chmod 755 /etc/rc.d/rc.pgsql
Editando o arquivo para visualizar a instância que definimos com o initdb –D, aterando as variáveis do script:
vi /etc/rc.d/rc.pgsql
ALTERAR: prefix=/sqlmagazine/pgsql
ALTERAR: PGDATA=/sqlmagazine/pgsql/data
ALTERAR: PGLOG="$prefix/pgsql.log"
Para que o rc.pgsql faça o start automaticamente no boot:
#vi /etc/rc.d/rc.inet2
Após as linhas referentes ao start do servido SSHD incluir:
if [ -x /etc/rc.d/rc.pgsql ]; then
echo "Iniciando o PostgreSQL: /sqlmagazine/pgsql"
/etc/rc.d/rc.pgsql start
fi
Para que o rc.pgsql faça o stop automaticamente no reboot e no desligamento
vi /etc/rc.d/rc.6
Após as linhas referentes ao start do servido SSHD incluir:
if [ -x /etc/rc.d/rc.pgsql ]; then
echo "Finalizando o PostgreSQL: /sqlmagazine/pgsql"
/etc/rc.d/rc.pgsql stop
fi
7º Passo) Tuning Básico
Editar o /etc/rc.d/rc.local:
#esta é a conf. Mínima para HD UltraDMA acrescentar o parâmetro (-X udma?,
#onde ? é o número da Ultra DMA encontrado no BIOS parte de HD ou na #especificação técnica do HD).
hdparm -c 3 -m 16 /dev/hda
# Habilita o teclado Brasileiro
loadkeys br –abnt2
Crédito especiais para:
Ronaldo Massanori – ronaldo@reitoria.unesp.br
Referências
• Slackware:
#1 http://www.slacklife.com.br/
#2 http://br-linux.org/tutoriais/001804.html
• LVM2:
#3 ftp://sources.redhat.com/pub/lvm2/
#4 http://www.netadmintools.com/art369.html
#5 http://lantana.tenet.res.in/General_Info/Tech/HOWTO/LVM-HOWTO.html
• Personalizar a mensagem de login: /etc/motd
#6 http://www.rigaut.com/benoit/CERN/FigletJava/
• Postgresql
#7 http://www.postgresql.org.br/
#8 http://www.postgresql.org/
#9 http://www.javalinux.com.br/pg74/