martes, 23 de marzo de 2010

Instalando Go

Hoy gogleando he encontrado una guía para la instalacion del lenguaje de programación de gloogle (GO) en español, así que no pude dejar de hacer la referencia en mi blogger. Aqui la dejo derrepente le pueda servir a otro/a novato/a como lo soy yo ...!!!
Instalando Go

Introducción
Variables de entorno
Ports
Descargar del repositorio
Instalar Go
Escribiendo programas
Recursos de la Communidad


Introducción

Go es un proyecto de código abierto, distribuído bajo una licencia tipo BSD. Este documento explica como recuperar sus fuentes, compilarlas en su propia máquina y ejecutarlas.

Existen dos métodos diferentes de experimentar con Go. Este documento se enfoca en el compilador gc de Go y herramientas (6g, 8g, etc.). Para más información de como usar gccgo, un compilador más tradicional usando GCC como 'back end', vea en Configuración y usar gccgo (aquí va un enlace).


Variables de entorno

El entorno de compilación de Go depende de tres variables de entorno que debería de configurar en su .bashrc o equivalente, más una variable opcional:

$GOROOT
La raíz del árbol Go en el sistema de ficheros. Normalmente es $HOME/go pero puede ser cualquier directorio.
$GOOS y $GOARCH
El nombre del sistema operativo de destino y la arquitectura de la compilación. Las opciones para $GOOS son linux, darwin (Mac OS X 10.5 o 10.6), y nacl (Native Client, un 'port' incompleto). Las opciones para $GOARCH son amd64 (64-bit x86, el 'port' más maduro), 386 (32-bit x86), y arm (32-bit ARM, un 'port' incompleto). Las combinaciones válidas son linux/amd64, linux/arm, linux/386, darwin/amd64, darwin/386, y nacl/386.
$GOBIN (opcional)
La localización dónde los binarios serán instalados.Si configura $GOBIN tiene que asegurarse que está luego en su $PATH de esta forma los comandos recién creados específicos de Go pueden ser encontrados durante la compilación. El defecto, $HOME/bin, puede que ya esté su $PATH.
Observe que $GOARCH y $GOOS identifican el entorno de destino, no el entorno dónde usted ejecuta esta compilación. En efecto, siempre está usando compilación cruzada.

Después de configurar estas variables en su .bashrc, así que haga una doble comprobación listándolas en su entorno.

$ env | grep '^GO'


Ports

Los compiladores de Go funcionan en dos sistemas operativos (Linux y Mac OS X) y en tres conjuntos de instrucciones. Las versiones de Linux y Mac tienen las mismas capacidades exceptuando que el 'port' a ARM no funciona en OS X (aún).

Existen importantes diferencias en la calidad de los compiladores para las diferentes arquitecturas.

amd64 (a.k.a. x86-64); 6g,6l,6c,6a
La implementación más madura. El compilador tiene un optimizador efectivo ('registerizer') y genera buen código (aunque gccgo puede hacer notablemente mejor a veces).
386 (a.k.a. x86 or x86-32); 8g,8l,8c,8a
Comparable al 'port' de amd64. No tan expuesto pero casi tan sólido.
arm (a.k.a. ARM); 5g,5l,5c,5a
Tiene varios error pendientes pero se está mejorando. Probado en QEMU y en un teléfono android.
Excepto para cosas como código de interfaces de bajo nivel para sistemas operativos, el funcionamiento 'runtime' es el mismo en todos los 'ports' e incluye un recolector de basura 'marcar-y-barrer' (uno más elaborado está en camino), 'arrays' eficientes y troceado de cadenas, soporte para pilas segmentadas y una implementación de 'gorutinas' fuerte.

Mire la documentación anexa de gccgo para ver los detalles sobre ese compilador y su entorno.


Descargar del repositorio

Si no tiene Mercurial instalado (no tiene el comando 'hg'), use este comando:

$ sudo easy_install mercurial
funciona en la mayoría de los sistemas. Si eso falla, visite la página de descargas de Mercurial.

Asegúrese si el directorio $GOROOT no existe o está vacío. Entonces haga un 'check out' del repositorio:

$ hg clone -r release https://go.googlecode.com/hg/ $GOROOT


Instalar Go

