Tag Archive: debian


Ayer al mediodía estaba yo pensando en cambiar a ext4 todas las particiones del disco duro de mi PC (por el momento uso ext3). Ya lo había hecho con la partición /home pero quería hacer lo mismo con /boot y con / para acelerar la carga del sistema, y la carga, instalación y actualización de aplicaciones. Lo difícil del asunto es que para poder arrancar con un sistema de ficheros ext4 necesito utilizar grub2 ya que el gestor de arranque grub no soporta ext4.

Bueno, ¿Qué hice?, pues ni corto ni perezoso hice un aptitude install grub2 . ¿Resultado? Al reiniciar se cargaba el gestor de arranque (grub2) pero ninguna de las entradas del menú funcionaba. Todas ellas me daban un código de error 11 (no me hagáis recordar qué texto aparecía ahora…).

Ahora viene cuando uno tiene que solucionar la cagada que ha hecho (tardé mucho más de lo que tardaréis vosotros si seguís mi consejo, pues probé muuchas cosas.. ). Lo primero es disponer de una LiveCD con GNU/Linux, el cd de instalación de Ubuntu, o una knoppix pueden ir bien. Arrancamos el cd y abrimos un terminal.

Una vez hemos abierto el terminal nos logueamos como root , se puede hacer con el comando su, el comando sudo -s y el comando sudo bash … ¿quien da más? ¿conocéis más formas (no valen formas excesivamente rocambolescas) ? Ahora viene la secuencia importante de comandos (Primeramente prepararemos un entorno para acceder al sistema instalado, y luego desde allí operaremos)

  • cd /media
  • mkdir rescate
  • mount /dev/sdaX rescate (donde X es el número de partición donde tenemos montado normalmente el directorio / , hay que tener en cuenta que yo pongo sda porque uso discos SATA , pero si usais el típico ATA , muchos lo conocéis por IDE, debéis usar hda)
  • mount --bind /dev /media/rescate/dev
  • mount --bind /proc /media/rescate /proc
  • chroot /media/rescate (Aquí cambiamos el directorio raíz de trabajo.. ahora hemos ingresado en el sistema que tenemos instalado, pero al tanto, todavía no tenemos la partición /boot cargada.. )
  • mount -t ext3 /dev/sdaX /boot (Éste paso sólo es necesario si el directorio /boot lo teníamos en otra partición , como antes, X indica el número de la partición en la que están los ficheros de /boot y podría ser que usárais hda en vez de sda)
  • cd /boot
  • mv grub grub.old
  • aptitude purge grub2 (Nos deshacemos del grub2 que tanto nos ha molestado)
  • aptitude install grub (Volvemos con nuestro viejo “amigo”)
  • grub-install /dev/sda (otra vez, podría ser /dev/hda , ésto puede que tarde un poco, es probable que os salga algun error relacionado con /dev/pty .. no pasa naaada, simplemente no ha podido crear un log de las operaciones)
  • update-grub (esto volverá a generar el directorio grub en /boot y la lista de sistemas operativos y núcleos en el fichero menu.lst)
  • Ahora solo nos queda reiniciar y disfrutar nuevamente de nuestro grub totalmente funcional… un consejo, borrad el directorio /boot/grub.old si os funciona todo, ocupa espacio innecesario, antes lo he dejado por si mi solución no os funciona.

Espero que si alguien tiene mi mismo problema ésto le pueda servir :)   , un saludo.

Que le den por saco a Debian

Buenas, hace bastante tiempo que no escribo nada… y la verdad, en este tiempo he estado haciendo muchas cosas, jeje, tengo mucho sobre que escribir.

Empecé a trabajar en Newcomputing Netservices el día 15 de Julio, estuve casi unos 15 días de pruebas y cuando me íban a contratar, les tuve que decir que no me interesaba por cuestiones personales (y porque tenía una carga de trabajo que no me gustó nada, tenía que llevarme el trabajo a casa :S ). El caso es que durante esos días me tuve que esforzar bastante y aprendí muchas cosas.

Justo después de dejar la empresa me fuí a trabajar de becario en la UAB en un proyecto de Mitsubishi, y aquí estoy todavía. La verdad es que no mandan mucho trabajo, y nos pasamos casi una hora en el bar cada mañana (en teoría yo tengo que trabajar 4 horas diarias), pero aún así intento aprovechar el tiempo.

Actualmente estoy haciendo una LFS (Linux From Scratch) en una pequeña partición de mi máquina de trabajo, es interesante ver como contruir un sistema GNU/Linux desde cero, y supongo que ayuda a entender los entresijos de su funcionamiento :p . Por otro lado, mientras dejo compilando las piezas del sistema me entretengo leyendo artículos, libros o lo que me pase por las manos. Así que bueno, he tenido tiempo para hacer bastantes cosas:

  • mejorar la cutrada del oggtube (he hecho que no requiera Qt, por si alguien no quiere utilizar la interfície gráfica)
  • Hacer una aplicación de seguimiento para mi portátil, en caso de robo, si el ladrón fuese lo suficientemente imbécil como para conectar mi portátil a Internet antes de borrar todo su contenido, ése dejaría un aviso en una aplicación que he hecho en ésta misma página. Le quedan bastantes detalles para que sea una aplicación realmente útil, pero bueno, iré haciendo algo, y ya os colgaré el código. (He aprendido a hacer daemons con esto)
  • Estoy haciendo un pequeño compilador para un lenguaje cutrillo, estoy siguiendo diversos tutoriales combinados con mi imaginación, de momento es capaz de generar código ensamblador para x86 y para x86_64… aunque no tiene mucho mérito, jeje, ¡solo reconoce 4 órdenes, xD!
  • Mandar a tomar por saco Debian (a cambio, he instalado Ubuntu), que es lo que daba nombre a éste artículo. Me encanta trastear con los detalles técnicos de la máquina, solventar pequeños errorcillos de vez en cuando, eso a uno le sube la moral… pero ya estaba harto de tener que retocar tantas cosas para cada tontería… pero sobre todo, de lo que me he hartado es de KDE. Le he cogido manía, sólo se salvan: Amarok, Yakuake, Kate, K3b, Katapult, KDevelop y KOrganizer (aunque yo no lo utilizo). El caso es que K3b lo he cambiado por Brasero, que va muy bién, Katapult lo he cambiado por Gnome-do, que va mucho mejor, y bueno, Yakuake lo cambiaré cuando Guake sea lo suficientemente estable, además, KDevelop no lo utilizo casi nunca y KOrganizer tampoco, definitivamente me he convertido a usuario de Gnome, que és mucho más bonito, aunque sea más pesado. (No he mencionado Konqueror ni Dolphin, porque aunque tienen una cosa que me gusta mucho, las pestañas o la Split View, pronto se hará lo mismo con Nautilus). Por otro lado, en Gnome hay utilidades muy, pero que muy interesantes, como F-Spot o Tracker, que aún no tienen rival claro en KDE.
  • He aprendido cosillas bastante interesantes sobre virtualización de entornos, sobre todo por lo del LFS, que también lo quiero provar en mi máquina, pero también por un proyecto que me mandaron en Newcomputing.
  • He renovado mis conocimientos sobre PHP, MySQL, y he aprendido bastante sobre las GTK y PHP-GTK, en parte por un proyecto que me mandaron en Newcomputing, en parte por experimentos propios…

Muchas cosas, jeje, tengo que liberar bastantes piezas de código, aunque primero creo que las tengo que pulir para que no den pena, jeje, son más interesantes por el hecho de que introducen conceptos (para los novatillos, entre los que me encuentro) y por que hay pocas utilidades libres con esos usos que por su calidad.

Añado que me he columpiado bastante en la organización del concurso de programación GNUAB, y a partir de mañana me pondré a hacer todo el trabajo atrasado que tengo… Quiron me va a matar!

P.D.: ¡Fedora es una mierda! Por otra cosa no será… pero.. ¿porque no reconoce ya la gente de Red Hat que apt, aptitude, dpkg y deb (aunque sean mejorables) son clarament superiores a yum, y rpm?

ACTUALIZACIÓN: Éste tutorial és… inútil, xD (salvo si se quieren aprender algunas cosillas interesantes), la solución a los problemas que menciono és más sencilla que la expuesta en este tutorial, simplemente se tiene que instalar el paquete kmilo (o alguno que contenga el programa, dependiendo de qué distribución de Linux uséis).

Hará un tiempo mi portátil funcionaba bajo Debian Testing con KDE, en su momento lo configuré tan bien como pude y todo funcionaba de maravilla… hasta que el hardware se empezó a estropear (lo que le llevó a la muerte hará pocas semanas). Después de morir mi portátil fue transportado al cielo de los portátiles, junto con su Creador (HP) , allí se le dio una segunda oportunidad por haber sido tan bueno… y a los tres días resucitó.

El caso es que volvió a mis manos infectado con Windows (se lo contagiaron los otros ordenadores que no merecieron volver a la vida y todavía hoy permanecen en el purgatorio). A la semana conseguí curarlo con Debian Testing (KDE) pero parecía que algo no iba bién, seguía un poco acatarrado.

