Instalação do PAP (PostgreSL, Apache2 e PHP7) no Debian Jessie

Instalação manual (em sua maioria) do PostgreSQL, Apache2 e PHP7 no Debian Jessie 64 bits.

[ Hits: 12.955 ]

Por: Buckminster em 24/03/2016


Introdução



Versões utilizadas:

Debian Jessie 8.3 64 bits, kernel 4.2.0, PostgreSQL 9.5.1, Apache 2.4.18 e PHP 7.0.4 (Com exceção Kernel, as demais versões são as mais atualizadas).

Para fins didáticos, antes de instalar manualmente qualquer programa no Linux, devemos verificar e instalar as dependências, ou seja, os pacotes necessários (bibliotecas, ferramentas etc) que devem ser instalados antes do programa em si. Esta é uma etapa crucial porque geralmente percebe-se que faltou alguma dependência somente ao configurar (./configure), construir (make) ou instalar (make install), daí é tarde, sendo que acontecem os erros e devemos refazer as operações. Mas isto faz parte do aprendizado, pois assim vai se acumulando experiência.

Como sempre, aconselho a ler todo este amontoado de palavras, antes de sair executando os comandos. Ficou um tanto extenso este artigo, mas está bem esmiuçado e quem dedicar seu tempo em aproveitá-lo, não se arrependerá.

Estando o sistema Debian Jessie devidamente instalado, configurado e atualizado, faça os procedimentos abaixo. Eles foram realizados em sua maioria no terminal (linha de comando). Serão dadas as explicações que forem necessárias para os interessados poderem realizar as operações.

Essas instalações foram realizadas manualmente, em sua maioria. É claro que instalar pelo apt-get ou pelo aptitude se torna bem mais fácil, porém se perde um pouco do controle, além do que... qual é a graça?

Para fins de aprendizado é uma experiência enriquecedora, pois este é um dos objetivos deste artigo.

Para as dependências foi utilizado o apt-get e o aptitude.

Caso tu tenhas outras versões instaladas do PostgreSQL, Apache e PHP, recomendo desinstalá-las (a menos que tu saibas o que estás fazendo).

Siga os passos exatamente na ordem em que estão colocados e faça os procedimentos com calma, sem pressa, tome algumas xícaras de café enquanto instala.

Caso tu usas outra distribuição, podes seguir os procedimentos abaixo com algumas adaptações de acordo com a tua distribuição.

No final, deixo para download um arquivo httpd.conf e um php.ini para quem quiser utilizá-los, são cópias dos arquivos utilizados aqui na rede. O php.ini é para desenvolvimento. Para transformá-lo em produção basta ler este artigo na parte do PHP 7.

Utilizo este tipo de instalação faz anos, mas para descargo de consciência refiz toda ela e atualizei os comandos e executei-a para teste na data de 14/03/2016. Como sou um pouco preguiçoso, fui copiando os comandos do artigo e colando no terminal.

Deixo aqui uma sugestão de sources.list básico, este é o que utilizo atualmente:

#
# deb cdrom:[Debian GNU/Linux 8.0.0 _Jessie_ - Official amd64 DVD Binary-1 20150425-12:54]/ jessie contrib main

# deb cdrom:[Debian GNU/Linux 8.0.0 _Jessie_ - Official amd64 DVD Binary-1 20150425-12:54]/ jessie contrib main

# jessie-updates, previously known as 'volatile'
deb http://ftp.br.debian.org/debian/ jessie main contrib non-free
deb-src http://ftp.br.debian.org/debian/ jessie main contrib non-free

deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free

deb http://ftp.br.debian.org/debian/ jessie-updates main contrib non-free
deb-src http://ftp.br.debian.org/debian/ jessie-updates main contrib non-free

deb http://www.deb-multimedia.org jessie main non-free
# deb http://www.deb-multimedia.org jessie-backports main

# deb http://http.debian.net/debian jessie-backports main contrib non-free

Os repositórios backports ficam comentados e são descomentados caso haja necessidade de instalação de algum pacote que somente eles tenham. Não é recomendável utilizar todos os backports durante os updates e upgrades.

    Próxima página

Páginas do artigo
   1. Introdução
   2. PostgreSQL
   3. Apache
   4. PHP
   5. Conclusão
Outros artigos deste autor

Encapsulando BIND 9 e Apache 2 para obter maior segurança

Instalando e Configurando o pgAgent no Linux (pgAdmin e PostgreSQL)

Como utilizar de forma correta os repositórios e pacotes Backports

Compilação do Squid 3 no Debian Wheezy

Montagem de Cluster

Leitura recomendada

Openfire + Gateway + MSN

Instalando e configurando um Webserver

Encapsulamento de Apache com chroot

Instalando um servidor LAMP no OpenSuSE

Otimizando a bateria em sistemas Android 2.2/2.3

  
Comentários
[1] Comentário enviado por danniel-lara em 24/03/2016 - 16:46h

Parabéns pelo artigo , muito bom mesmo

[2] Comentário enviado por Buckminster em 24/03/2016 - 17:33h


[1] Comentário enviado por danniel-lara em 24/03/2016 - 16:46h

Parabéns pelo artigo , muito bom mesmo


Obrigado Daniel.

[3] Comentário enviado por robsonpatrick em 27/03/2016 - 23:30h