El 'tool chain' de Go está escrito en C. Para compilarlo necesita tener GCC, las librerías estándar de C, el generador de 'parsers' Bison y el editor de texto ed instalado. En OS X pueden ser instalados con parte de Xcode. En Linux,

$ sudo apt-get install bison gcc libc6-dev ed
(o su equivalente en su distribución de Linux).

Para compilar la distribución Go, asegúrese que $GOBIN (o $HOME/bin si $GOBIN no está definido) está en su $PATH y entonces ejecute

$ cd $GOROOT/src
$ ./all.bash
Si all.bash va bien teminará mostrando

--- cd ../test
N known bugs; 0 unexpected bugs
dónde 'N' es un número que varía de versión en versión.


Escribiendo programas

Dado un fichero file.go, compílelo usando

$ 6g file.go
6g es el compilador de Go para amd64; Tendrá el resultado en el fichero file.6. El '6' identifica ficheros para la arquitectura amd64. La letras identificadoras para 386 y arm son '8' y '5' respectivamente. O sea, si está compilando para 386 debería usar 8g y el resultado debiera llamarse file.8.

Para linkar el fichero use

$ 6l file.6
y ejecútelo con

$ ./6.out

Un ejemplo completo:

$ cat >hello.go <
package main

import "fmt"

func main() {
fmt.Printf("hola, mundo\n")
}
EOF
$ 6g hello.go
$ 6l hello.6
$ ./6.out
hello, world
$
No existe la necesidad de listar las dependencias del paquete hello.6 (en este caso el paquete fmt) en la línea de comandos de 6l. El linkador aprende sobre ellos leyendo hello.6.

