martes, 26 de abril de 2016

Instalar PostGIS en Linux Ubuntu 16.04 LTS Xenial Xerus

En esta entrada voy a mostrar el proceso de instalación de PostGIS para base de datos PostgreSQL que añade funcionalidad a objetos Geográficos y Espaciales en PostgreSQL facilitando las consultas geográficas para los software tipo GIS (Geographic Information System).


Instalar PostGIS:


  • Paso 1usuario@linux~$ sudo apt-get install postgis

Configurar PostGIS en Base de Datos PostgreSQL:

La documentación oficial de PostGIS dice que no hay que instalar la extensión de sobre la base de datos llamada postgres, se debe instalar en una base de datos diferente en donde se necesite funcionalidades de objetos geográficos espaciales, para facilitar las cosas usamos el programa PgAdmin3.

Base de Datos

Ejecutar el siguiente SQL sobre la base de datos que se ha creado:


-- Enable PostGIS (includes raster)
CREATE EXTENSION postgis;
-- Enable Topology
CREATE EXTENSION postgis_topology;
-- Enable PostGIS Advanced 3D 
-- and other geoprocessing algorithms
-- sfcgal not available with all distributions
CREATE EXTENSION postgis_sfcgal;
-- fuzzy matching needed for Tiger
CREATE EXTENSION fuzzystrmatch;
-- rule based standardizer
CREATE EXTENSION address_standardizer;
-- example rule data set
CREATE EXTENSION address_standardizer_data_us;
-- Enable US Tiger Geocoder
CREATE EXTENSION postgis_tiger_geocoder;


Con esto ya se agregan las extensiones necesarias de PostGIS sobre una Base de Datos para trabajar con objetos Geográficos Espaciales.

postgis
Extensiones PostGIS

postgis
Base de Datos con PostGIS

Instalar PostgreSQL y PgAdmin en Linux Ubuntu 16.04 LTS Xenial Xerus

En esta entrada quiero compartir cuales son los pasos para instalar PostgreSQL y PgAdmin en una distribución Linux Ubuntu 16.04 LTS.


Instalar PostgreSQL:

  • Paso 1usuario@linux~$ sudo apt-get install postgresql postgresql-contrib

Ingresar en postgresql desde una terminal:

usuario@linux~$ sudo -u postgres psql postgres


Configurar el password para el usuario postgresql:

postgres=# \password postgres 
Enter new password: 
Enter it again: 
postgres=# \q



Instalar PgAdmin:
  • Paso 2usuario@linux~$ sudo apt-get install pgadmin3

Configurar una conexión local en postgresql:

pgadmin3
PgAdmin3


Inspeccionar conexión a base de datos postgres localmente:

pgadmin3
PgAdmin3


ACTUALIZACIÓN