Este tutorial foi de uma valia inenarrável, para eu que estou migrando do Windows para Debian isto ai encurtou muito essa minha transição. Muito muito obrigado
Funcionou tudo,
única coisa que faltou, que pode fazer diferença para um mais cabaço que eu, é liberar a extensão do pgsql no php.ini
para mim falhou mas não fez diferença na instalação do postgres wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add
não sei pq, e também não sei para que serve.

como eu tinha tentado outras coisas antes, na primeira vez não deu certo, ai desinstalei o debian, instalei novamente, configurei o putty, mandei ver no ctrl+c e click direto

configurei um usuário para postgres
depois instalei samba, configurei acesso htdocs, joguei minhas loucuras lá e rodou
show de bola

[4] Comentário enviado por robsonpatrick em 27/03/2016 - 23:35h

um adendo para clarear a comunicação
o postgresql funcionou, o que não funcionou foi uma instalação de uma Key

[5] Comentário enviado por Buckminster em 28/03/2016 - 12:57h


[4] Comentário enviado por robsonpatrick em 27/03/2016 - 23:35h

um adendo para clarear a comunicação
o postgresql funcionou, o que não funcionou foi uma instalação de uma Key


Obrigado. Realmente faltou a parte das extensões, mas era para ter junto com o artigo 4 arquivos para download (hpptd.conf, php.ini, pg_hba.conf e postgresql.conf).

Em relação à instalação da key, houve uma falha, o comando certo é:

# wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - <<< aqui no final tem um sinal "-", de menos, um tracinho, um hífen.

A instalação dessa key é importante para as atualizações do PostgreSQL através do apt-get ou do aptitude.

Execute o comando de novo.

As minhas extensões estão assim aqui (cloquei em 'quote' porque o negrito não funcionou, ou eu que não soube fazer):

;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll

;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
extension=php_mbstring.dll
extension=php_exif.dll ; Must be after mbstring as it depends on it

;extension=php_mysqli.dll
;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
extension=php_pgsql.dll
extension=php_shmop.dll

[6] Comentário enviado por robsonpatrick em 29/03/2016 - 18:25h

Valeu mais uma vez!
Sou fã de caras como você!
As extensões estão um pouco diferente das que eu configurei para mim, vou dar uma estudada na diferenças...

Vi no seu perfil pelos posts e artigos, que você é o bichão mesmo do linux...

Eu sei que aqui não é o local certo, mas você me parece a pessoa certa,
para me esclarecer um pensamento que acompanha os "janeleiros"
Pessoal do Windows salva seus instaladores...
Já no Linux dependemos de repositórios que ficam em servidores mundo a fora, a qual outras pessoas podem decidir não compartilhar mais o software,
gostaria de saber se há como eu salvar meus instaladores,
caso sim,
se você tiver um artigo para indicar eu agradeço (se não tiver não tem problema eu procuro, você já ajudou muito)

Valeu!

[7] Comentário enviado por Buckminster em 30/03/2016 - 17:05h

robsonpatrick;
bom, como tu usa Debian tu podes baixar os pacotes desejados e salvá-los na máquina para instalação posterior ou guardar os instaladores como tu quer, isso pode ser feito em qualquer distribuição.

https://www.debian.org/distrib/packages.pt.html

https://packages.debian.org/stable/

São pacotes .deb que depois tu instala com o dpkg.

E tu podes usar o parâmetro -d que ele somente baixa o pacote para instalação posterior. Com isso tu podes fazer uma pasta de backups.

# apt-get -d install pacote <<< -d de Download-only, apenas download.

Veja aqui a página do man do apt-get ou digite no terminal man apt-get:

http://linux.die.net/man/8/apt-get

Mas é difícil os repósitórios do Debian sairem do ar, somente se o Debian deixar de existir, daí não fará diferença.

[8] Comentário enviado por robsonpatrick em 31/03/2016 - 07:29h

Maneiro!
Muito obrigado mais uma vez Buckminster!



[9] Comentário enviado por Buckminster em 31/03/2016 - 16:57h


[8] Comentário enviado por robsonpatrick em 31/03/2016 - 07:29h

Maneiro!
Muito obrigado mais uma vez Buckminster!

De nada.


[10] Comentário enviado por robsonpatrick em 08/04/2016 - 12:39h

Pra fazer uns cortes automáticos em imagens no php é preciso instalar o php7.0-gd
que consegui fazendo estes passos:

Acrescente as seguintes linhas ao final do arquivo /etc/apt/sources.list:
# dotdeb PHP7 repositórios
deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all

Vamos à configuração da chave gpg…
wget https://www.dotdeb.org/dotdeb.gpg
sudo apt-key add dotdeb.gpg

sudo apt-get update
sudo aptitude install php7.0-gd

instalou, e mesmo descomentando extension=php_gd2.dll
não funcionou :-P
os passo peguei desta fonte:
http://elias.praciano.com/2015/11/como-instalar-o-php-7-0-no-ubuntu-14-04-e-no-debian-8/

se vc quiser mais este desafio posso passar os codigos por email
o erro que vai aparecer é call to undefined function imagecreatefromjpeg()



[11] Comentário enviado por Buckminster em 08/04/2016 - 22:36h

Faça um teste, use imagecreatetruecolor em vez de imagecreatefromjpeg e poste aqui se acontecer algum erro.
Não esqueça de reiniciar o Apache.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts