lunes, 28 de abril de 2014

Instalar Apache, MySql, Gnome, Phpmyadmin en CentOS 6.5 Minimal

Esto fue algo que descubrí por error al intentar instalar Apache con Mysql en el CentOS 6.5


¿Por qué por error? Porque lo recomendable era instalar los daemons (servicios de Apache y Mysql) eligiéndolos desde el instalador de CentOS 6.5


Para mi desgracia (o fortuna quizás..) escogí la instalación llamada minimal, la cual prácticamente no instala gran cosa y hay que instalar casi todo vía línea de comandos.


Este fue el tutorial que seguí en su momento para hacer la instalación minimal:




Esto al final no fue tan malo ya que permite aprender un poco de Linux sobre la marcha.


Aunque existe la opción de usar un paquete instalador como Lamp, parece que hay ventajas de instalar todo a mano.

Una vez que tengas instalada la máquina virtual con el CentOS 6.5 como lo indiqué en los anteriores tutoriales:



Lo primero que hay que hacer es actualizar el CentOS desde la línea de comandos. Una vez iniciar la sesión del usuario root, teclear lo siguiente:

yum -y update

Esto permite que nuestro CentOS no tenga bugs y otros problemas que han sido corregidos.

Lo siguiente es crear un usuario adicional al root, que tenga privilegios de root, tecleando:


/usr/sbin/adduser nuevousuario
Y asignarle una contraseña:
passwd nuevapwd

Cuando se utiliza un usuario que no es root, se debe anteponer la palabra sudo antes de cada orden.

Para agregar el nuevo usuario hay que editar la configuración de sudo mediante el editor predeterminado en CentOS, llamado vi.
/usr/sbin/visudo

Luego encontrar la sección:

# User privilege specification
En mi caso no vi esa sección pero si encontré estas lineas:
root ALL=(ALL) ALL
Nada más agregue la nueva cuenta de usuario debajo


nuevousuario ALL=(ALL) ALL





Este tutorial en Inglés me sirvió de guía:

Initial Server Setup with Centos 6




Y para las órdenes del editor vi usé esta guía:




Ahora para instalar Apache y MySql, loguearse con el usuario que no es root pero que ahora tiene privilegios de root y teclear lo siguiente:


sudo yum install mysql mysql-server httpd php* -y


Luego intente correr los daemons de apache y mysql con:


sudo /sbin/service httpd restart

sudo /sbin/service mysqld restart


Luego hay que instalar phpmyadmin. Este tutorial tiene lo necesario:




Basicamente,

/usr/share/phpMyAdmin

yum install phpMyAdmin



Puedes agregar un pasword si lo deseas



En mi caso agregué un archivo index.html a "/var/www/html"
Tambien agregué un archivo info.php con el siguiente código de php:
<?php
  phpinfo();
?>
Al teclear en el navegador:
o
Decía servidor no encontrado.
Si accedía directo a la carpeta htdocs, lógico que si abre el html y el info.php queda en blanco. Significa que el Apache no funcionaba.
Leyendo por ahi en el enlace:
Configuración servidor web Centos
Encontré que se podía cambiar la directiva ServerName y para probar en el httpd.conf le puse:
ServerName localhost:8080
Luego funcionaba correctamente tecleando esto en el navegador:
http://localhost:8080/index.html  ==> Se ve el "Hola Mundo" que puse en el html.
http://localhost:8080/info.php  ==> Se ejecuta el script de php y muestra la info del sistema.

Se recomienda dejar el ServerName en 80  y así no tienes que teclear el puerto luego del localhost.
Si te aburriste de usar el editor vi, también puedes Instalar el editor Vim que incorpora color en los textos, siguiendo esto:
Para cambiar el ServerName haz lo siguiente:
sudo vim /etc/httpd/conf/httpd.conf
Y cambia el valor de la directiva a:
#Listen xx.xx.xx.xx:8080 Listen 80
Y cambia la directiva ServerName a:
ServerName localhost:80
Con eso ya corre normal desde el navegador con:
También funciona tecleando 127.0.0.1 en lugar de la palabra localhost.
La cosa es que en el lenguaje del famoso Linux como hay un gran tutifruti te confunde un poco que a veces se usen otras órdenes. 
En este enlace:
Uno de los comentarios dice que hay que hacer lo siguiente:
su - gedit /etc/phpMyAdmin/config.inc.php
Lo que en mi idioma CentOS y las herramientas que tengo por acá sería:
sudo vim /etc/phpMyAdmin/config.inc.php
Hay que editar ese archivo y buscar la parte donde dice:
$cfg['Servers'][$i]['AllowNoPassword']
Y cambiarla de FALSE a TRUE y que quede asi:
$cfg['Servers'][$i]['AllowNoPassword'] = TRUE;

