Gastón Ramos

"La mayoría de las gaviotas no se molesta en aprender sino las normas de vuelo más elementales: como ir y volver entre playa y comida. Para la mayoría de las gaviotas, no es volar lo que importa, sino comer. Para esta gaviota, sin embargo, no era comer lo que le importaba, sino volar. Más que nada en el mundo, Juan Salvador Gaviota amaba volar".

Category: linux

Configurar dual head con xrandr

Ayer actualicé la máquina y se me desinstaló el Gdm, el display manager, programa que permite logearnos y arrancar una session usuario en modo gráfico, entre otras cosas. Entonces aproveché e instalé el Lightdm que hace lo mismo pero es más liviano, el problema es que yo uso dos monitores en modo dual head, y eso dejó de funcionar, entonces lo que hice fué configurarlo con el programa xrandr y ahora se ve mucho mejor!, este es el comando que usé:

xrandr --output VGA1 --above LVDS1 --auto

acá hay un par de datos más:

http://zeroset.mnim.org/2013/01/07/dual-head-monitor-setup-on-ubuntu-linux-with-xorg-and-radeon/

Advertisements

How to create a bosh release to publish an static web site

0- Purpose of post.

In this post I’ll show you how to create a bosh release to serve an static web page, for this I will use bosh-lite which is a version of bosh for development and bosh-gen which is a bosh release generator.

1- Bosh-lite and Bosh-gen and create the release.

Let’s see a little the help the bosh-gen. As we can see we can do several things, let’s start creating our release to be called “static-syte”

==> bosh-gen new static-syte

00-bosh-new

2- Download apache2 sources and create the package for apache

We just created our release now we have to download the sources of our web server and put them in the folder src/. You can download apache from this url: https://httpd.apache.org/download.cgi

I already downloaded apache 2.2.25 and staved in ~/Downloads dir.

  => cd static-site
  => mkdir -p src/apache2
  => cp ~/Downloads/httpd-2.2.25.tar.gz src/apache2

Done this we need to create our first package for apache

=> bosh-gen help package

01-bosh-help-package

=> bosh-gen package apache2 -f src/apache2/httpd-2.2.25.tar.gz

We are going to build the package from the sources so we don’t need the blob

=> rm blobs/apache2/httpd-2.2.25.tar.gz

3- Take a look into packaging and spec files

As we can see has created 2 files spec and packaging, packaging is the script that contains the instructions for building our package. Spec contains among other things the dependencies and files needed to compile our package.

4- Create httpd Job

We created our bosh package now need to tell which is the process that we need to run to lift our web server and what settings it needs, for this we have to create a job

=> bosh-gen job httpd

03-bosh-gen-job

5- Take a look into monit, httpd_ctl and spec files

As we can see it created some files, but let’s focus only on spec and monit files,
monit file basically has the data that monit needs to start and stop the job, in this
case it uses a helper script created by bosh-gen to help us debug our job.
To change the start command for this new job we need to edit httpd_ctl template.

Edit the jobs/httpd/templates/bin/httpd_ctl comment the pid_guard and add the start command by this:
/var/vcap/packages/apache2/bin/apachectl start  

after that it should look like this:

04-edit-ctl-template

Edit monit file and change the pid file location to /var/vcap/packages/apache2/logs/httpd.pid

after that it should look like this:

05-edit-monit

6- Create release manifest file

We have a package (the bits needed to run our server) and the job (the configurations and scripts to lift the web server process) now we need to create and upload our release.

==> rm config/private.yml 
==> git add .
==> git commit -a -m "added package apache2 and job httpd"
==> bosh create release
06-bosh-create-release
 07-bosh-create-release-b
==> bosh upload release

08-bosh-upload-release
09-bosh-upload-release-b

7- Create deploy manifest file

 ==> bosh-gen manifest httpd .

10-bosh-gen-manifest

Then we need to point bosh to this deployment file:

bosh deployment httpd.yml

and let’s do our first deploy

bosh -n deploy

11-bosh-deploy
12-bosh-deploy

If we open a browser we will se the apache default page like this:

14-apache-default-web

So yeaaaah, we just did our first deploy!!! but this page is not so funny and we need to have the might, the muscle to show our own site!
In the next post i will show you how to add a new package for our cool static page.

stay tuned will continue…

Tip Linux/Bash: rename, un comando muy cheto para renombrar un conjunto de archivos

Hace un tiempo atrás tuve que renombrar un conjunto de archivos, como soy vago, no quería hacerlos a mano uno por uno, así que buscando un poquito
me encontré con este hermoso script en perl: rename, que en realidad es un symlink a /usr/bin/prename. Rename sirve para renombrar un conjunto de archivos
utilizando un regex, por ejemplo para eliminar la extensión .bak de todos los archivos:

rename 's/\.bak$//' *.bak

o para cambiar todas la letras mayúsculas por minúsculas:

rename 'y/A-Z/a-z/' *

como pueden ver las limitaciones están en la imaginación y el conocimiento de regex de cada uno.

Este fué el primer tip Linux/Bash, dicho sea esto, me comprometo a escribir uno por semana.

Los ejemplos de este artículo fueron extraídos/copiados del manual de rename (man rename).

Me ahorré u$s65 con una solución hacker xmodmap

Ayer entre otras cosas que se me pasaron se me rompió el teclado de la notebook, lo que hacía es que la tecla shift izquiera no funcionaba con algunas teclas como por ej: 9 0 ‘  y & tampoco con la v y la b, el shift derecho tampoco funcionaba con algunas de estas (rarísimo), el punto es que probé de todo y llegué a la conclusión de que era un problema del hardware del telcado, busqué en mercado libre y encontré el repuesto (va el teclado entero nuevo) http://articulo.mercadolibre.com.ar/MLA-144065147-teclado-notebook-acer-aspire-5536-5542-5810-5410-5738-espano-_JM

U$s 65 para cambiar el teclado completo de una notebook que ya tiene unos 3 o 4 años, me pareció un gasto bastante grande y teniendo en cuenta que no estoy pasando por una época de abundancia, se me ocurrió remapear el teclado, así que lo que hice fué intercambiar las telcas Shift Izquierdo por el Caps Lock,

y ahora funciona perfecto :)… lo único que falta es acostumbrarme.

 

xmodmap -e 'keycode 66 = Shift_L'
xmodmap -e 'keycode 77 = Caps_Lock'

Con esos dos comandos de xmodmap hacemos lo que dije arriba,
y con el comando

xev

podemos ver los códigos de ls teclas que apretamos, entre otros eventos.

Inversión: Algunos minutos de búsqueda en google

Ganancia: U$s 65