Apartamento En Familia

Apartamento En Familia
Apartamento de playa para vacaciones. https://www.booking.com/hotel/es/apartamento-en-familia.ca.html Número registro HUTT-005768

miércoles, 26 de diciembre de 2012

Sublime Text 2 en Ubuntu 12.10

Sublime Text es un editor de texto y editor de código fuente creado en Python desarrollado originalmente como una extensión de Vim, con el tiempo fue creando una identidad propia, por esto aun conserva un modo de edición tipo villamado Vintage mode.1

Se distribuye de forma gratuita, sin embargo no es software libre o de código abierto,2 se puede obtener una licencia para su uso ilimitado, pero el no disponer de esta no genera ninguna limitación mas allá de una alerta cada cierto tiempo.

(Fuente Wikipedia)


¿Por qué Sublime Text 2?

Los que lo han probado coinciden en que es un antes y un después en los IDE para Linux. Eclipse casi siempre acababa siendo la opción más lógica para programar en casi todos los lenguajes, pero con Sublime Text, parece que esta hegemonía puede terminar. Tiene una versión de gratuita, en la que sale un recordatorio para que pagues si te gusta el programa, o una versión de pago con un coste actual a dia de la edición de este artículo de 60$

Instalación



sudo add-apt-repository ppa:webupd8team/sublime-text-2
sudo apt-get update && sudo apt-get install sublime-text

Una vez instalada la aplicación, la podremos encontrar en el Dash:


¿Como usarlo?

Podéis encontrar una guía completa en http://falasco.org/guia-definitiva-sublime-text-2


Más info



lunes, 24 de diciembre de 2012

martes, 11 de diciembre de 2012

Solucionar el problema "/bin/rm: Argument list too long"

rm es un comando de la familia de sistemas operativos Unix usada para eliminar archivos y directorios del sistema de archivos1 . Esta orden debe utilizarse con cautela, ya que puede ser muy destructiva, debido a que, al momento de ser llamada, por omisión borra los archivos sin pedir confirmación.
Proviene de la palabra remove que significa "borrar" en inglés.

(Fuente Wikipedia)

En algunas ocasiones me ha ocurrido que mirando de borrar los archivos de una carpeta de manera masiva (rm *), he obtenido el error

bash: /bin/rm: Argument list too long

Bien, el problema es bastante claro, ya que nos dice que la cantidad de archivos a borrar es muy grande y no puede gestionarla. La verdad es que uno piensa que un comando como rm tiene que estar preparado para eso y más, pero al final, como todo tiene sus pros y sus contras, la cuestión es encontrar la solución a esa limitación.

¿Que causa el problema?

El problema es una limitación en el buffer de la función exec(), el cual es de 128K. Esta función es usada por muchas otras funciones y por tanto afecta a muchas operaciones. Por regla general, este problema no afecta al dia a dia ni al usuario doméstico, si bien en administración de servidores nos podemos ir encontrando de vez en cuando. Existe una explicación bastante precisa en la wiki de Debian: ArgumentListTooLong
Una traducción aproximada seria esta:

El limite afecta la funcion execve() del kernel, la cual es usada por todas las demás funciones exec() (execl, execlp, execle,etc). La funcion trabaja creando un buffer de 128k al final del espacio de memoria y copiando el comando y el entorno para el nuevo proceso en este espacio. En ese momento el kernel carga el nuevo programa en memoria, configura sus punteros argv y endv, y salta al punto de entrada del programa. El mensaje de error "argument list too long" es causado por el codigo de error !E2BIG, siendo devuelto por la funcion execve(), cuando es incapaz de introducir el argumento y entorno suministrados dentro del buffer de 128k.
(Traducción |_ocutus)


¿Como podemos arreglarlo?

Más que arreglar el problema, deberíamos hablar de como evitarlo. Para evitar que nos salga este error, lo que podemos hacer es borrar de otra manera que no sea mediante rm * .

  • Borrando de uno en uno. Bah... eso no es viable ya que hablamos de que hay quizás más de un millón de archivos a borrar!!
  • Creando un bucle for-do-done:

for i in ls /tmp/*; do rm -v $i -f; done

  • Usando find + xargs:

find . -name '*' | xargs rm

Es facil de entender este comando, pero no aporta gran mejora respecto a usar el bucle for-do-done. Para que aporte mejora podemos hacerlo algo mejor enviando, por ejemplo, de 10 en 10 archivos a xargs:


find ./ -name '*' -print0 | xargs -0 -n 10 rm

Con esto podremos borrar masivamente cualquier cantidad de archivos de una manera óptima. 

 


lunes, 10 de diciembre de 2012

Asociar enlaces de aMule a Firefox en Ubuntu 12.10


aMule es un programa de intercambio P2P libre y multiplataforma, similar al conocido eMule que funciona tanto con la red eDonkey como con Kademlia.
Deriva del código fuente de xMule, el cual deriva del proyecto lMule, el primer intento de portar el cliente eMule a GNU/Linux. Al igual que eMule, aMule se distribuye y publica bajo los términos de la licencia GNU GPL.
El objetivo de aMule es ser un "eMule multiplataforma", funcionando actualmente en los sistemas operativos GNU/Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Mac OS X, Irix y Windows, y en las arquitecturas x86, AMD64, UltraSPARC, PowerPC, Macintosh (G4, G5,...), Xbox y NSLU2.
Existen dos versiones de aMule, la versión estable, y la versión de desarrollo (SVN), que se publica diariamente con los últimos avances, aunque no se asegura su estabilidad. aMule admite también enlaces magnéticos.

(Fuente Wikipedia)

Instalar aMule


Para instalar aMule y funcione con Firefox debemos instalar dos paquetes:

amule: https://apps.ubuntu.com/cat/applications/amule/
amule-utils: https://apps.ubuntu.com/cat/applications/amule-utils/

o desde la linea de comandos

apt-get install amule amule-utils

Enlazarlo con Firefox


A mi es una de las cosas que siempre que instalo un Ubuntu de 0 me pasa, que tengo que enlazar el Firefox con los enlaces de amule. Y no es intuitivo activarlo.. has de saber donde tocar y que poner. La manera rápida y efectiva que yo tengo de hacerlo es así:

Tecleamos en la barra de dirección de Firefox about:config. Veremos una pantalla así:



Le damos al botón que nos hace prometer que tendremos cuidado y luego podemos configurarlo:

Mediante el botón derecho tenemos que incluir 4 valores, 3 lógicos y uno de cadena:



Tipo: Logico
network.protocol-handler.external.ed2k
valor: TRUE


Tipo: Logico
network.protocol-handler.warn-external.ed2k
valor: FALSE


Tipo: Logico
network.protocol-handler.expose.ed2k
valor: FALSE




Tipo Cadena
network.protocol-handler.app.ed2k
valor: /urs/bin/amule



Una vez hecho esto reiniciamos el Firefox y ya nos funcionaran los enlaces.

viernes, 30 de noviembre de 2012

Programación en Android desde Ubuntu 12.10


Android es un sistema operativo móvil basado en Linux, que junto con aplicaciones middleware8 está enfocado para ser utilizado en dispositivos móviles como teléfonos inteligentes, tabletas, Google TV y otros dispositivos.9 Es desarrollado por la Open Handset Alliance, la cual es liderada por Google. Este sistema por lo general maneja aplicaciones descargadas desde Google Play, aunque pueden ser instaladas por otros medios.

(Fuente Wikipedia)

Así pues, vamos a preparar nuestro Ubuntu (en el momento de redactar este artículo la versión 12.10) para poder programar aplicaciones para Android.
El primer paso es instalar un entorno de desarrollo integrado (IDE) y luego instalar el Android Development Tools de Google (ADT) para programar en Android. Yo he escogido Eclipse para programar ya que es un IDE muy reconocido y extendido que se integra perfectamente con el ADT.

Así pues, nos lanzamos a programar nuestro primer 'Hello World':

Instalar Eclipse

Para instalar Eclipse vamos al Centro de Software de Ubuntu y buscamos Eclipse. Lo instalamos. (apt://eclipse-platform). Además de esto, si usas un entorno 64bits mira de instalar el ia32-libs

apt-get install ia32-libs

Sinó luego habrán cosas que no te irán
(http://developer.android.com/sdk/installing/index.html#troubleshooting)

Instalar ADT

Una vez instalado el Eclipse, lo abrimos y:


  1. Seleccionamos Help > Install New Software.
  2. Click Add, en la esquina derecha.
  3. En la ventana Add Repository, escribe "ADT Plugin" como Name y la siguiente URL para el  Location: https://dl-ssl.google.com/android/eclipse/
    
    
  4. Click OK. 
  5. En la ventana Available Software, selecciona el checkbox cercano a Developer Tools y haz click en Next.
  6. En la siguiente ventana haz click en Next.
  7. Acepta (si es el caso) la condiciones y licencias.
  8. Cuando la instalación termine reinicia Eclipse.

Configurar ADT

Para configrar ADT, una vez reiniciado Eclipse nos saldrá el Welcome to Android Development y facilmente podremos escoger la opción que más nos interese.

Una vez hecho esto, veremos que empieza a descargarse el Android SDK Tools entre otras cosas.


Programar nuestro "Hola Mundo"

Abrimos Eclipse y vamos a File->New->Project y escojemos Android Application Project



Ahora nos saldrá otra ventana en donde deberemos escoger el nombre y SDK en el que queramos programar.


Después de esto, le damos a Next y veremos otra ventana para configurar el projecto. Si no tenemos muy claro lo que queremos configurar, lo podemos dejar por defecto.


Luego de esta ventana ya nos irán pidiendo unas o otras ventanas dependiendo de nuestras necesidades (icono que queremos, tipo de ventana principal (activity), etc.

Con esto ya nos crea un "Hola Mundo" que podemos ejecutar. 

Android Virtual Device Manager

Tenemos casi todo listo, peeero, puede ser que no veamos los iconos de Android SDK Manager  ni el del Android Virtual Device Manager. 
Esto a mi me ocurrió pese a que en tutoriales que he leido, no siempre pasa. Si os pasa, debeis ir a Window > Customize perspective > Command Groups Availability tab y habilitar Android SDK and AVD Manager


Le dais a Ok una vez seleccionada la opción y ya veréis las opciones. Ahora ya estamos más cerca de poder ejecutar vuestro programa. 

Ahora vamos a crear un dispositivo virtual Android:
Abrimos el AVD Manager yendo al menú Window-> Android SDK and AVD Manager o desde el siguiente icono del menú:


 Le damos al botón New a la izquierda de la ventana del Android Virtual Device Manager. Entonces nos saldrá la siguiente pantalla:

Bien, pues ahora tenemos que rellenarlo de la siguiente manera:
AVD Name: El nombre que recibirá el dispositivo virtual. (sin espacios. Solo letras y números o '-')
Device: Emulará ese tipo de movil (Nexus 7, Galaxy Nexus, etc)
Target: Es la versión de Android que usará en el dispositivo virtual android.

Las demás opciones, no es necesario de inicio configurarlas mucho.

Si usáis 64bits y no habéis instalado el ia32-libs como aconsejé más arriba, el botón OK no se os habilitará.

Una vez creado nuestro móvil virtual, lo arrancamos seleccionándolo y pulsando Start. Una vez arrancado nuestro móvil, podemos darle a 'Run'  en Eclipse y nos saldrá en nuestro móvil.





Listo, ya tenemos nuestra primera aplicación programada para Android funcionando en nuestro Ubuntu 12.10.


Links de interes:





martes, 13 de noviembre de 2012

Nagios3 en Ubuntu (external command, theme, etc)

Nagios es un sistema de monitorización de redes de código abierto ampliamente utilizado, que vigila los equipos (hardware) y servicios (software) que se especifiquen, alertando cuando el comportamiento de los mismos no sea el deseado. Entre sus características principales figuran la monitorización de servicios de red (SMTP, POP3, HTTP, SNMP...), la monitorización de los recursos de sistemas hardware (carga del procesador, uso de los discos, memoria, estado de los puertos...), independencia de sistemas operativos, posibilidad de monitorización remota mediante túneles SSL cifrados o SSH, y la posibilidad de programar plugins específicos para nuevos sistemas.
Se trata de un software que proporciona una gran versatilidad para consultar prácticamente cualquier parámetro de interés de un sistema, y genera alertas, que pueden ser recibidas por los responsables correspondientes mediante (entre otros medios) correo electrónico y mensajes SMS, cuando estos parámetros exceden de los márgenes definidos por el administrador de red.
(Fuente Wikipedia)

Para instalarlo en Ubuntu es tremendamente sencillo. Luego veremos que hay cosas que no funcionan de inicio como nosotros queremos y seguramente querremos tocar. La cosa vendrá que la documentación que encontramos de internet es de versiones anteriores, o de instalaciones realizadas desde el paquete tar ball, etc. Así que vamos a centrarnos en Ubuntu y Nagios:

Para instalarlo:

sudo apt-get install -y nagios3
 
Saldrán pantallas para configurar el nagios que son muy faciles de responder:
 
 

Una vez instalado ya podremos conectar a http://127.0.0.1/nagios3

Ahora bien, veremos que no podemos ejecutar comandos externos. Para habilitarlo necesitamos editar el archivo /etc/nagios3/nagios.cfg y cambiar la linea que pone check_external_commands=0 por check_external_commands=1. ¿Con esto ya funcionará?. Pues no. Dará un error de


Error: Could not stat() command file ‘/var/lib/nagios3/rw/nagios.cmd’!

Para arreglarlo:

root@nagios:~# chmod -R g+x /var/lib/nagios3/rw
root@nagios:~# chown nagios:www-data /var/lib/nagios3/rw/nagios.cmd
root@nagios:~# service nagios3 restart

root@nagios:~# usermod -G nagios www-data

root@nagios:~# service apache2 restart



Tabla comparativa de rutas que podemos encontrar en internet y a que directorio se refiere en nuestro Ubuntu.

binary ………………… /usr/local/nagios/bin/nagios … /usr/sbin/nagios3
configuration files … /usr/local/nagios/etc ………….. /etc/nagios3 & /etc/nagios-plugins/config
plugins ………………. /usr/local/nagios/libexec …….. /usr/lib/nagios/plugins
website files ……….. /usr/local/nagios/share ……….. /usr/share/nagios3/htdocs
command file ……… /usr/local/nagios/var ………….. /var/lib/nagios3




Ahora quizás queremos cambiar el tema de nagios para darle un aspecto algo más agradable.

Instalemos por ejemplo el Nuvola:

Nos descargamos el tar.gz de nagios (enlace más arriba):
wget "http://exchange.nagios.org/components/com_mtree/attachment.php?link_id=46&cf_id=29" -O nagios-nuvola-1.0.3.tar.gz


Luego lo descomprimimos y seria aconsejable leer el readme.txt. Sino lo hacemos da igual porque ya explico yo como hacerlo.

Una vez decomprimido el nagios-nuvola-1.0.3.tar.gz lo que hacemos es mover la carpeta html a /usr/share/nagios3 . Luego, renombramos la carpeta htdocs por htdocs.backup (para tener una copia por si algo no nos gusta). Luego renombramos la carpeta html que habiamos movido a htdocs. Vamos, que la carpeta html que habiamos descomprimido nos sirve para sustituir a /usr/share/nagios3/htdocs .
Con eso ya abremos instalado el tema, pero no lo habremos configurado. Dentro de htdocs (una vez realizado los pasos anteriores) nos encontramos con un archivo llamado config.js. Debeis cambiar la linea donde pone
var cgipath           = "/nagios/cgi-bin/";    
por
var cgipath             = "/nagios3/cgi-bin/";

Con esto ya os funcionará.


Enlaces de interes:
http://askubuntu.com/questions/145518/how-do-i-install-nagios





That u don't know what you've got 'til it's gone