En el sitio web oficial [https://www.pgadmin.org/] de pgAdmin nos informan que la versión 3 de pgAdmin no tiene mas soporte oficial, por lo tanto recomiendan instalar y usar pgAdmin versión 4.


pgAdmin 3 sin soporte
pgAdmin 3 sin soporte

Ver la siguiente entrada [Instalar PgAdmin 4 en Linux Ubuntu 16.04 LTS Xenial Xerus] para contextualizar el proceso de instalación de pgAdmin 4.


Servidor LAMP Linux Apache PHP MySQL PhpMyAdmin en Ubuntu 16.04 LTS Xenial Xerus

Bueno en esta entrada quiero compartir como instalar un Servidor LAMP en un Sistema Operativo tipo Linux basado en Debian como Ubuntu 16.04 LTS Xenial Xerus.

Cuando queremos aprender el desarrollo de Aplicaciones Web necesitamos las siguientes herramientas de software instaladas en nuestro equipo que vamos a usar para desarrollo, los programas que se requieren son los siguientes:

  • Apache
  • PHP
  • MySQL
  • PhpMyAdmin (Opcional)

El acrónimo LAMP surge de la combinación de palabras Linux Apache PHP MySQL por eso en Internet podemos encontrar información adicional de como instalar un Servidor Web LAMP.


NOTA: En esta entrada sólo se da a conocer los programas a instalar y su proceso de instalación, en el mundo real es necesario después de instalar realizar el proceso de configuración de cada programa en cuanto a los aspectos de seguridad de los mismos.



Seguir los siguientes pasos de instalación:



  • Paso 1usuario@linux~$ sudo apt-get install apache2
Al terminar la instalación de Apache se crea un directorio raíz para el localhost donde podemos crear proyectos web, este directorio es /var/www/html

Cuando ingresamos desde un navegador web al directorio raíz de apache desde la siguiente URL http://localhost/ nos muestra una pagina con información de la instalación de Apache.

Apache
Apache

  • Paso 2usuario@linux~$ sudo apt-get install php
Cuando finaliza la instalación de PHP podemos probar si funciona correctamente invocando la función phpinfo(); desde un archivo .php que debemos guardar en el directorio raíz de Apache, el archivo debe contener el siguiente código:


<?php phpinfo(); ?>



  • Paso 3usuario@linux~$ php -v
Verificar la versión de php que tenemos instalada en el sistema, la versión mas reciente al momento de escribir esta entrada es la versión 7 de php.




  • Paso 4usuario@linux~$ sudo apt-get install libapache2-mod-php7.0
Instalar el modulo php versión 7 para el servidor Apache.

Cuando se ejecuta el archivo desde localhost de Apache en un Navegador Web se muestra una pagina con información sobre la versión de PHP que se ha instalado ademas de información del Servidor Web.


php7
PHP Versión 7

  • Paso 5usuario@linux~$ sudo apt-get install mysql-server
Durante la instalación de MySQL el sistema nos pregunta si deseamos configurar una contraseña para el usuario root, esto es opcional, si queremos podemos dejarlo en blanco, claro que en el mundo real debemos darle una contraseña.


  • Paso 6usuario@linux~$ sudo apt-get install phpmyadmin php-mbstring php-gettext
Cuando se realiza la instalación de PhpMyAdmin nos pregunta por la contraseña del usuario root de MySQL para poder ingresar desde un Navegador Web en la aplicación web de PhpMyAdmin.

Se deben Activar  las extensiones de php mcrypt y mbstring en PHP:

usuario@linux~$ sudo phpenmod mcrypt
usuario@linux~$ sudo phpenmod mbstring

Para hacer uso de PhpMyAdmin desde un navegador web debemos ingresar localmente a la siguiente URL http://localhost/phpmyadmin/ donde nos solicita el usuario y contraseña que tenemos configurado en MySQL.


phpmyadmin
PhpMyAdmin


Sugerencia
:

Cuando ya han terminado de instalar todos los programas para un Servidor LAMP cada vez que se crean archivos en el directorio raíz de Apache /var/www/html/ es necesario tener permisos de administrador ya que el propietario del directorio html es el usuario root, podemos modificar esto cambiando el propietario del directorio html a nuestro usuario, de esta forma podemos crear y modificar archivos sin necesidad de tener permisos de usuario root.


Solucionar Error 500 PhpMyAdmin en Linux Ubuntu 16.04 LTS Xenial Xerus

En esta entrada quiero compartir como solucionar el error 500 después de instalar PhpMyAdmin en Linux Ubuntu 16.04 LTS este problema me surgió al instalar un servidor LAMP.

En una entrada anterior pueden encontrar más detalles de cómo [Instalar un Servidor LAMP en Ubuntu Linux].


Instalar PhpMyAdmin:

usuario@linux~$ sudo apt-get install phpmyadmin php-mbstring php-gettext

Cuando se realiza la instalación de PhpMyAdmin nos pregunta por la contraseña del usuario root de MySQL para poder ingresar desde un Navegador Web en la aplicación web de PhpMyAdmin.


Se deben Activar  las extensiones de php mcrypt y mbstring en PHP:


usuario@linux~$ sudo phpenmod mcrypt
usuario@linux~$ sudo phpenmod mbstring


Para hacer uso de PhpMyAdmin desde un navegador web debemos ingresar localmente a la siguiente URL http://localhost/phpmyadmin/ donde nos solicita el usuario y contraseña que tenemos configurado en MySQL.


phpmyadmin
PhpMyAdmin

Solucionar Error Pagina en Blanco PHP7 en Linux Ubuntu 16.04 LTS Xenial Xerus

En esta entrada quiero compartir como solucionar el error de pagina en blanco después de instalar la versión 7 de PHP en Linux Ubuntu 16.04 LTS.

Este problema me surgió al instalar un servidor LAMP y luego de crear un archivo de php con llamado a la función phpinfo(); como se muestra a continuación:

<?php phpinfo(); ?>

Trato de ejecutar el archivo php que debe estar ubicado en la raiz del DocumentRoot de Apache /var/www/html/ la pagina que visualizo en el navegador web es una Pagina en Blanco.

En una entrada anterior pueden encontrar mas detalles de como [Instalar un Servidor LAMP en Ubuntu Linux].


Para Solucionar este error, desde una terminal debemos instalar el modulo php versión 7 para el servidor Apache:

usuario@linux~$ sudo apt-get install libapache2-mod-php7.0

Con esto el servidor Apache queda configurado para PHP7 y podemos finalmente ejecutar archivos php en nuestro servidor.


php7
PHP Versión 7


Instalar PhoneGap en Linux Ubuntu 16.04 LTS Xenial Xerus

En esta entrada menciono los pasos a seguir para instalar PhoneGap en una distribución Linux Ubuntu 16.04 LTS Xenial Xerus.

Con PhoneGap se pueden desarrollar aplicaciones híbridas construidas con tecnologías web como HTML, CSS y JavaScript. Permite el desarrollo ágil de aplicaciones con un único código fuente base para múltiples plataformas, iOS, Android, Windows.


Los pasos a seguir son los siguientes:



  • Paso 1: Instalar Node.js
usuario@linux~$ curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
usuario@linux~$ sudo apt-get install -y nodejs
usuario@linux~$ sudo apt-get install -y build-essential


  • Paso 2: Instalar Git
usuario@linux~$ sudo apt-get install git


  • Paso 3: Instalar PhoneGap
usuario@linux~$ sudo npm install -g phonegap@latest


Finalmente verificamos la instalación de PhoneGap y conocemos la versión mas reciente que se ha instalado:


usuario@linux~$ phonegap -version
6.2.0


Listo, eso es todo.

Cómo Instalar Java JDK/JRE SE en Linux Ubuntu 16.04 LTS Xenial Xerus

Esta entrada hace referencia a una anterior entrada donde explico como hacer una Instalación de Oracle Java JDK/JRE en Linux Mint reemplazando el OpenJDK/JRE que viene instalado por defecto en las distribuciones Linux basadas en Ubuntu Debian.

ANTERIOR ENTRADA [Cómo Instalar Oracle Java JDK/JRE SE en Linux Mint Ubuntu]

En esta ocación describo a continuación los pasos a seguir para realizar Instalación limpia de Oracle Java JDK/JRE sobre la versión mas reciente LTS de Linux Ubuntu 16.04 conocida por su nombre clave Xenial Xerus.



Los pasos a seguir son los siguientes:



  • Paso 1: Debemos comprobar cual es la arquitectura de nuestro sistema operativo Linux, en un terminal ejecutamos el siguiente comando con el cual podemos ver si es de 32-bit ó 64-bit

usuario@linux~$  file /lib/systemd/systemd
/lib/systemd/systemd: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=80c38f5ef6fd5a367d6b043d91b43b11dcee91fb, stripped

  • Paso 2: Revisar si tenemos alguna versión de Java instalada en el sistema

usuario@linux~$  java -version
El programa «java» puede encontrarse en los siguientes paquetes:
 * default-jre
 * gcj-4.9-jre-headless
 * gcj-5-jre-headless
 * openjdk-8-jre-headless
 * gcj-4.8-jre-headless
 * openjdk-9-jre-headless
Intente: sudo apt install <paquete seleccionado>


En este caso no existe una versión de java instalada en el sistema, en caso contrario de tener alguna versión de java instalada en el sistema debemos desinstalar:

usuario@linux~$  sudo apt-get purge openjdk-\*

  • Paso 3: Descargar Oracle JDK SE para Linux Java Platform (JDK) al descargar el JDK también incluye el JRE, descargamos la versión de 64-bit para Linux

Descargar Oracle JDK


  • Paso 4: Descomprimir el archivo descargado

usuario@linux~$  tar xvfz jdk-8u92-linux-x64.tar.gz

  • Paso 5: Crear el directorio donde será instalado Oracle JDK/JRE

usuario@linux~$  sudo mkdir /usr/local/jdk
usuario@linux~$  ls /usr/local/
bin  etc  games  include  jdk  lib  man  sbin  share  src

  • Paso 6: Copiar los binarios del archivo que descomprimimos en el directorio de instalación

usuario@linux~$  sudo cp -rfv Descargas/jdk/ /usr/local/jdk/
usuario@linux~$  ls /usr/local/jdk
jdk1.8.0_92

  • Paso 7: Otorgar permisos de ejecución a todos los usuarios del sistema sobre el directorio de instalación de Java

usuario@linux~$  sudo chmod -R a+x /usr/local/jdk/
usuario@linux~$  ls -la /usr/local/jdk/
total 12
drwxr-xr-x  3 root root 4096 abr 25 20:33 .
drwxr-xr-x 11 root root 4096 abr 25 20:31 ..

drwxr-xr-x  8 root root 4096 abr 25 20:33 jdk1.8.0_92


  • Paso 8: Es hora de actualizar el PATH agregando las nuevas variables de entorno al sistema, usamos un editor de texto para modificar el archivo /etc/profile y agregando al final del archivo las nuevas variables de entorno

usuario@linux~$  sudo vim /etc/profile
# Al final del archivo agrego las nuevas variables de entorno
JAVA_HOME=/usr/local/jdk/jdk1.8.0_92
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH

  • Paso 9: Notificar al sistema Linux donde está instalado nuestro Oracle Java JDK/JRE

usuario@linux~$  sudo update-alternatives --install "/usr/local/java" "java" "/usr/local/jdk/jdk1.8.0_92/bin/java" 1
usuario@linux~$  sudo update-alternatives --install "/usr/local/javac" "javac" "/usr/local/jdk/jdk1.8.0_92/bin/javac" 1
usuario@linux~$  sudo update-alternatives --install "/usr/local/javaws" "javaws" "/usr/local/jdk/jdk1.8.0_92/bin/javaws" 1

  • Paso 10: Configurar Oracle Java JDK/JRE como el Java a usar por defecto

usuario@linux~$  sudo update-alternatives --set java /usr/local/jdk/jdk1.8.0_92/bin/java
usuario@linux~$  sudo update-alternatives --set javac /usr/local/jdk/jdk1.8.0_92/bin/javac
usuario@linux~$  sudo update-alternatives --set javaws /usr/local/jdk/jdk1.8.0_92/bin/javaws


  • Paso 11: Finalmente solo queda recargar el PATH y verificar si la instalación se realizó correctamente

usuario@linux~$  source /etc/profile
usuario@linux~$  java -version
java version "1.8.0_92"
Java(TM) SE Runtime Environment (build 1.8.0_92-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode)



Con esto ya se ha terminado de instalar correctamente Oracle Java JDK/JRE SE en nuestras maquinas con sistema operativo Linux basado en Debian, para este caso en Ubuntu 16.04 LTS Xenial Xerus.