29 nov 2012

Modificado el módulo puppet para instalar iceweasel desde Backports

He modificado el módulo puppet para solucionar un problema reportado por Carlos Magro, por el que no se instalaba el paquete con la nueva key del repositorio, debido a que antes había que hacer un update del repositorio:

https://www.box.com/s/tmsi7clsaxbvnpannksw

Por cierto, este módulo instala los paquetes desde un mirror de backports montado en el servidor ldap. Si queréis utilizarlo, podéis hacer dos cosas: 
  • Cambiar los repositorios por los oficiales en el propio módulo.
  • Crear el mirror en vuestro servidor ldap.

28 nov 2012

Crear un árbol de directorios con un solo comando

Muchas veces necesitamos crear una estructura de directorios de una sola vez; por ejemplo, cuando vamos a crear un módulo puppet. Si ejecutamos:

# mkdir -p /etc/puppet/modules/{files,manifests,facts}
crearemos de una sola vez la siguiente estructura de directorios:

/etc/puppet/modules/
|-- facts
|-- files
`-- manifests

Montar un servidor de clonación con DRBL

Instalar un servidor de clonación con DRBL es relativamente sencillo cuando tenemos control sobre el DHCP de nuestra red y podemos instalar DRBL en la misma máquina donde se encuentra instalado DHCP. 

Lo que no es tan sencillo es instalar un servidor DRBL en una red donde ya tenemos un servidor de DHCP cuya configuración no podemos tocar. Para solucionar este problema podemos ocurrir a varias soluciones, como:
  • Configurar el servidor DHCP de DRBL para que escuche en otro puerto distinto del estándar.
  • O sustituir el servidor DHCP de DRBL (isc-dhcp-server) por dnsmasq, un servidor dhcp que podemos configurar como proxyDHCP.
A continuación podéis ver un documento en el que he elegido la segunda opción para resolver el problema:

Sorteo de aretes

Ayer hice el  tutorial de las mariquitas con cerámica ultra ligera, aquí pueden ver como quedan usándolas de aretes :D 


Para participar en el sorteo solo necesitan:
Ser fan de Galletita de Jengibre.
Compartir este post :)!
Dejar un comentario indicando sus datos.
El sorteo será el miércoles 5 de diciembre.

Ya saben que también me pueden seguir por Facebook / twitter y ver los avances de tutoriales e imágenes bonitas!

27 nov 2012

Mariquita con ceramica ultra ligera



Hola!, hace tiempo quería hacer un tutorial con alguna cerámica que vendan aquí en Perú. La que me llamaba mucho la atención era la cerámica ultra ligera de Arti, tiene una buena textura y es fácil de manejar, solo hay que tener cuidado de no aplastarla mucho porque es una masa bien blanda, a diferencia de la cerámica al frió que es más moldeable, pero los puntos a favor es que cuando seca es súper  liviana,  y  eso sirve para accesorios como aretes, collares, etc.

Hice unos aretes en forma de mariquita, hace unos días subí la foto a facebook, y probablemente en el próximo post las estaré sorteando :D

Lo primero que tienen que hacer es dibujar a tamaño real la figura que van a moldear

Esta es la masita, viene en una taper que es super útil.




Lo que hice fue amasar bien y formar una bolita.

Luego le fui dando la forma de una mariquita y me ayude con una aguja.

Trate de aplanar el lado donde irá el ganchito del arete.

Hice una bolita mas chica de color negro.

Lo junte al cuerpo (que sería la parte roja) lo bueno es que entre masas se pegan, no hay necesidad de usar otro pegamento.

Le hice ojitos (con la punta de un lápiz) a la carita (bolita negra) Y empece a pegar mini bolitas negras, que serían las manchitas de la mariquita.


Le di esa forma al ganchito del arete para poder colocarlo en la mariquita.


Lo deje secando 24 horas.

Y por último le pase un poco de barniz para que tenga brillo :)

Ya saben que también me pueden seguir por Facebook / twitter y ver los avances de tutoriales e imágenes bonitas!

26 nov 2012

Ganadora del sorteo

La ganadora del sorteo de una ilustración personalizada de el niño invisible es:
Felicidades a Lidia Rimachi!, ahora me pongo en contacto con ella :). Gracias a todos por participar!

Ya saben que también me pueden seguir por Facebook / twitter y ver los avances de tutoriales e imágenes bonitas!

23 nov 2012

Nueva corrección del módulo instala-java-1_7

He vuelto a subir el módulo instala-java-1_7 después de corregir un bug que no creaba bien los enlaces alternativos /etc/alternatives/iceweasel-javaplugin.so y /etc/alternatives/mozilla-javaplugin.so si utilizábamos el módulo en un equipo de 64 bits.

21 nov 2012

Modificado el módulo instala-java-1_7

He modificado el módulo de puppet instala-java-1_7 para corregir un pequeño bug por el que no se realizaba la instalación del paquete hasta la segunda ejecución de puppet.

Podéis descargarlo desde el siguiente enlace:
https://www.box.com/s/b5aynghswl8gtk3oac2v

Gracias, Paco.

20 nov 2012

Sorteo


Recuerdan este post? Use las ilustraciones de el niño invisible y le puse un marco de cartulina para decorar mi cuarto (:
Me gustó mucho el resultado, y lo genial es que con el niño invisible sortearé una ilustración personalizada para el ganador de este concurso!

La idea es que el ganador nos envíe la foto que desee para personalizarla y quedará así:

Yo me encargaré de ponerle el marco de cartulina :D

Para participar en el sorteo solo necesitan:
El sorteo será el domingo 25 de noviembre.

Ya saben que también me pueden seguir por Facebook / twitter y ver los avances de tutoriales e imágenes bonitas!

18 nov 2012

Origami Wall - E

Hace unas semanas vi Wall-E y me encanto la película. Me puse a buscar cosas de Wall-E y encontré el origami de Wall-E!

Hacerlo es fácil yo usé un papel de 21 cm x 21 cm y al final me quedó un origami de 9cm x 7 cm aprox.

Lo hice con este vídeo, está muy bien explicado, y creo que haré varios para colgarlos en mi árbol de navidad :)

Ayer (12 de diciembre del 2014) volví a hacer este origami para mi reto de los 365 días de  origami!

Ya saben que también me pueden seguir por Facebook / twitter y ver los avances de tutoriales e imágenes bonitas!

resolvconf: Gestionando /etc/resolv.conf

El archivo /etc/resolv.conf es el archivo de configuración del resolver. Se usa para que un cliente pueda acceder a DNS y, en él se proporcionan los servidores de DNS que se van a utilizar.

Antiguamente el archivo /etc/resolv.conf era estático, pero hoy en día hay muchas aplicaciones que lo manejan de forma dinámica.

resolvconf es un framework que mantiene la información del archivo /etc/resolv.conf y que muchas veces nos encontraremos instalado. 

Los ficheros de configuración de resolvconf se encuentran en: /etc/resolvconf

Dentro del directorio /etc/resolvconf encontraremos un archivo: 
/etc/resolvconf/interface-order, donde se establece el orden (por interfaces) en el que los scripts de actualización de resolvconf procesarán los registros de servidores de nombres.

# cat /etc/resolvconf/interface-order

# interface-order(5)
lo.inet*
lo.dnsmasq
lo.pdnsd
lo.!(pdns|pdns-recursor)
lo
tun*
tap*
hso*
eth*
ath*
wlan*
ppp*
*

Dentro del directorio /etc/resolvconf encontraremos otro directorio: resolvconf.d en el que tenemos tres archivos:
  • /etc/resolvconf/resolvconf.d/head
  • /etc/resolvconf/resolvconf.d/base
  • /etc/resolvconf/resolvconf.d/tail
En el archivo /etc/resolvconf/resolvconf.d/base se almacena la información básica para el resolver. Dentro de él guardaremos la información básica de dns que queramos tener en la máquina. Por ejemplo:

nameserver 127.0.0.1

nameserver 8.8.8.8
search midominio.es


En el archivo /etc/resolvconf/resolvconf.d/head se almacena la información que queremos que se añada al comienzo del archivo resolv.conf generado. Por defecto, tan sólo contiene el comentario de cabecera que vemos al editar el archivo resolv.conf:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

En el archivo /etc/resolvconf/resolvconf.d/tail se almacena la información que queremos que se añada al final del archivo resolv.conf generado. Por defecto, se encuentra vacío.

Cuando modifiquemos  estos archivos, para actualizar el archivo /etc/resolv.conf ejecutaremos el comando:
# resolvconf -u

Para más información:
  • man resolvconf
  • http://anonscm.debian.org/gitweb/?p=resolvconf/resolvconf.git;a=blob;f=README;hb=HEAD

17 nov 2012

Zapatillas pintadas



Creo que cada día quiero pintar una zapatilla distinta, me encanta porque las zapatillas de tela son bien baratas, y podemos pintar con cualquier pintura para tela (o acrílica), en realidad todo depende del diseño.

Vi unos zapatos de zorritos que me encantaron, y esa fue la idea para pintar las zapatillas.

Materiales:
  • Zapatillas de tela (de preferencia blancas)
  • Pintura para tela.
  • Pinceles.
  • Lápiz.
  • Accesorios dependiendo del diseño (ojitos, tela, fieltro, etc)
  • Cinta masking tape.
Con un lapicero dibuje las partes donde pintaría los ojos.
Y empecé a cubrir con masking tape las zonas donde no iba a pintar.


Aquí ya estaba terminando de pintar.

Cuando saque la cinta masking tape quedo así, luego fui dibujando los ojitos y colocando accesorios.

Ya casi para terminar le puse orejitas de pana, fieltro, cuero (el material que tengan).


Y este es el resultado final! :)
Ojalá se animen a pintar sus propias zapatillas :) aquí pueden ver las de MondrianCalvin And Hobbes.

Ya saben que también me pueden seguir por Facebook / twitter y ver los avances de tutoriales e imágenes bonitas!

15 nov 2012

Forzar el desmontaje de una partición o dispositivo

A veces nos es imposible desmontar un dispositivo o partición con el comando umount. Cuando esto suceda, podemos probar lo siguiente:

1) Tratar de desmontar el recurso usando la opción -l de umount si estamos trabajando con un recurso local:

# umount -l punto-de-montaje

2) Tratar de desmontar el recurso usando la opción -f de umount, si estamos trabajando con un recurso nfs:

# umount -f punto-de-montaje

Puppet: Clase clase-especifica-squeeze

Aquí tenéis mi clase-especifica-squeeze, tal y como la tengo definida ahora mismo en el centro para tener todo un poco más organizado.

Como podéis ver, tengo cinco posibles clasos:
  • Tareas que van dirigidas a todos los servidores de terminales  
  • Tareas para servidores de terminales en aulas de portátiles.
  • Tareas para sevidores de terminales en aulas con thinclients.
  • Tareas para el servidor freeradius.
  • Tareas para un equipo de pruebas.


# Cualquier regla debe estar comprendida entre las llaves
# Para poner reglas a los servidores de aula con squeeze de los IES con la imagen de junio de 2012
# class clase-especifica-squeeze { }, nunca fuera.

class clase-especifica-squeeze {
file {"/tmp/fichero.test12_ltsp":
ensure => present, owner => root, group => root
}

include "add-repositorio-local"
include "instala-iceweasel-backports"
include "instala-iceweasel-backports-chroot"
include "instala-java-1_7"
include "gnome-mandatory-squeeze"
include "adm_avisos"
include "administracion2"
include "add-opciones-arranque-terminal"


case $hostname {
a01-pro,a02-pro,a03-pro,a08-pro,a09-pro: { include "tareas-aulas-portatiles" }
a04-pro,a05-pro,a06-pro,a07-pro,a10-pro,a11-pro,a12-pro,a13-pro,a14-pro,a15-pro,a16-pro,a17-pro,a18-pro,a19-pro,a20-pro,a21-pro: { include "tareas-aulas-terminales" }
a22-pro: { include "tareas-servidor-freeradius" }


default: { }
}

if $hostname == "a01-pro" {
# include "tarea-en-pruebas"
  }
}

Las tareas para aulas de portátiles las incluimos dentro de un fichero .pp:

# cat /etc/puppet/manifests/classes/tareas-aulas-portatiles.pp

class tareas-aulas-portatiles {
   # include "tarea-para-aulas-de-terminales"
}



Las tareas para aulas de thinclients las incluimos dentro de un fichero .pp:

# cat /etc/puppet/manifests/classes/tareas-aulas-terminales.pp

class tareas-aulas-terminales {
   # include "tarea-para-aulas-de-terminales"
}


Las tareas para el servidor freeradius las incluimos dentro de un fichero .pp:

# cat /etc/puppet/manifests/classes/tareas-servidor-freeradius.pp

class tareas-servidor-freeradius {
   # include "tarea-para-servidor-freeradius"
}


Las tareas para el servidor de terminales de pruebas las coloco directamente dentro del if:

if $hostname == "a01-pro" {
# include "tarea-en-pruebas"
}

Polkit: Modificar políticas para permitir al usuario apagar o reiniciar desde gnome

Algún compañero comentó que en los equipos workstation con Debian Squeeze el usuario no podía reiniciar o apagar el sistema porque el botón de apagado de la barra de tareas le aparecía desactivado. 

Lo mejor para solucionar este problema es crear un fichero dentro de  /etc/polkit-1/localauthority/50-local.d/  en el que definamos las políticas a  aplicar. Por ejemplo, yo he creado un fichero llamado 50-consolekit.pkla dentro de dicho directorio con el siguiente contenido para permitir reiniciar o apagar el sistema desde Gnome a usuarios del grupo profesor: 

# cat /etc/polkit-1/localauthority/50-local.d/50-consolekit.pkla


[Restart]
Identity=unix-group:teachers
Action=org.freedesktop.consolekit.system.restart
ResultAny=no
ResultInactive=yes
ResultActive=yes

[Shutdown]
Identity=unix-group:teachers
Action=org.freedesktop.consolekit.system.stop
ResultAny=no
ResultInactive=yes
ResultActive=yes

Si queremos que cualquier usuario pueda apagar y reiniciar el sistema, no tendríamos más que cambiar:
Identity=unix-group:teachers por Identity=unix-user:*

# cat /etc/polkit-1/localauthority/50-local.d/50-consolekit.pkla


[Restart]
Identity=unix-user:*
Action=org.freedesktop.consolekit.system.restart
ResultAny=no
ResultInactive=yes
ResultActive=yes

[Shutdown]
Identity=unix-user:*
Action=org.freedesktop.consolekit.system.stop
ResultAny=no
ResultInactive=yes
ResultActive=yes


Es recomendable hacerlo así, en lugar de editar el fichero /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy, para evitar que al actualizarse polkit se pierdan nuestros ajustes.

14 nov 2012

Puppet: Clase especifica-miniportatil-2011

Algunos compañeros me han preguntado cómo tenía definida la clase específica de puppet para portátiles para distinguir entre portátiles de alumnos y portátiles de profesores. Bien, pues lo muestro a continuación:


# Cualquier regla debe estar comprendida entre las llaves
# para poner reglas a los miniportatiles entregados en 2011 en los IES (apd)
# class especifica-miniportatil-2011 { }, nunca fuera.

class especifica-miniportatil-2011 {
file {"/tmp/fichero.test11":
ensure => present, owner => root, group => root
}

# aquí las reglas

include "politicas-networkmanager"
include "disable-warning-puppetmasterd"
include "instala-flash"
include "instala-firefox"
include "instala-java-1_7"
include "cambia-root-password"
include "add-repositorio-local"

case $use {
"portatil-profesor-2011": {
include "backupHomeUser"
include "instala-dropbox"
}
"portatil-alumno-2011": {
# include "tarea-especifica-alumnos"
}
default: { }
}

if $hostname == "cobaya" {
# include "tareas-en-pruebas"
# include "apt"
}

Como se puede ver, de este modo, dependiendo de donde coloque una nueva regla, se aplicará:
  • A todos los portátiles, si coloco el include "tarea" justo antes de la sentencia case.
  • A portátiles de profesores, si coloco el include en el caso de que la variable facter $use = "portatil-profesor-2011".
  • A portátiles de alumnos, si coloco el include en el caso de que la variable facter $use = "portatil-alumno-2011"
 Decir que en mi centro, tengo todos los portátiles clonados con la misma imagen, por lo que tan sólo tengo que definir tareas para portátiles en la clase "especifica-miniportatil-2011"

13 nov 2012

rsync para hacer una copia de ext3 a fat32

Normalmente uso rsync entre sistemas de archivos ext3 o ext4 con las opciones -av ( -av es lo mismo que -rlptgoD):
  • -r: recursivo.
  • -l: copiar enlaces simbólicos como enlaces simbólicos.
  • -p: preservar permisos.
  • -t: preservar tiempos (fechas/horas).
  • -g: preservar grupos.
  • -o: preservar el propietario.
  • -D: dispositivos.
Para hacer un rsync entre un directorio de un sistema de archivos ext3 y un sistema de archivos fat32, podemos utilizar las siguientes opciones:

# rsync -rtv /directorio/original   /directorio/destino

  • -r: recursivo.
  • -t: preservar tiempos (fechas/horas).
  • -v: modo verbose.

Ballerinas de conejo

Creo que la mayoría ya conoce mi debilidad por los zapatos con caras de animalitos (ballerina ratón, gatito,  etc) , y hoy una de mis amigas me comento sobre Le Bunny Bleu.
Son unas ballerinas super sencillas pero con la carita de un conejo, y de todas maneras entra en mi lista de próximos tutoriales! 


Ya saben que también me pueden seguir por Facebook / twitter y ver los avances de tutoriales e imágenes bonitas!

11 nov 2012

Generar archivo de fuentes sources.list para Ubuntu

Al igual que podemos crear el contenido del sources.list para una distribución Debian (http://repogen.simplylinux.ch/index.php), también podemos generar un sources.list para Ubuntu, recorriendo a Ubuntu Sources List Generator (http://repogen.simplylinux.ch/index.php):

Si entramos en la web de Ubuntu Sources List Generator, veremos que podemos añadir una gran cantidad de repositorios. Lo que se muestra en pantalla es tan sólo una captura de una parte.

Generar archivo de fuentes sources.list para Debian

A veces es complicado recordar cuál es la lista de repositorios que tenemos que añadir una Debian que estamos instalando. En este caso podemos recurrir a Debian Sources List Generator (http://debgen.simplylinux.ch/), una aplicación web que nos generará la lista de repositorios que seleccionemos:



Además de los repositorios oficiales de Debian, podremos añadir otra serie de repositorios extra que en este sitio tienen en lista.

Montar BackTrack en un dispositivo usb formateado en FAT32

BackTrack es una distribución linux live que nos va a permitir testear la seguridad de nuestros sistemas. Dispone de un instalador, por lo que podemos probarla desde CD y, si nos gusta, instalarla en disco duro.

No obstante, hoy en día, dado que el precio de los pendrives es reducido, nos merece también la pena montar backtrack en un usb para lograr una mayor agilidad en la ejecución y poder llevar con nosotros la distribución en un bolsillo, lista para utilizar en otra máquina que no sea la que usamos habitualmente.

El modo más sencillo de instalar BackTrack en un pendrive es mediante UnetBootIn. Y esto es lo que vamos a ver a continuación.

Si no tenemos instalado UnetBootIn en nuestro Debian, lo instalamos:

# apt-get update && apt-get install unetbootin

A continuación, descargamos la iso desde la web oficial: http://www.backtrack-linux.org/

Una vez descargada, introducimos el pendrive que tenemos formateado en FAT32 en nuestro equipo y arrancamos unetbootin.

Puede que nos pida la contraseña de administrador:


Si es así, la introducimos.

Nos aparecerá una ventana como la siguiente:


Marcamos la opción DiscoImagen, dejamos seleccionado "ISO" y pulsamos en el botón con los puntos suspensivos que hay a continuación para seleccionar la iso de BackTrack:



En la parte inferior, dejamos seleccionado "Unidad USB"  y, en "Unidad:" elegimos la unidad USB donde queremos instalar BackTrack. Tened cuidado si tenéis conectado otro dispositivo USB, más que nada para no instalarlo en el dispositivo que no queramos.

Tardará un poquito. Una vez que termine el proceso, unetbootin nos preguntará si queremos reiniciar o salir. Elegimos salir, puesto que estamos instalando en el pendrive y no necesitamos reiniciar.

Es importante recordar que el proceso de instalación no borra nada de lo que tengamos guardado en el pendrive, y que, la ventaja de este método es que, al estar formateado en FAT32, podemos seguir utilizando el pendrive para almacenar nuestros archivos y poder disponer de ellos tanto en linux como en windows.

10 nov 2012

Aretes de Planta Carnivora de Mario Bros

Hace tiempo hice un post con imágenes de las cosas que me gustaría hacer, ahí estaba la planta carnívora de Mario Bros como arete ♥, hace unas semanas la hice y la use :D los que me siguen por Facebook / twitter / Instagram  seguro ya vieron como quedo.

Me gusto mucho el resultado, lo hice con arcilla (polymer clay) y lo tenía que hornear, pero estoy pensando hacer el tutorial con unas masitas que encontré aquí y no es necesario hornearlas!

Estas son las fotos de los aretes que hice de la planta carnívora de Mario Bros:










Me encanta como han quedado las fotos, muchas gracias Arturo!

Aquí estoy usando el arete :D, gracias Cyn de Bestrawberry por la foto.

Ya saben que también me pueden seguir por Facebook / twitter / Instagram y ver los avances de tutoriales e imágenes bonitas!

Modificados los módulos puppet instala-firefox, instala-java-1_7 e instala-flash

He modificado los módulos puppet instala-firefox, instala-java-1_7 e instala-flash. Los encontraréis en el directorio tareas_puppet (https://www.box.com/s/lj0r9zhs4n4ckl5rxila) de mi cuenta de box.net.

Es importante que los descarguéis de nuevo, si los estáis utilizando en aulas de portátiles con conexión wifi. En aulas con clientes cableados no he detectado ningún problema.

La versión anterior tenía el inconveniente de que no limitaba el consumo de ancho de banda en la descarga de archivos de wget. Como consecuencia, cuando varios portátiles ejecutaban alguna de estas tareas a la vez y comenzaban a descargarse los archivos, algunos de ellos no se descargaban completamente y alguna de las tareas fallaba.

8 nov 2012

Crear un mirror local con apt-mirror

En los centros ya tenemos un mirror de debian squeeze creado con una herramienta llamada debmirror. 

apt-mirror es otra excelente herramienta para crear mirrors de repositorios.

Aprovechando que acabo de crear un mirror de ubuntu para los ciclos de informática, vamos a ver cómo hacerlo usando apt-mirror.

apt-mirror maneja los siguientes ficheros de configuración y directorios:
  •  /etc/apt/mirror.list: Es el principal fichero de configuración.
  • /etc/cron.d/apt-mirror: Es una plantilla de configuración de cron para lanzar apt-mirror de forma programada
  • /var/spool/apt-mirror/mirror: Es el directorio donde se guardará el mirror.
  • /var/spool/apt-mirror/skel: Es un directorio para almacenar temporalmente los índices descargados.
  • /var/spool/apt-mirror/var: Es un directorio donde se guardan los logs, urls y hashes md5.
Primero instalamos apache2 (si no lo tenemos instalado ya) para servir los paquetes del mirror:

# apt-get install apache2

A continuación instalamos el paquete apt-mirror:

# apt-get install apt-mirror

Una vez instalados los paquetes, hacemos una copia del fichero de configuración principal, para recurrir a él, si fuera necesario:

# cp /etc/apt/mirror.list /etc/apt/mirror.list.orig

Y editamos el fichero:

# nano /etc/apt/mirror.list


###################### config ######################
#
# set base_path    /var/spool/apt-mirror
#
# set mirror_path  $base_path/mirror
# set skel_path    $base_path/skel
# set var_path     $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch 
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads     20
set _tilde 0
################### end config ######################


############## Repositorios amd64 #####################

###### Ubuntu Main Repos
deb-amd64 http://es.archive.ubuntu.com/ubuntu/ quantal main restricted universe multiverse

###### Ubuntu Update Repos
deb-amd64 http://es.archive.ubuntu.com/ubuntu/ quantal-security main restricted universe multiverse
deb-amd64 http://es.archive.ubuntu.com/ubuntu/ quantal-updates main restricted universe multiverse

###### Ubuntu Proposed Repos
deb-amd64 http://es.archive.ubuntu.com/ubuntu/ quantal-proposed main restricted universe multiverse

###### Ubuntu Backports Repos
deb-amd64 http://es.archive.ubuntu.com/ubuntu/ quantal-backports main restricted universe multiverse

############### Repositorios i386 ##################### 


###### Ubuntu Main Repos
deb-i386 http://es.archive.ubuntu.com/ubuntu/ quantal main restricted universe multiverse

###### Ubuntu Update Repos
deb-i386 http://es.archive.ubuntu.com/ubuntu/ quantal-security main restricted universe multiverse
deb-i386 http://es.archive.ubuntu.com/ubuntu/ quantal-updates main restricted universe multiverse

###### Ubuntu Proposed Repos
deb-i386 http://es.archive.ubuntu.com/ubuntu/ quantal-proposed main restricted universe multiverse

###### Ubuntu Backports Repos
deb-i386 http://es.archive.ubuntu.com/ubuntu/ quantal-backports main restricted universe multiverse



clean http://es.archive.ubuntu.com/ubuntu/


Como podéis ver, en la sección de configuración, todos los parámetros de ubicación de ficheros están comentados. No los he "descomentado" porque quiero que se almacenen en la ubicación por defecto.

Tampoco he tocado la opción set defaultarch que nos permite indicar la arquitectura de paquetes por defecto. Por ejemplo:

# set defaultarch amd64

En cambio, como se puede apreciar en el fichero de configuración, estoy creando específicamente el repositorio con:
  • paquetes de 64 bits: deb-amd64  
  • y paquetes de 32 bits: deb-i386
Por último, en el fichero de configuración veréis la siguiente línea:

clean http://es.archive.ubuntu.com/ubuntu/

Esta línea le dice a apt-mirror en qué directorios del disco duro local debería chequear para ver si se puede liberar espacio en disco.

Con ésto, como se puede ver en el archivo de configuración, voy a crear los siguientes mirrors:
  • quantal
  • quantal-backports
  • quantal-proposed
  • quantal-security
  • quantal-updates
 Y aquí es donde quedarán almacenados los archivos:

/var/spool/apt-mirror/mirror/
 └── es.archive.ubuntu.com
        └── ubuntu
                 ├── dists
                 │     ├── quantal
                 │     ├── quantal-backports
                 │     ├── quantal-proposed
                 │     ├── quantal-security
                 │     ├── quantal-updates
                 │    
                 ├── pool
                 │     ├── main
                 │     ├── restricted
                 │     ├── universe
                 │     ├── multiverse

Bien, pues una vez que ya tenemos los repositorios en /var/spool/apt-mirror/mirror, vamos a crear un enlace en /var/www para que los paquetes del repositorio sean servidos por apache:

# cd /var/www
# ln -s /var/spool/apt-mirror/mirror/es.archive.ubuntu.com/ubuntu/  ubuntu

Una vez que tengamos el enlace creado, el siguiente paso será editar el fichero /etc/cron.d/apt-mirror y modificar la hora de puesta en marcha de la creación del mirror:

# /etc/cron.d/apt-mirror
# Regular cron jobs for the apt-mirror package
#
30 21    * * *    apt-mirror    /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log


Por otra parte, crearemos un fichero cron para matar la tarea anterior a cierta hora:

# /etc/cron.d/apt-mirror-die
# Kill the apt-mirror
#
45 7    * * *    apt-mirror    killall -9 apt-mirror


Y eso es todo. Cuando lleguen las 21:20 comenzará la creación del mirror y terminará a las 7:45 de la mañana del día siguiente.

Por último, tan sólo me queda mencionar cómo usar los repositorios en el fichero /etc/apt/sources.list:

deb http://mirror-ubuntu/ubuntu quantal main restricted universe multiverse
deb http://mirror-ubuntu/ubuntu quantal-backports main restricted universe multiverse
deb http://mirror-ubuntu/ubuntu quantal-proposed main restricted universe multiverse
deb http://mirror-ubuntu/ubuntu quantal-security main restricted universe multiverse
deb http://mirror-ubuntu/ubuntu quantal-updates main restricted universe multiverse

Módulo puppet para agregar el repositorio deb-multimedia a los clientes

Aquí dejo un módulo que añade el repositorio deb-multimedia a los clientes:

https://www.box.com/s/3ueeasvkef61fjsr65kk

El módulo añade el repositorio junto con la clave pública del mismo.

Este repositorio lo conocíamos antes como debian-multimedia. Tuvieron que cambiarlo de nombre a deb-multimedia a petición de Debian.


4 nov 2012

Spray neón



Desde que me compre el spray neón no dejo de usarlo hice dos posts como el  tubo porta pinceles y el anillo corazón , ahora les mostrare como queda una cadena pintada con spray.

Materiales:

  • Cualquier cadena que quieran pintar.
  • Spray neón.
Yo elegí una cadena que uso como pulsera.
El spray neón color naranja.


Le pase dos capas a cada lado, con la segunda capa ya es para emparejar y que agarre mejor el color.

Espere como 5 horas para que este bien seco, intente pintar el ganchito, pero al final preferí dejarlo dorado, porque se complica mas para abrir y cerrar.

Cuando la pintura ya estaba completamente seca, le pase una capa de barniz para que dure más.

Al final queda así.
Y se ha vuelto mi preferida :)

Ya saben que también me pueden seguir por Facebook / twitter y ver los avances de tutoriales e imágenes bonitas!