Después de reiniciar los daemons (servicios) de apache y mysql,  con solo eso ya permite que tecleando http://localhost/phpMyAdmin se pueda ingresar a lo interfaz de phpmyadmin autentificándose como root y dejando en blanco la pwd.
Para instalar la GUI Gnome puedes hacerlo siguiendo esto:
Inicia en modo consola, pon las credenciales de login, y ya dentro teclea startx y se lanza la GUI.
Desde ahi puedes acceder al firefox y antes abres con la gui una sesión de la "terminal" y en ella tecleas:
sudo /sbin service httpd restart y todo va bien. Se inicia el daemon de apache.
Si por algún caso no ves el navegador, abre una sesión de la Terminal e instala Firefox siguiendo este tutorial, para tener la ultima versión:

Install latest Firefox on Centos 6.5


En mi caso falló algo al instalarse la GUI y supongo que borró algo del phpmyadmin, porque una vez que me identificaba volvía a aparecer la ventana pidiendo el nombre de usuario y contraseña del phpmyadmin.Quedaba en ciclo..
Al final, me di cuenta que no existía el archivo menciona aquí:
/etc/httpd/conf.d/phpMyAdmin.conf   <== Ese no existía, porque al abrirlo estaba en blanco.
Así que volví a correr esto:
/usr/share/phpMyAdmin
yum install phpMyAdmin


Y ahora si ya puedo entrar a editar el archivo phpMyAdmin.conf y presenta los opciones que se ven en el enlace.
Tambien voy con la GUI al sistema de archivos, usr, share y ahora ya se ve la famosa carpeta phpMyAdmin
Sin cambiar nada, ahora pongo esto en el navegador:
Y ya me pide nombre de usuario y contraseña

Bueno, un poco enredado todo esto pero algo se aprende..

lunes, 21 de abril de 2014

Como correr un script php con Xampp

Veo que a muchos nos interesa el tema web, pero muchos ni siquiera sabemos como empezar.

Algo que ayuda a ir comprendiendo la idea es instalar un paquete integrador para montar un servidor web.

Uno de esos paquetes es Xampp, que significa:

 Para cualquier SO.
Instalación del servidor web Apache.
M  Instalación de Mysql como servicio.
Instalación del intérprete de PHP.
Lenguaje de scripts Perl.

Puedes descargarlo de su sitio oficial:  Xampp

Si estás usando una PC normalita, debes descargar el que dice Xampp for windows.

Durante la instalacion activa las casillas de instalar los servicios de Apache y MySql.


La carpeta que será visible desde el navegador es generalmente la que se encuentra en la siguiente ruta:

C:\Xampp\htdocs.


Suponiendo que tengas un archivo llamado hola.php dentro de una carpeta llamada pruebasphp, deberás copiar esa carpeta dentro de htdocs.



Una vez instalado el Xampp, ve al panel de control de Xampp al lado del reloj de windows, activa los servicios de apache y Mysql para que marquen running.

Ahora podrás acceder desde tu navegador tecleando la siguiente ruta:




Por lógica, si apagamos el servicio de apache e intentamos correr el script hola.php, no se ejecutará correctamente el código php contenido en el mismo.



Ahora a los hechos..

Graba el siguiente archivo con el nombre helloworld como tipo de archivo php con la ayuda de un programa como Notepad++ o Sublime text 2 y guárdalo en la siguiente ruta:

C:\xampp\htdocs

<html>
 <head>
  <title>Ejemplo PHP</title>
 </head>
 <body>
 <?php echo '<p>Hola Mundo</p>'?> 
 </body>
</html>

Códigos como este los puedes conseguir en la documentación de php: Código Hola Mundo PHP

Ahora ejecútalo entrando al navegador y tecleando:





Recuerda que el web server Apache debe estar prendido, si no no funcionará.

Hasta la próxima. Saludos!

martes, 15 de abril de 2014

Primeros Pasos con las Clases en Visual Foxpro 9.0

Ahora les comparto cómo iniciar con el uso de las Clases en Visual Foxpro 9.0

En realidad, este artículo es una explicación que el maestro Fernando D. Bozzo me ofreció en alguna ocasión sobre el tema de las clases.

Voy a intentar explicarlo a mi manera pero respetando sus ejemplos originales. A ver que tal queda...