Por lo visto (no sé bien bien porqué) con la versión actual Testing de Debian han dejado de funcionar bien muchas cosas que antes iban como la seda: el sistema de sonido, y como no, el teclado (de ahí el título del artículo). Antes, configurar el teclado sólo consistía en tocar cuatro tonterías en los paneles de configuración de KDE (me parece que ya posteé hace tiempo sobre como hacerlo de esa manera). Ahora no es tan sencillo, y tenemos que currar un poco más (al menos en mi modelo HP Pavillion dv2104 eu).
Iremos por pasos (nota, todo lo que ponga con comillas, vosotros ponedlo SIN comillas):

  1. Aplicamos el primer mini-tutorial (en mi caso todo funciona, pero Kmix no reconoce las teclas Mute, Subir Volumen y Bajar Volum, de ahí que esté haciendo este segundo mini-tutorial).
  2. (Suponiendo que estamos en KDE) Vamos a Preferencias->Regional i accesibilidad->Introducir acciones.
  3. Ahora crearemos una acción para Mute: Apretamos el botón ‘Nueva acción’.
  4. En el campo ‘Nombre de la acción’ ponemos lo que queramos (aunque estaría bien un nombre identificativo, por ejemplo ‘Mute’).
  5. En el campo ‘Tipo de la acción’ escogemos la opción ‘Acceso rápido de teclado -> Llamada a DCOP (simple)’.
  6. Vamos a la pestaña ‘Acceso rápido de teclado’. Allí seleccionamos el botón que hay en medio y apretamos el botón especial Mute. (Esto sirve para indicar al programa con qué tecla asociaremos la acción).
  7. Vamos a la pestaña ‘Preferencias de llamada a DCOP’. Rellenenamos el campo ‘Aplicación remota’ con el valor ‘kmix’. Rellanamos el campo ‘Objeto remoto’ con el valor ‘Mixer0′ (Hasta este paso todo se hace igual para Mute, Subir Volumen y Bajar Volumen, excepto con los nombres y las teclas asociadas, claro).
  8. Para Mute el campo ‘Función llamada’ tomará el valor ‘toggleMasterMute’. Para Subir Volumen el mismo campo tomará el valor ‘increaseVolume’ y para Bajar Volumen ‘decreaseVolume’.
  9. El campo ‘Argumentos’ no tomará ningún valor para Mute. Para Subir y Bajar Volumen tendremos que asegurarnos de cual es el valor apropiado. Ejecutamos en consola la siguiente instrucción para saberlo (la salida que nos dé será el número que queremos):
    dcop kmix Mixer0 masterDeviceIndex
  10. Apretamos el botón ‘Aplicar’ y ya estamos :) .
  11. Para casos superespeciales (no me ha pasado): cabe destacar que yo he utilizado Mixer0 a la ligera como ‘Objeto remoto’, pero ¿No podría haber Mixer1? Creo que sí, pero no debe ser muy usual. En todo caso nos podemos asegurar ejecutando el comando (Nos dará una lista de los valores aceptables para ese campo):
    dcop kmix | grep Mixer

Espero que haya sido útil éste mini-tutorial. De hecho, creo que introduce también la idea de utilizar dcop para nuestros propios pequeños programas. Sin duda es una muy buena herramienta para intercomunicar programas.

Ala, hasta otra! :)

youtube-dl : desfasado

Hará unos meses (hacia principios de este curso) un amigo mío encontró por casualidad (o no) un conjunto de utilidades libres que permitían bajar vídeos de http://www.youtube.com y transformarlos al formato abierto ogg . Las susodichas utilidades eran youtube-dl y ffmpeg2theora.

Poco después desarrolló un pequeño script bash que automatizaba el proceso y facilitaba la vida a todos aquellos que querían ver vídeos de youtube manteniendo su “pureza” pro-software libre. Yo lo modifiqué añadiendo dos pijadas poco importante y pasándolo a Python para entretenerme un poco (y lo llamé freetube).

El caso es que la utilidad youtube-dl se ha quedado en los repositorios de la versión estable etch de Debian, pero no ha pasado a lenny (eso me ha extrañado). Por eso mismo me he bajado el paquete manualmente y he podido comprobar como el mismo programa me dice que no puede bajar los vídeos y que es posible que la API de Youtube haya cambiado ligeramente, con lo que ya no funciona correctamente… En estos casos me sabe mal no saber suficiente programación en Python y estas APIs para poder solucionar yo mismo el problema.

Powered by WordPress | Theme: Motion by 85ideas.