¿Historia cÃclica?
2008-03-24 11:17:35-06
Polaca
Siempre he creído que la historia no es cíclica, se supone que vamos evolucionando y no tendría por qué serlo.
Personalmente me gusta mucho ver las caricaturas de José Hernández, puedes ver con cierto humor la "involución" del país. Lo que se me hace más triste, es ver que sus caricaturas tengan validez nuevamente. Por ejemplo en este momento, esta caricatura:


Esta caricatura la realizó José Hernández en Marzo de 1994 (cuando aún estaba en Milenio). Y vuelve a tener validez con un PRD que de un lado una Nueva Izquierda siendo simplemente "chuchos falderos" de un gobierno espurio, y brindándole favores para que termine haciendo lo que tantos gobiernos han intentado, una "Izquierda Moderna" que tiene el oficio más antiguo del mundo. Y de otro lado un candidato a la presidencia del partido que espera un resultado posiblemente a favor, pero que por esperarlo está dando más armas a los medios oficialistas para un ataque a un movimiento cívico y social en defensa del petróleo. Y aunque no soy militante de ningún partido (ni quiero serlo) no se puede evitar ver todas las pendejadas que hacen.
Permalink: http://www.mononeurona.org/users/entry/thot/1209
Python Challenge
2008-03-22 16:33:00-06
Programacion
¿Te gustan los acertijos? ¿Te gusta programar?
Si la respuesta es "Sí" a las 2 preguntas entonces esta página es para tí.
Si la respuesta es "Sí" a las 2 preguntas entonces esta página es para tí.
http://www.pythonchallenge.com/
Al ir resolviendo los acertijos de cada nivel, podrás aprender algunas características de Python, además de poner a trabajar un poco las neuronas, que a veces están haciéndose mensas.
Permalink: http://www.mononeurona.org/users/entry/thot/1208
Problemas libdjvu21 en Debian SID
2008-03-22 11:50:17-06
Software Libre
Ayer hubo un problema de dependencias en Debian Sid, que tengo en mi máquina, y pues uno confiado en el manejador de paquetes, pues si la hacía de tos, pues dejaba que se compusiera solo en la siguiente actualización. Desgraciadamente, el error hizo que no pudiera leer los PDF y pensé "Esas sí son chingaderas!".
Para empezar al hacer el upgrade para los paquetes necesarios aparecia algo como lo siguiente:
The following packages were automatically installed and are no longer required:
libdjvulibre15
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
libdjvulibre21
The following NEW packages will be installed:
libdjvulibre21
0 upgraded, 1 newly installed, 0 to remove and 11 not upgraded.
87 not fully installed or removed.
Need to get 0B/778kB of archives.
After this operation, 2220kB of additional disk space will be used.
Do you want to continue [Y/n]?
(Reading database ... 95664 files and directories currently installed.)
Unpacking libdjvulibre21 (from .../libdjvulibre21_3.5.20-5_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/libdjvulibre21_3.5.20-5_i386.deb (--unpack):
trying to overwrite `/usr/share/djvu/osi/cs/messages.xml', which is also in package libdjvulibre15
Errors were encountered while processing:
/var/cache/apt/archives/libdjvulibre21_3.5.20-5_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Que lo que quiere decir es que el libdjvulibre15 la estaba haciendo de pedo porque no deja instalar libdjvulibre21.
Para eso intenté primero resolver "a mano" las dependencias con el "asistonto" que tiene el aptitude. Pero nada. Traté de purgar los paquetes de libdjvulibre15 (con el aptitude) pero tampoco funcionaba porque trataba de terminar de configurar todo.
La solución que encontré fue esta. (Ya que el bug ya había sido reportado).
1. Purgar el paquete con dpkg (no con aptitude)
# dpkg -P libdjvulibre15
2. Ahora sí, forzar a que se termine la instalación.
# apt-get -f install
Para empezar al hacer el upgrade para los paquetes necesarios aparecia algo como lo siguiente:
The following packages were automatically installed and are no longer required:
libdjvulibre15
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
libdjvulibre21
The following NEW packages will be installed:
libdjvulibre21
0 upgraded, 1 newly installed, 0 to remove and 11 not upgraded.
87 not fully installed or removed.
Need to get 0B/778kB of archives.
After this operation, 2220kB of additional disk space will be used.
Do you want to continue [Y/n]?
(Reading database ... 95664 files and directories currently installed.)
Unpacking libdjvulibre21 (from .../libdjvulibre21_3.5.20-5_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/libdjvulibre21_3.5.20-5_i386.deb (--unpack):
trying to overwrite `/usr/share/djvu/osi/cs/messages.xml', which is also in package libdjvulibre15
Errors were encountered while processing:
/var/cache/apt/archives/libdjvulibre21_3.5.20-5_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Que lo que quiere decir es que el libdjvulibre15 la estaba haciendo de pedo porque no deja instalar libdjvulibre21.
Para eso intenté primero resolver "a mano" las dependencias con el "asistonto" que tiene el aptitude. Pero nada. Traté de purgar los paquetes de libdjvulibre15 (con el aptitude) pero tampoco funcionaba porque trataba de terminar de configurar todo.
La solución que encontré fue esta. (Ya que el bug ya había sido reportado).
1. Purgar el paquete con dpkg (no con aptitude)
# dpkg -P libdjvulibre15
2. Ahora sí, forzar a que se termine la instalación.
# apt-get -f install
Permalink: http://www.mononeurona.org/users/entry/thot/1207
Comando útiles (II) - pg_dump
2008-03-19 20:19:47-06
Software Libre
Para continuar con los posts de "comandos útiles" pues aquí pongo este, que aunque no es un comando de linux (estrictamente hablando), es un módulo del postgres, puede ayudar bastante.
pg_dump
El comando pg_dump nos permitirá realizar respaldos de una Base de Datos en Postgresql. Esta es una referencia rápida de lo que podemos hacer con pg_dump, para mayor información consultar el manual.
Para empezar la forma más simple para respaldar una base de datos en un archivo.
$ pg_dump MYDB > mydb.sql
En este caso la base de datos a respaldar se llama MYDB y el archivo donde lo vamos a guardar se llama mydb.sql. Es importante resaltar que ese comando manda a la salida estándar (a menos que se especifique otra cosa en los parámetros) la salida del comando, en este caso la pantalla. Con el símbolo ">" lo que especificamos es que la salida de ese comando la dirija al archivo mydb.sql.
Normalmente a las bases de datos les damos un usuario específico para su uso (específico para postgres) por lo tanto para especificar el propietario de la base de datos, se hace de la siguiente forma:
$ pg_dump MYDB -U user1 -W > mydb.sql
Con el comando anterior hacemos lo mismo que el primero, con la única diferencia que le especificamos que el propietario de la base de datos es "user1" y tiene contraseña (para eso es la W).
Muchas veces también tendremos que agregar el modificador "-h " para especificar el lugar donde se encuentra la base de datos. Como en el siguiente ejemplo que le especificamos que está en la máquina local.
$ pg_dump MYDB -h localhost -U user1 -W > mydb.sql
Otro ejemplo puede ser especificar otro host
$ pg_dump MYDB -h 192.168.1.26 -U user1 -W > mydb.sql
También algo que podría ser útil sería obtener simplemente el "esquema" de la base de datos (la estructura), sin los datos que contiene, para eso se usa el modificador -s,
$ pg_dump MYDB -h 192.168.1.26 -s -U user1 -W > mydb.sql
Con esto lo único que queda en mydb.sql es la estructura de la base de datos.
Combinando esto con el scp, que vimos en la entrega anterior ;). Podríamos pasar la base de datos de un servidor a otro.
Para recuperar el respaldo que hicimos simplemente hacemos lo siguiente:
$ psql MYNEWDB < mydb.sql
Si tenemos un usuario propietario de esa base de datos.
$ psql MYNEWDB -u user2 -W < mydb.sql
Como se puede suponer con "<" le estamos diciendo que el contenido de mydb.sql lo redireccione a la entrada estándar de postgres. Para que ejecute todos los comandos que contiene el archivo.
Para mayor información:
$ man pg_dump
Y listo!.
pg_dump
El comando pg_dump nos permitirá realizar respaldos de una Base de Datos en Postgresql. Esta es una referencia rápida de lo que podemos hacer con pg_dump, para mayor información consultar el manual.
Para empezar la forma más simple para respaldar una base de datos en un archivo.
$ pg_dump MYDB > mydb.sql
En este caso la base de datos a respaldar se llama MYDB y el archivo donde lo vamos a guardar se llama mydb.sql. Es importante resaltar que ese comando manda a la salida estándar (a menos que se especifique otra cosa en los parámetros) la salida del comando, en este caso la pantalla. Con el símbolo ">" lo que especificamos es que la salida de ese comando la dirija al archivo mydb.sql.
Normalmente a las bases de datos les damos un usuario específico para su uso (específico para postgres) por lo tanto para especificar el propietario de la base de datos, se hace de la siguiente forma:
$ pg_dump MYDB -U user1 -W > mydb.sql
Con el comando anterior hacemos lo mismo que el primero, con la única diferencia que le especificamos que el propietario de la base de datos es "user1" y tiene contraseña (para eso es la W).
Muchas veces también tendremos que agregar el modificador "-h " para especificar el lugar donde se encuentra la base de datos. Como en el siguiente ejemplo que le especificamos que está en la máquina local.
$ pg_dump MYDB -h localhost -U user1 -W > mydb.sql
Otro ejemplo puede ser especificar otro host
$ pg_dump MYDB -h 192.168.1.26 -U user1 -W > mydb.sql
También algo que podría ser útil sería obtener simplemente el "esquema" de la base de datos (la estructura), sin los datos que contiene, para eso se usa el modificador -s,
$ pg_dump MYDB -h 192.168.1.26 -s -U user1 -W > mydb.sql
Con esto lo único que queda en mydb.sql es la estructura de la base de datos.
Combinando esto con el scp, que vimos en la entrega anterior ;). Podríamos pasar la base de datos de un servidor a otro.
Para recuperar el respaldo que hicimos simplemente hacemos lo siguiente:
$ psql MYNEWDB < mydb.sql
Si tenemos un usuario propietario de esa base de datos.
$ psql MYNEWDB -u user2 -W < mydb.sql
Como se puede suponer con "<" le estamos diciendo que el contenido de mydb.sql lo redireccione a la entrada estándar de postgres. Para que ejecute todos los comandos que contiene el archivo.
Para mayor información:
$ man pg_dump
Y listo!.
Permalink: http://www.mononeurona.org/users/entry/thot/1202
Navegar libremente con SOCKS v5
2008-03-03 17:33:49-06
Otros
Muy rara vez en ciertas empresas (chapadas a la antigua) tienden a limitar tu acceso a internet. Todavía más raro, es que restringen el acceso a ciertas página de ocio (como youtube) o tienen un filtrado de palabras (para palabras como sexo, messenger, etc.). Todo esto es totalmente ficticio y sucede muy rara vez en México. Pero podría ser útil conocer cómo poder navegar libremente por la red, sin necesidad de pasar por el servidor principal.
(Nótese que traté de ser sarcástico).
Si en dado caso, tuvieras ese tipo de restricciones. Podrás navegar (aunque un poco más lento) libremente si cuentas con lo siguiente:
- Que el servidor que te limita por lo menos te deje algún puerto abierto. Por ejemplo: 8081.
- Que tengas cuenta en algún servidor que no esté restringido.
En primera, tendrás que conectarte al servidor donde tengas cuenta por medio de ssh, de la siguiente forma:
~$ ssh -D 8081 thot@servidorsote.com
Donde -D es para que te abra un puerto Socks V5, el 8081 es el puerto que tienes libre para salir de tu red. En este caso, el usuario es "thot" y el servidor donde se supone tendría acceso sería "servidorsote.com".
Ahora lo que tenemos que hacer es configurar el Firefox.
En el menú: Edit -> Preferences, en la pestaña Network, en el botón Settings.
Se marca la opción: "Manual proxy configuration:"
En la opción, quedaría:
SOCKS Host: localhost Port: 8081
Y se marca la opción SOCKS v5
Ahora tratas de acceder a tus páginas de "ocio" y listo!. Podrás navegar sin problemas.
(Nótese que traté de ser sarcástico).
Si en dado caso, tuvieras ese tipo de restricciones. Podrás navegar (aunque un poco más lento) libremente si cuentas con lo siguiente:
- Que el servidor que te limita por lo menos te deje algún puerto abierto. Por ejemplo: 8081.
- Que tengas cuenta en algún servidor que no esté restringido.
En primera, tendrás que conectarte al servidor donde tengas cuenta por medio de ssh, de la siguiente forma:
~$ ssh -D 8081 thot@servidorsote.com
Donde -D es para que te abra un puerto Socks V5, el 8081 es el puerto que tienes libre para salir de tu red. En este caso, el usuario es "thot" y el servidor donde se supone tendría acceso sería "servidorsote.com".
Ahora lo que tenemos que hacer es configurar el Firefox.
En el menú: Edit -> Preferences, en la pestaña Network, en el botón Settings.
Se marca la opción: "Manual proxy configuration:"
En la opción, quedaría:
SOCKS Host: localhost Port: 8081
Y se marca la opción SOCKS v5