Hay esencialmente 2 maneras de crear clases con VFP.

A través de código, lo cual resulta muy didáctico a la vez.

Y a través del diseñador de clases que te ayuda a crear las clases de forma más interactiva, pero el contenido será el mismo, nada más que presentado de otra forma.

Ejemplo usando código:

Crea un programa llamado MisClases.prg usando MODIFY COMMAND MisClases desde la ventana de comandos de VFP y dentro pon esto:

DEFINE CLASS ordenador AS CUSTOM
    Ram = "2 GB"

    PROCEDURE obtener_Ram
        RETURN THIS.Ram
    ENDPROC

    PROCEDURE setear_Ram
        LPARAMETERS tcValor
        THIS.Ram = tcValor
    ENDPROC
ENDDEFINE

Ahora, desde la ventana de comandos vamos a instanciar y usar esta clase así, copiando de a una línea por vez:

oo = NEWOBJECT( "ordenador", "MisClases.PRG" )
MESSAGEBOX( oo.obtener_Ram() )   && Te muestra "2 GB"
oo.setear_Ram( "3 GB" )
MESSAGEBOX( oo.obtener_Ram() )   && Te muestra "3 GB"
CLEAR ALL

Ejemplo utilizando el diseñador de clases:

En este caso te vas a ahorrar la creación de las líneas DEFINE CLASS y ENDDEFINE y los PROCEDURE/ENDPROC.

Elige el menú File / New / Class y luego el botón New File.

Te muestra un cuadro de diálogo con 3 datos:

Class Name ==> escribe ordenador
Based on ==> selecciona custom
Store in ==> escribe MisClases

Y al final elige el botón OK.

Ya estás viendo el diseñador de clases (la clase es ese rectángulo con unos pequeños cuadrado/circulo/triángulo agrupados y de título "ordenador").

Ya tenemos la clase, ahora le agregamos la propiedad Ram:

Vas al menú Class y eliges New Property, te muestra otro cuadro de diálogo:
Name ==> escribe Ram
Default/Initial value ==> borra el .F. que tiene y escribe "2 GB" sin las comillas.

Luego eliges el botón Add y finalmente el botón Close.

Es probable que en la parte derecha veas la ventana de propiedades de la clase con la nueva propiedad Ram. Si no ves esa ventana, la puedes abrir usando el menú Window / Properties Window, y te vas al final de todo, hasta abajo, donde vas a ver tu nueva propiedad.

Ahora creamos los métodos. Elige el menú Class / New method, en el cuadro de diálogo que aparece, a la derecha del título "name" escribe obtener_Ram y elige el botón Add. Vas a ver que en la ventana de propiedades se agrega ese método.

Ahora agrega el método setear_Ram, elige el botón Add y luego Close.

Una vez cerrado el cuadro de diálogo seguimos con la ventana de propiedades. Haz doble click en el método "setear_ram" y pega este código, que es el mismo que usamos antes:

LPARAMETERS tcValor
THIS.Ram = tcValor

y cierra la ventana del código (o pulsa CTRL + W). Vas a ver que aparece un texto en negrita que dice [User Procedure], lo que indica que ese método tiene código.

Ahora hacemos lo mismo para el otro método: Doble click en "obtener_ram" y pega este código:

RETURN THIS.Ram

y cierra la ventana del código (o pulsá CTRL + W). Finalmente cierra la ventana de la clase que tiene el título "Class designer - misclases.vcx (ordenador)" y cuando te pregunte "Do you want to save changes?" elige Yes.

Ahora estamos nuevamente en la ventana de comandos.

Vamos a instanciar y usar esta clase así, copiando de a una línea por vez:

oo = NEWOBJECT( "ordenador", "MisClases.VCX" ) && Como ves, ahora usamos el VCX que acabas de crear.
MESSAGEBOX( oo.obtener_Ram() )   && Te muestra "2 GB"
oo.setear_Ram( "3 GB" )
MESSAGEBOX( oo.obtener_Ram() )   && Te muestra "3 GB"
CLEAR ALL

Listo. Ahora puedes ver la diferencia entre crear una clase como un PRG o con el diseñador, que la guarda como VCX (y VCT, ya que son dos archivos).

Para más ejemplos de código de clases puedes ver el directorio Samples dentro del directorio de instalación de Visual FoxPro.

Esperamos que esto sirva para arrancar con el tema de las clases con VFP.

miércoles, 2 de abril de 2014

Cómo instalar Android en una PC