Para compilar programas más complicados probablemente quiera usar un Makefile. Existen ejemplos en lugares como $GOROOT/src/cmd/godoc/Makefile y $GOROOT/src/pkg/*/Makefile. La documentación sobre contribuir al proyecto Go da más detalles sobre el proceso de compilación y pruebas de programas Go.


Recursos de la Comunidad

Para obtener ayuda en tiempo real, encontrará muchos usuarios o desarrolladores en el canal #go-nuts en el servidor de IRC de Freenode.

La lista de correos oficial para hablar sobre el lenguaje Go es Go Nuts.

Los fallos pueden ser notificados usando el gestor de incidencias de Go.

Par aquellos que deseen estar al día con el desarrollo existe otra lista de correo, golang-checkins, que recibe un mensaje con un resumen de cada inclusión en el repositorio de Go.

FUENTE:http://groups.google.es/group/golang-spanish/web/instalacin

martes, 16 de marzo de 2010

Habilitar la cuenta root en Ubuntu

Por defecto, la cuenta root no viene habilitada en Ubuntu. Por que?! Pues por que la cuenta ‘root’ o ’superusuario’ es el administrador del sistema, para el que no hay ninguna restricción, para el que no se oculta nada ni se restringe ningún acceso (es el amo y señor del sistema), por lo tanto, esta cuenta de no usarse correctamente, es muy peligrosa. Si la activas ten cuidado al usarla, y de preferencia, utiliza un usuario normal.

Para activarla, es necesario darle un password, luego puedes permitir su acceso desde el loggin del sistema.

Después de instalar el sistema abre un terminal (Aplicaciones > Accesorios > Terminal) y tipea lo siguiente

~$> sudo passwd root

a lo que el sistema respondió

Enter new UNIX password:

entonces introdujce la clave para el root y la reescribe según lo indica el mensaje

Retype new UNIX password:

la respuesta que te da será la siguiente:

passwd: password updated successfully

por lo que al escribir su apareció el símbolo # que identifica al usuario root.

jueves, 11 de febrero de 2010

X remoto con SSH o TELNET

Para aquellas persona que administran un servidor, llamemoslo (Alfa), sin las herramientas gráficas, y necesitan correr una aplicación gráfica, pueden usar el entorno de x desde otra máquina remota (Beta) que sí tenga instalado X y por supuesto que le puedan llegar vía ssh.

Con SSH
1.- Lo primero que hacemos es añadir la ip del host donde queremos aceder (Alfa) en el Host desde nos vamoa conectar, es decir el que tiene X instalado(Beta)
xhost +

te debe aparecer un mesaje donde indique que la IP fue añadida
xxx.xxx.xxx.xxx being added to access control list

2.-Verifiacmos que en el archivo de configuración del ssh en Alfa, este el parametro X11Forwarding en Yes, este archivo de configuración se encuentra por lo general en:

vi /etc/ssh/sshd_config

y verificamos que es el yes el parametro que se muestra abajo.

X11Forwarding yes

3.-Si el parametro X11Forwardingesta no esta en "Yes" entonces lo cambiamos y reiniciamos el servicio sshd

/etc/init.d/sshd restart

3.-Finalmente podemos hacer uso del comando X remotamente

Con TELNET
Aunque no lo he probado, encontre googlendo como lo pueden hacer, si lo prueban por favor diganme si funciona o no

"Si estás usando telnet o no puedes poner 'ForwardX11 yes' en tu configuración:
Asegúrate que el puerto 6000 está abierto en el computador A. Accede via
telnet o ssh al computador B y escribe 'export DISPLAY=Aip:0'. Ahora
puedes correr los programas como lo harías normalmente."
FUENTE:http://www.escomposlinux.org/lfs-es/recetas/remotex.html

martes, 9 de junio de 2009

Configurar YUM en Centos usando Proxy

Acontinuación describo los pasos que tuve que seguir para configurar yum en Centos:
1-Editar el archivo yum. conf
vi /etc/yum.conf
Si tienes un proxy en tu red, debes añadir la linea de información del proxy, el archivo debería parecerse a el siguiente:
[main]
cachedir=/var/cache/yum
keepcache=1
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=redhat-release
tolerant=1
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
metadata_expire=1800

#Esta linea nos interesa si vamos a configurar un proxy
proxy=http://usuario:contraseña@tuproxy.com:18023/

# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
2*- Entramos al archivo /etc/yum.repos.d y modificamos algunas lineas para poder actualizar:
vi /etc/yum.repos.d/CentOS-Base.repo
Al estar dentro del archivo editamos las siguientes lineas:
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

le debemos de quitar la almoadilla y en la siguiente cambiamos el 1 por un 0
gpgcheck=1
El archivo quedara así:
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5


#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/
gpgcheck=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=0
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
gpgcheck=0
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
3*- Debes modificar el archivo /etc/wgetrc en la siguiente linea
#http_proxy = http://proxy.yoyodyne.com:18023
le quitas el almohadilla y colocas tu proxy y puerto
http_proxy = http://tuproxy.com:18023

4.- Reinicias el servicio del YUM
/etc/init.d/yum-updatesd restart
5.- Ahora si hay ancho de banda bueno, entonces puedes actualizar todo tu sistema, ejecutando el comando yum upgrade, lo cual verificara todos los paquetes actualmente instalados y buscara actualizaciones para ellos, al final te mostrara un listado de todos los paquetes a actualizar y te pedira nuevamente una confirmación para descargar e instalar.

viernes, 16 de enero de 2009

Conoce Merida

Para mis amigos Venezolanos y extrangeros, aqui les dejo unas foticos de los lugares que pueden visitar cuando vayan a Mérida, aún faltan muchisímos lugares pero poco a poco voy a ir colocando imagenes

MUSEO DE CIENCIA Y TECNOLOGÍA
Aquí estoy en el museo de ciencia y tecnología a punto de ser devorada por un dinosaurio y les puedo comentar que es una nota…, ya que no solamente vas a observar, sino que también tienes contacto con la ciencia, en él puedes ver desde dinosaurios, acostarte en una cama de clavo y aunque me costó acostarme en ella, no te perfore ni siquiera la ropa lo más que siente es un masaje en el cuero cabelludo cuando colocas la cabeza en la cama de clavo, como puedes hacer una película bajo costo, además vivir la experiencia de un sismo de 5 grados .. pero créanme que asusta.















ZOOLOGICO
Este es un oso frontino, ellos son autoctonos de las montañas andinas, son muy timidos, mi esposo que es agrónomo me cuenta que existe científicos venezolanos que tienen años en las montañas andinas estudiandolos y jamas han visto uno, sino en zologico es un agradable sitio para pasar un rato y llevar a los chamos, y conozcan parte de la fauna venezolana, tiene gran variedad de monos, aves, serpiente.. que ni me asome.. nada más vi a un joven con una gindada en el cuello y me dio un terror, asi que pase rapidito, tambien tiene una gran cascada que aunque no estaba en su mejor momento, cuando uds. vayan estoy seguro que estara mejor.














PICO BOLIVAR
Este pico esta a una altitud de 5.007 msnm, para llegar a este pico se debe tener una buena salud.. no porque subas a pie, que es la unica opcion ya que el teleferico esta dañado desde hace añoooosss!!! (pero, siempre hay algún que quiere llegar hata arriba, yo no!) sino porque a medida que subes la presion es mayor y pude ser que tengas problemas al respirar. Pero es una nota este paseo, por los momento solo se puede aprecir desde la via cuando vas entrado a la ciudad de Mérida.














PÁRAMO LA CULATA
Esto es riquísimo, es friiiiioo como se puede ver en la foto, puedes montar a tus chamos en paseos a caballos, tomarte un chocolate hirviendo de lo más tranquila, y cuando bajas a la ciudad te das cuenta que te quemaste la lengua.














esto es apenas un adelanto de los sitios que puedes visitar en Merida, pronto estare hablando de sus sembrarios, paques temáticos (Venezuela de antier, Los aleros, La Montaña de los Sueños), sus cascadas, las comidas hmmm que ricos, la coordialidad de sus pueblerinos, en fin de todo.

lunes, 17 de marzo de 2008

Casarse o No Casarse...he allí esta el dilema

Casarse es una experiencia muy bonita, que cada individuo debería vivir, es el establecimiento de un negocio, que genera ganancias para ambas partes involucradas siempre y cuando se busquen el bienestar común... el "ganar Tú-ganar Yo" e imagínate que adicional a eso tienes a la persona que te mueve el piso, la que elegiste como tu pareja; a mi parecer es la mejor sociedad eso sí, solo si se casan por amor porque de lo contrario, e igual que un negocio hecho con un mal socio donde que desde el principio tienen problema, ese negocio va a la quiebra.

Siempre digo el matrimonio, es hermoso, por eso es que Uds. ven a personas que lo hacen hasta tres veces o más buscando esa felicidad que aún no la encuentra, porque toman la decisión a la ligera.

Piensen bien antes de casarse y si te vas a casar elige bien, piensa, como son las relaciones en el noviazgo, así serán de casadas, nadie cambia, y menos te cases pensando que lo vas a cambiar, no pierdas tiempo que es lo único que no se recupera y busca otra que te valore y tú también valores.

Pero, para que tenga un éxito rotundo en esto...no deje de pedirle a Dios por su pareja, que sea Dios quien le envíe su pareja idónea.

viernes, 14 de marzo de 2008

Buscando Analisizadores de Log (FTP, Correo y WEB)

Cuando empece mi nueva labor de encontrar una herramienta que englobe todo lo que el Sr. Jose estaba buscando, el quería una herramienta para el monitoreo, ojala fuese solo eso...sumale que tenía que mostrar gráficas, agragemos que también maneje las estadisticas del Squid, le agregamos también las estadísticas de correo, para Postfix, indicando cuantos enviados y cuantos recibidos, para para darle más sabor que mantenga la información de los años anteriores. Esto me habia sido muy complicado, vi cientos de herramientas de monitoreo, instalé algunas y muchas de ellas frustraron varios de mis días de trabajo.

Cuando por fin creí conseguir la herramienta que necesitaba BetterAwstats, NO es una herramienta para reemplazo de AwStats, sino más bien un complemento de esta última, ya que para BetterAwStats trabaje debe también estar trabajando Awstats, es una mejora de Awstats pero con mayor detalle y mejores gráficas, sin contar que mantien los datos por períodos configurable (12,24 meses y tú lo configuras) cosa que no había podido hacer con Awstats, pero como les dije esta en desarrollo, ese fue el detalle...en desarrollo, le falta mucho para trabajar con el log de Correo y FTP.

La Herramienta que me permite y siempre lo ha hecho es Awstats, solo que no me almacenaba la información, pero la nueva versión de Awstats fue la solución, adicionalmente ha mejorado su interfaz con mejores gráficas,mejor distribución de la información, y que también te mantiene los datos procesados en tiempos pasados mostrandolos en periodos de 12meses (1 año)