Permalink: http://www.mononeurona.org/users/entry/thot/1179
Comandos útiles (I) - scp
2008-03-03 12:20:59-06
Software Libre
Ha decidido comenzar una serie de posts. Para aquellos usuarios de Linux que no usan tanto la consola, con ciertos comandos que podrían ser útiles.
Un comando que a mi punto de vista puede resultar muy útil es el siguiente:
scp
El comando scp nos permite copiar archivos entres 2 computadoras, usando el protocolo SSH.
La sintaxis es la siguiente:
scp [opciones] usuarioorigen@hostorigen:rutaorigen usuariodestino@hostdestino:rutadestino
Por ejemplo: Tenemos en /home/thot un archivo llamado texto.txt, supongo que tengo una cuenta en mononeurona.org y pues lo quiero enviar a mi directorio home a una carpeta llamada archivos. La instrucción sería la siguiente:
~$ scp texto.txt thot@mononeurona.org:archivos
El HOME lo toma automáticamente, en otro caso sería ruta absoluta.
Otro puede ser copiar archivos entre 2 servidores. Con diferentes usuarios:
~$ scp usuario1@servidor1:/ruta/absoluta/1.txt usuario2@servidor2:/ruta/absoluta/2.txt
Le pueden agregar opciones como -r para que copie recursivamente (útil cuando se quieren copiar carpetas completas). -p cuando se tiene que especificar otro puerto de conexión a ssh.
Nota, es importante tener activado el servidor ssh, por lo menos en el destino en caso de que se copie un archivo local. Y en los 2 en caso de que sea de host remoto a host remoto.
Otra utilidad para esto, es cuando tenemos en una red local 2 máquinas, y queremos que otra persona copie cierta información de nuestra máquina. Lo único que tenemos que hacer es activar el servidor ssh. (En debian/ubuntu basta un: aptitude install ssh-server). Y después crear una cuenta de usuario para que pueda acceder, en la máquina local:
adduser nombreusuario
Y listo con esa información podemos permitir la copia de archivos por medio de ssh.adduser nombreusuario
Permalink: http://www.mononeurona.org/users/entry/thot/1178
La información prostituida.
2008-03-01 18:59:15-06
Mi pensar
Como ya había mencionado anteriormente en este pobre blog, ver "Tercer Grado", ese nefasto programa, ya me había causado asco. No sé como la gente se puede tragar toda la mierda que pasan ahí llamándola "crítica periodística".
Si algo he aprendido al tratar con personas como las del proyecto "Revolucionemos Oaxaca", es que como reporteras(os) o periodístas que se deben a su profesión, hay ciertos principios que deben seguir. Como ya lo mencionaría Ryszard Kapunscinski : "Los cínicos no sirve para este oficio" (refiríendose al buen periodismo).
Pero me impresiona que muchos "reporteros" no sean más que prostitutas (con todo el perdón de las prostitutas, pero no se me ocurrió otro término) que venda su ética (y no sé cuantas cosas más) a cambio de dinero. Ponen el dinero, la permanencia en su trabajo (supongo bien pagado en los medios oficiales, no así en los medios independientes) antes que sus principios y valores, que suponiendo que son personas que tienen la gran responsabilidad de informar a la gente, deberían tenerlos "bien puestos" .
¿Y a qué va todo esto (que ya se sabe desde hace tiempo)? Que por desgracia en una noticia que vi por los lectores RSS de google. Me encontré con esta opinión de Ciro Gómez Leyva. Una opinión simple y falta de crítica, donde trata de desviar la atención del problema real que es la venta descarada y asquerosa de PEMEX, diciendo que Mouriño cayó en el juego de Andrés Manuel López Obrador. Como si la venta de PEMEX fuera un "juego de política". Como si no tuviera relevancia alguna que la Familia Mouriño se esté cogiendo al país por medio de contratos millonarios con los energéticos. ¿Qué pasa con los "periodístas"? ¿No ven la situación del país? ¿Les vale madre?, de todos modos pedirle a los "chalanes" de Mouriño que dicten sentencia en su contra es ridículo, ¿No debería hacer un crítica a eso? ¿También se creyó toda la mierda sobre el "Peligro para México"?
Como ya había mencionado Federico Arreola en una entrevista con Julio Hernández (en Astillero TV), sobre Ciro Gómez Leyva. Que antes era un "loco" pasaba las noticias sin importar lo que pasara, pero como bien mencionaría Arreola, "antes no tenían nada que proteger" y ahora este "periodista" tiene su espacio en televisión, en radio, etc.
Con esto no estoy diciendo que sean "proAMLO", me refiero a que sean justos y críticos.Cómo pueden poner su "satanización ridícula" antes que proveer una visión crítica y razonable de la situación tan jodida que vivimos en la país.
Si algo he aprendido al tratar con personas como las del proyecto "Revolucionemos Oaxaca", es que como reporteras(os) o periodístas que se deben a su profesión, hay ciertos principios que deben seguir. Como ya lo mencionaría Ryszard Kapunscinski : "Los cínicos no sirve para este oficio" (refiríendose al buen periodismo).
Pero me impresiona que muchos "reporteros" no sean más que prostitutas (con todo el perdón de las prostitutas, pero no se me ocurrió otro término) que venda su ética (y no sé cuantas cosas más) a cambio de dinero. Ponen el dinero, la permanencia en su trabajo (supongo bien pagado en los medios oficiales, no así en los medios independientes) antes que sus principios y valores, que suponiendo que son personas que tienen la gran responsabilidad de informar a la gente, deberían tenerlos "bien puestos" .
¿Y a qué va todo esto (que ya se sabe desde hace tiempo)? Que por desgracia en una noticia que vi por los lectores RSS de google. Me encontré con esta opinión de Ciro Gómez Leyva. Una opinión simple y falta de crítica, donde trata de desviar la atención del problema real que es la venta descarada y asquerosa de PEMEX, diciendo que Mouriño cayó en el juego de Andrés Manuel López Obrador. Como si la venta de PEMEX fuera un "juego de política". Como si no tuviera relevancia alguna que la Familia Mouriño se esté cogiendo al país por medio de contratos millonarios con los energéticos. ¿Qué pasa con los "periodístas"? ¿No ven la situación del país? ¿Les vale madre?, de todos modos pedirle a los "chalanes" de Mouriño que dicten sentencia en su contra es ridículo, ¿No debería hacer un crítica a eso? ¿También se creyó toda la mierda sobre el "Peligro para México"?
Como ya había mencionado Federico Arreola en una entrevista con Julio Hernández (en Astillero TV), sobre Ciro Gómez Leyva. Que antes era un "loco" pasaba las noticias sin importar lo que pasara, pero como bien mencionaría Arreola, "antes no tenían nada que proteger" y ahora este "periodista" tiene su espacio en televisión, en radio, etc.
Con esto no estoy diciendo que sean "proAMLO", me refiero a que sean justos y críticos.Cómo pueden poner su "satanización ridícula" antes que proveer una visión crítica y razonable de la situación tan jodida que vivimos en la país.
Permalink: http://www.mononeurona.org/users/entry/thot/1173
Bug en kernel te da privilegios de root
2008-02-12 20:19:37-06
Software Libre
Se descubrió una vulnerabilidad bastante grave en el kernel según que es desde el 2.6.X al 2.6.24. El cual con ejecutar un exploit permite a un usuario normal tomar privilegios de root.
Aunque no es necesario es mi deber mencionar que ejecutar un exploit tiene sus riesgos y si lo ejecutas debe ser bajo tu responsabilidad y en tu propio sistema. (Hay que tener ética).
Para esto, hay 2 variantes (1, 2) del exploit, la ejecución es muy simple:
Si tienes el código fuente descargado, lo puedes guardar en un archivo llamado prueba.c, lo compilas simplemente con esto:
thot@%%%%:~$ gcc prueba.c -o prueba
-- Con eso tendrán un ejecutable llamado prueba
thot@%%%%:~$ whoami
thot
thot@%%%%:~$ ./prueba
-----------------------------------
Linux vmsplice Local Root Exploit
By qaaz
-----------------------------------
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7dee000 .. 0xb7e20000
[+] root
root@%%%%:~# whoami
root
Ese es el resultado. Lo he probado en varias máquinas y el resultado no es muy alentador.
Lo he probado con kernel 2.6.15-r1 en gentoo, pero no tiene esa vulnerabilidad. Dice que no tiene la función vmsplice. (que es por donde funciona el exploit), seguramente fue desactivado cuando se compiló el kernel.
Con kernel 2.6.18-3 en Debian el exploit funciona
Lo probé en mi PC compilada (manualmente) con 2.6.24 y el exploit funciona.
Lo probé en mi laptop con el Debian 2.6.24-1 y ahí el exploit no funcionó.
Aquí el parche del kernel (5 líneas de código que solucionan el problema).
Vía kriptópolis
Aunque no es necesario es mi deber mencionar que ejecutar un exploit tiene sus riesgos y si lo ejecutas debe ser bajo tu responsabilidad y en tu propio sistema. (Hay que tener ética).
Para esto, hay 2 variantes (1, 2) del exploit, la ejecución es muy simple:
Si tienes el código fuente descargado, lo puedes guardar en un archivo llamado prueba.c, lo compilas simplemente con esto:
thot@%%%%:~$ gcc prueba.c -o prueba
-- Con eso tendrán un ejecutable llamado prueba
thot@%%%%:~$ whoami
thot
thot@%%%%:~$ ./prueba
-----------------------------------
Linux vmsplice Local Root Exploit
By qaaz
-----------------------------------
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7dee000 .. 0xb7e20000
[+] root
root@%%%%:~# whoami
root
Ese es el resultado. Lo he probado en varias máquinas y el resultado no es muy alentador.
Lo he probado con kernel 2.6.15-r1 en gentoo, pero no tiene esa vulnerabilidad. Dice que no tiene la función vmsplice. (que es por donde funciona el exploit), seguramente fue desactivado cuando se compiló el kernel.
Con kernel 2.6.18-3 en Debian el exploit funciona
Lo probé en mi PC compilada (manualmente) con 2.6.24 y el exploit funciona.
Lo probé en mi laptop con el Debian 2.6.24-1 y ahí el exploit no funcionó.
Aquí el parche del kernel (5 líneas de código que solucionan el problema).
Vía kriptópolis
Permalink: http://www.mononeurona.org/users/entry/thot/1131
Compilando Kernel 2.6.x
2008-01-31 23:38:35-06
Software Libre
Desde cuando tenía ganas de tratar de compilar el nuevo kernel de linux, pero no había tenido tiempo. Ahora que en mi chamba me asignaron una máquina decidí ponerle Debian (testing) y pues nada más por hacerla de pedo pues me puse a compilarle el nuevo kernel 2.6.24.
Algo importante antes de compilar el kernel es tener las herramientas para hacerlo. Para eso tenemos un paquete en Debian / Ubuntu que se llama build-essential. Con esto ya podremos compilar nuestro kernel sin problemas.
Para empezar tenemos que descargarlo. (Todo lo hice como root, pero eso no es necesario).
Entramos al directorio temporal donde guardaremos el kernel descargado. Y descargamos el kernel.
# cd /tmp
# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.tar.bz2
Ahora lo descomprimimos, para eso usaremos el comando tar. Y esto lo pondremos en /usr/src. Y nos cambiamos al directorio donde tenemos el código fuente.
# tar -xjvf linux-2.6.24.tar.bz2 /usr/src
#cd /usr/src/linux-2.6.24
Ahora empezamos a configurar las opciones que deseamos que tenga el kernel. Para eso podremos usar muchas formas.
# make menuconfig
Esto nos permitirá una interfaz en modo texto para configurar las opciones del kernel. Es muy intuitiva.
# make xconfig
Esto nos brindará una interfaz gráfica con Qt y por lo tanto trabajará mejor en KDE.
# make gconfig
Interfaz gráfica en GTK, trabajará mejor en Gnome.
# make config
Este es la configuración en texto, no tiene menús intuitivos como menuconfig, simplemente hará preguntas y se podrá contestar con Y,N,M o ?, la opción Y es si el kernel soportará esa opción, N es si no la soportará, M es si se quiere tener esa opción como módulo del kernel y ? es para más información.
# make oldconfig
Esta configuración tomará la configuración del kernel anterior y solamente preguntará por las opciónes que el otro kernel no contaba.
Cada quién puede decidir la que más le convenga, yo usé "config" únicamente. Esto permite una mayor personalización.
Ahora sí, a compilar!, para esto simplemente utilizamos
# make
Ahora compilamos los módulos
# make modules
Ahora instalamos los módulos.
# make modules_install
Ahora instalamos el kernel
# make install
Después de esto deberíamos tener algunos archivos en el directorio /boot:
Ahora nos movemos al directorio /boot y creamos la imagen. Algo importante en Debian han quitado la herramienta mkinitrd, ahora se deberá utilizar mkinitramfs. Para mayor información de este comando consultar el manual.
# cd /boot
# mkinitramfs -o initrd.img-2.6.24 2.6.24
Ahora modificamos el grub para que bootee con nuestro nuevo kernel. Se puede usar el editor de su preferencia.
# emacs /boot/grub/menu.lst
Agregamos lo siguiente:
title Debian GNU/Linux kernel 2.6.24
root (hd0,0)
kernel /boot/vmlinuz-2.6.24 root=/dev/hdb1 ro
initrd /boot/initrd.img-2.6.24
savedefault
Y ahora sí a reiniciar.
# reboot
Ahora quisiera agregar algunas notas extras. De lo que me encontré en el camino.
Algo importante antes de compilar el kernel es tener las herramientas para hacerlo. Para eso tenemos un paquete en Debian / Ubuntu que se llama build-essential. Con esto ya podremos compilar nuestro kernel sin problemas.
Para empezar tenemos que descargarlo. (Todo lo hice como root, pero eso no es necesario).
Entramos al directorio temporal donde guardaremos el kernel descargado. Y descargamos el kernel.
# cd /tmp
# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.tar.bz2
Ahora lo descomprimimos, para eso usaremos el comando tar. Y esto lo pondremos en /usr/src. Y nos cambiamos al directorio donde tenemos el código fuente.
# tar -xjvf linux-2.6.24.tar.bz2 /usr/src
#cd /usr/src/linux-2.6.24
Ahora empezamos a configurar las opciones que deseamos que tenga el kernel. Para eso podremos usar muchas formas.
# make menuconfig
Esto nos permitirá una interfaz en modo texto para configurar las opciones del kernel. Es muy intuitiva.
# make xconfig
Esto nos brindará una interfaz gráfica con Qt y por lo tanto trabajará mejor en KDE.
# make gconfig
Interfaz gráfica en GTK, trabajará mejor en Gnome.
# make config
Este es la configuración en texto, no tiene menús intuitivos como menuconfig, simplemente hará preguntas y se podrá contestar con Y,N,M o ?, la opción Y es si el kernel soportará esa opción, N es si no la soportará, M es si se quiere tener esa opción como módulo del kernel y ? es para más información.
# make oldconfig
Esta configuración tomará la configuración del kernel anterior y solamente preguntará por las opciónes que el otro kernel no contaba.
Cada quién puede decidir la que más le convenga, yo usé "config" únicamente. Esto permite una mayor personalización.
Ahora sí, a compilar!, para esto simplemente utilizamos
# make
Ahora compilamos los módulos
# make modules
Ahora instalamos los módulos.
# make modules_install
Ahora instalamos el kernel
# make install
Después de esto deberíamos tener algunos archivos en el directorio /boot:
- System.map-2.6.24
- config-2.6.24
- vmlinuz-2.6.24
Ahora nos movemos al directorio /boot y creamos la imagen. Algo importante en Debian han quitado la herramienta mkinitrd, ahora se deberá utilizar mkinitramfs. Para mayor información de este comando consultar el manual.
# cd /boot
# mkinitramfs -o initrd.img-2.6.24 2.6.24
Ahora modificamos el grub para que bootee con nuestro nuevo kernel. Se puede usar el editor de su preferencia.
# emacs /boot/grub/menu.lst
Agregamos lo siguiente:
title Debian GNU/Linux kernel 2.6.24
root (hd0,0)
kernel /boot/vmlinuz-2.6.24 root=/dev/hdb1 ro
initrd /boot/initrd.img-2.6.24
savedefault
Y ahora sí a reiniciar.
# reboot
Ahora quisiera agregar algunas notas extras. De lo que me encontré en el camino.
- En primera, pues saber que el pinche paquete mkinitrd ya no existía, pues tuve que andar googleando y pues viendo el manual para hacer lo mismo que hace mkinitrd con mkinitramfs. Pero pues bueno al final :P era lo mismo.
- Leer bien las características que se van a activar para el kernel, y checar bien que tiene su máquina. En mi caso, yo no sabía las características de la computadora que estaba usando. Eso es muy importante, :P porque me hizo compilar 4 veces :P. Porque en este caso el disco duro lo tomaba como un dispositivo scsi, y pues bueno, tuve varios kernel panic por ahí, al no haber activado el soporte para scsi :P. Pero que pues lo bueno es que se pueden reparar.
- Si sale algún error, no hay que asustarse :P. Normalmente tiene solución si uno se pone a pensar que madres es. Por ejemplo en mi caso me cambiaba el nombre de las particiones con respecto al kernel anterior, y pues hubo que configurar el /etc/fstab. Y bueno, uno que otro detallito sin mucha importancia.
- Si no sabes ni que hacer en cierto momento o tienes algún problema, hay que buscar en la red y trata de solucionarlo. La cosa es aprender, eso es lo más importante.
Permalink: http://www.mononeurona.org/users/entry/thot/1090
Microsoft Debe Controlar "One Laptop Per Child"
2008-01-10 22:42:31-06
Software Libre
Con respecto al famoso "dual-boot" en el OLPC, Bruce Perens, ha escrito una nota, acerca de esto. Esta es una traducción un poco burda del mismo. Disculpen los errores de traducción. (La nota original en inglés aquí).
Es una amenaza que Microsoft no puede dejar en pie: Todo el tercer mundo aprendiendo Linux desde niños, y que se desarrollan usándolo. Y Microsoft quiere seguir este camino.
Esto llega después de una repentina ola de problemas al estilo SCO para el proyecto OLPC. Un escándaloso pleito sobre patentes sobre teclados. Un miembro del equipo Intel expulsado de el proyecto por tratar de convencer a los gobiernos de dejar las compras de OLPC y tomar su propio producto (con Windows). En primer lugar, OLPC es la muestra de los problemas que suceden si no coopera con Microsoft. Entonces, Microsoft se acerca con dinero y ayuda técnica - Solo tienes que ejecutar Windows para obtenerlo.
El movimiento es presentado como "permitiendo la elección". Esto inicia con una capacidad de "booteo" dual proporcionada por los ingenieros de Microsoft. No porque cualquier trabajo de Microsoft fuera realmente necesario, firmware de código abierto que bootea sistemas operativos de Microsoft ha existido desde hace 10 años. Microsoft dijo que ellos publicarán indicaciones, y iniciarán pruebas de campo este mes. Booteo dual suena inofensivo, pero la versión de "opción" de Microsoft queda mejor indicada por : "Nosotros te daremos a elegir y entonces haremos que tú elijas Microsoft". Estoy seguro que habrá presiones en los gobiernos nacionales seleccionar que únicamente cargue Windows al comprar OLPC, o especificar textos protegidos con DRM de Windows para su uso en el aula.
Nadie puede fingir que el que el mundo nunca se ha abstenido de la opción de ejecutar software de Microsoft, o que Microsoft debe trabajar con OLPC para aumentar las opciones. Los sistemas operativos de Microsoft son la único opción ofrecida por la inmensa mayoría de computadoras de escritorio y servidores. Por negarse a tolerar hardware que ejecuta algún otro sistema operativo por defecto, Microsoft está trabajando para reducir las opciones.
Considere cuan bueno podría haber sido para el tercer mundo tener una infraestructura informática que pudiera apoyar por su cuetna, sin ninguna fuga de capital o tecnología para los Estados Unidos. Esto es lo que ellos perderán. Sin embargo esto nunca fue el objetivo de el proyecto OLPC. Esto sería como brindar e-Books gratuitos a los estudiantes, a un bajo costo que sus gobiernos nacionales pueden sostener. Con OLPC basado completamente Software Libre, esto sería como si todos estos libros hubieran sido puestos bajo una una licencia similar a Creative Content. Ahora, es como si estos estudiantes del tercer mundo van a ejecutar libros de texto bloqueados con DRM que solo será accesible bajo Windows.
Nicolás Negroponte siempre ha estado dispuesto a ir para donde sopla el viento: Los prototipos originales ejecutaban Debian, destacable porque es producida para beneficio público y sin fines de lucro. Solo Red Hat ofreció dinero y recursos, Debian desapareció del sistema. Ahora es el turno de desaparecer de Red Hat.
La gente a las que les tengo más compasión son aquellos estudiantes a quienes se les habría ofrecido un camino para tomar el control de su propio destino, y hacer a sus naciones autosuficientes en la infraestructura en tecnologías de información que necesitan para participar en el mercado mundial. Ahora ellos recibirán menos. Pero también siento compación por los muchos desarrolladores Open Source quienes participaron en el OLPC, y ahora verán su trabajo desechado o corrupto por apoyar Microsoft.
Bruce Perens
Esto llega después de una repentina ola de problemas al estilo SCO para el proyecto OLPC. Un escándaloso pleito sobre patentes sobre teclados. Un miembro del equipo Intel expulsado de el proyecto por tratar de convencer a los gobiernos de dejar las compras de OLPC y tomar su propio producto (con Windows). En primer lugar, OLPC es la muestra de los problemas que suceden si no coopera con Microsoft. Entonces, Microsoft se acerca con dinero y ayuda técnica - Solo tienes que ejecutar Windows para obtenerlo.
El movimiento es presentado como "permitiendo la elección". Esto inicia con una capacidad de "booteo" dual proporcionada por los ingenieros de Microsoft. No porque cualquier trabajo de Microsoft fuera realmente necesario, firmware de código abierto que bootea sistemas operativos de Microsoft ha existido desde hace 10 años. Microsoft dijo que ellos publicarán indicaciones, y iniciarán pruebas de campo este mes. Booteo dual suena inofensivo, pero la versión de "opción" de Microsoft queda mejor indicada por : "Nosotros te daremos a elegir y entonces haremos que tú elijas Microsoft". Estoy seguro que habrá presiones en los gobiernos nacionales seleccionar que únicamente cargue Windows al comprar OLPC, o especificar textos protegidos con DRM de Windows para su uso en el aula.
Nadie puede fingir que el que el mundo nunca se ha abstenido de la opción de ejecutar software de Microsoft, o que Microsoft debe trabajar con OLPC para aumentar las opciones. Los sistemas operativos de Microsoft son la único opción ofrecida por la inmensa mayoría de computadoras de escritorio y servidores. Por negarse a tolerar hardware que ejecuta algún otro sistema operativo por defecto, Microsoft está trabajando para reducir las opciones.
Considere cuan bueno podría haber sido para el tercer mundo tener una infraestructura informática que pudiera apoyar por su cuetna, sin ninguna fuga de capital o tecnología para los Estados Unidos. Esto es lo que ellos perderán. Sin embargo esto nunca fue el objetivo de el proyecto OLPC. Esto sería como brindar e-Books gratuitos a los estudiantes, a un bajo costo que sus gobiernos nacionales pueden sostener. Con OLPC basado completamente Software Libre, esto sería como si todos estos libros hubieran sido puestos bajo una una licencia similar a Creative Content. Ahora, es como si estos estudiantes del tercer mundo van a ejecutar libros de texto bloqueados con DRM que solo será accesible bajo Windows.
Nicolás Negroponte siempre ha estado dispuesto a ir para donde sopla el viento: Los prototipos originales ejecutaban Debian, destacable porque es producida para beneficio público y sin fines de lucro. Solo Red Hat ofreció dinero y recursos, Debian desapareció del sistema. Ahora es el turno de desaparecer de Red Hat.
La gente a las que les tengo más compasión son aquellos estudiantes a quienes se les habría ofrecido un camino para tomar el control de su propio destino, y hacer a sus naciones autosuficientes en la infraestructura en tecnologías de información que necesitan para participar en el mercado mundial. Ahora ellos recibirán menos. Pero también siento compación por los muchos desarrolladores Open Source quienes participaron en el OLPC, y ahora verán su trabajo desechado o corrupto por apoyar Microsoft.
Bruce Perens
Permalink: http://www.mononeurona.org/users/entry/thot/1045