Una vez que hemos instalado el Virtual Box, seguiremos con estos sencillos pasos para configurar e instalar un Sistema Operativo Android en nuestra PC

1. Haz click en la parte superior en Nueva.
2. Establece lo siguiente:

Nombre: Android 4.4 x86
Sistema Operativo: Linux
Version: Other Linux
Memoria: Recomendado no menos de 1024 Mb.

Dale click al botón de Next y a continuación:

Disco Duro Virtual: Virtual Box Disk Image
Tipo de Almacenamiento: Reservado Dinámicamente
Tamaño de Disco: Recomendado no menos de 4 Gb.

Dale click al botón Crear..

Con eso hemos creado nuestra máquina virtual de Android x86.

Ahora vamos configurar nuestra máquina virtual haciendo click en el botón Configuración.

Lo primero es hacer que nuestra máquina virtual tenga conexión a internet.

Para ello vamos a Configuración, Red, Adaptador 1 y especificar lo siguiente:

Conectado a: Adaptador Puente.

Si no ves esa opción, también puede funcionar eligiendo NAT.

Lo siguiente es descargar una imagen .iso para realizar la instalación.

Las imágenes .iso las puedes bajar de aquí:

Elegirás la versión dependiendo del tipo de equipo que tengas.

En una máquina con Windows XP SP3 me aceptó la versión 4.4 

Puedes descargar la imagen .iso a cualquier carpeta de tu disco duro o en la ruta por defecto que es algo como:

C:\Documents and Settings\usuario\VirtualBox VMs\Android 4.4

A continuación haz lo siguiente:

Almacenamiento, Controlador IDE, Vacio.
A tu lado derecho verás la sección atributos y harás click sobre el ícono del CD.
Unidad de CD/DVD, Seleccionar un archivo de disco virtual de CD/DVD.
Elegir la imagen .iso de la carpeta donde la hayas guardado.

Ahora estamos en condiciones de dar click al botón Iniciar, para empezar la instalación.

Los pasos del instalador son:

El primer paso es elegir Installation - Install Android-x86 to harddisk.
Create/Modify partitions, elegir OK.
Create New Partition from free space,  elegir la opción New.
Create a new primary partition, elegir Primary y luego Bootable.
Presionar la opción Write y luego Quit.
Choose Partition, elegir OK.
File Systems: Ext3.

Comenzará a formatear el disco y si aparecen otras opciones, aceptarlas.

Al terminar elegir boot Android.

Al final verás la pantalla de Bienvenida de Android.

Ahora bien, para que no te vuelva a aparecer de nuevo la pantalla de instalación, hay que quitar la imagen .iso con la que instalamos. Para ello haz lo siguiente:

Configuración, Almacenamiento y en la sección Atributos del lado derecho, dale click al ícono del CD a lado de Unidad de CD/DVD, donde dice IDE maestro y elegir eliminar disco de la unidad virtual.

Cabe aclarar que tu PC debe ser compatible con virtualización por hardware.

Para comprobar que lo sea verificar lo siguiente:

Configuración, Sistema, Aceleración.
Habilitar VT-x/AMD-V

Si no ves esa opción es muy probable que tu equipo no acepte virtualización por hardware y quizás no puedas instalar el Android x86.

Si crees que tienes un equipo moderno, reinicia tu equipo y presiona la tecla o lo necesario para ingresar al bios. Comprueba que puedes activar la virtualización por hardware desde ahi.

Otra cosa que quizás tengas que hacer es que deshabilitar la opción del mouse. Al iniciar el Android x86, ve al menú Maquina y elige inhabilitar integración del ratón, con lo que podrás usar el ratón dentro del Android.

Para volver al modo normal del ratón, presiona la tecla Control que está a la derecha de tu teclado. Con eso puedes salir del Android y el puntero funciona como de costumbre.

Otra cosa que quizás te suceda es que se ponga negra la pantalla. Para evitar eso dale click a la X de cerrar y en las opciones que aparecen elige Enviar señal de apagado, para que regrese el Android del modo de suspensión.

Para evitar que la pantalla se siga poniendo negra, hay que buscar moviendo la rueda del mouse en la pantalla de inicio, una rueda dentada (Ajustes) y dentro buscar Settings, Display, Sleep, Never time out.

Lo que sucede es que Android entra a modo suspensión y luego ya no regresa ni presionando F4 como indican algunas páginas en la web.

Con eso ya no se pone negra la pantalla.

Lo que sigue es instalar algo útil como el Whatsapp, pero eso será tema de otro post.


Hasta luego!