Moviendo la carpeta /boot a una partición independiente

26 05 2008

Hola
Como prometí anteriormente, les voy a explicar como mover la carpeta /boot a una partición independiente.

El primer paso, es obviamente crear una nueva partición, para eso verificamos el tamaño ocupado por la carpeta /boot, para eso podemos usar el comando “sudo du /boot” el cual nos devolverá el tamaño de la carpeta en kilobytes. En mi caso, la carpeta pesa unos 20000 KB (20 MB), por lo cual decidí hacer una partición de 150 MB, por si en algún momento instalo otros kernels. Para crear la nueva partición, lo que hice fue, con la herramienta de particionado GPARTED, desmonté y reduci una de mis particiones con la función de redimencionado, y en el espacio que quedaba cree una nueva partición con el formato de archivos EXT3, el cual es uno de los más flexibles para nuestro proposito. Cabe aclarar que si solo tienes una partición ocupando todo el disco, necesitarás iniciar con algún LiveCD, ya que la redimensión no puede llevarse a cabo con la unidad montada, es decir, en uso.
Antes de empezar, hay que tener en cuenta varias cosas sobre este tutorial. La primera, que en este caso utilizaremos el gestor de arranque GRUB, el cual es el más utilizado. Además, si eres un novato en Linux, es necesario saber que los discos son representados como archivos en la carpeta /dev, ya sea como hd (discos IDE/ATA) o sd (discos SATA) seguidos de una letra que indica el puerto donde esta conectado físicamente el disco, y luego de un número que indica el número de partición. Por ejemplo, hda1, sda2, hdb3, etc.

Ahora, para que entiendan el ejemplo, supongamos que el disco de la nueva partición es hdaX, donde ‘a’ es el número de disco y ‘X’ el número de partición.

1. – Como primera medida nos logueamos como root con el comando su, para así trabajar más cómodos. El primer paso, será renombrar la carpeta /boot a otro nombre (no borrarla) por si tenemos algún problema podremos recuperarla:

mv /boot /boot_backup

2. – Luego creamos una nueva carpeta /boot:

mkdir /boot

3. – Ahora, debemos montar la partición creada en el directorio /boot:

mount /dev/hdaX /boot

4. – Copiamos el contenido de la carpeta /boot a la nueva partición:

cp -dpR /boot_backup/* /boot

**NOTA** Si queremos que la partición sea montada en cada inicio, debemos seguir el siguiente paso. Aclaro que si no son montadas, correrán menos riesgos de sufrir problemas, por lo cuál, si así lo prefiere, obvie el próximo paso, y si en algún momento requiere acceder a la partición puede usar el comando del paso 3.

5. – Para configurar el montado automático en modo de solo lectura, debemos agregar una línea al fstab. Podemos usar cualquier editor de texto, pero en este ejemplo usaré nano:

nano -w /etc/fstab

Y agregamos esta línea:

/dev/hdaX /boot ext3 ro 0 0

Guardamos los cambios en el archivo (en nano, Ctrl+X) y procedemos a configurar el gestor de arranque.

6. – Para configurar el GRUB, debemos editar el menu.lst dentro de la carpeta /boot/grub. Supongamos que tenemos este archivo de configuración:

title      Distribución de Linux
root       (hd0,0)
kernel     /boot/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd     /boot/initrd.img-2.6.25-2-686

7. – Lo que hacemos es copiarlo, uno seguida del otro, una para el nuevo arranque y otra de backup. Quedaría así:

title      Distribución de Linux
root       (hd0,0)
kernel     /boot/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd     /boot/initrd.img-2.6.25-2-686
#
title      Distribución de Linux
root       (hd0,0)
kernel     /boot/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd     /boot/initrd.img-2.6.25-2-686

8. – Grub, utiliza la nomenclatura hdY,X para los discos, la cual ‘Y’ es el “número de disco-1” y ‘X’ el “número de partición-1“. Es decir, si nuestra nueva partición era hda7, en grub será hd0,6. Lo que hacemos es modificar la partición de la primera copia, y borrar los “/boot”, ya que ahora la ubicación será en el directorio raíz de la partición y no en una subcarpeta. Si el disco fuera hda7, quedaría así:

title      Distribución de Linux
root       (hd0,6)
kernel     /vmlinuz-2.6.25-2-686 root=/dev/hda7 ro noapic nolapic
initrd     /initrd.img-2.6.25-2-686
#
title      Distribución de Linux
root       (hd0,0)
kernel     /boot/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd     /boot/initrd.img-2.6.25-2-686

9. – Ahora toca el turno de modificar la entrada de resguardo, para ello solo cambiamos /boot por /boot_backup, y cambiamos el título para diferenciarla:

title      Distribución de Linux
root       (hd0,6)
kernel     /vmlinuz-2.6.25-2-686 root=/dev/hda7 ro noapic nolapic
initrd     /initrd.img-2.6.25-2-686
#
title      Entrada de seguridad de Distribución de Linux
root       (hd0,0)
kernel     /boot_backup/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd     /boot_backup/initrd.img-2.6.25-2-686

10. – Guardamos los cambios y procedemos a reinstalar el GRUB:

grub-install /dev/hda

**ATENCION** Notese que después de hda no hay ningún número, eso es porque no lo instalamos sobre ninguna partición si no sobre el disco en sí.

11. – Reinicia el equipo, y si hiciste todo al pie de la lista, tendrás una opción más de arranque de lo normal, que corresponde a la configuración de seguridad. Elegimos la opción de inicio de siempre, y si no funciona, elegimos la copia de seguridad. Si inicia normalmente, si quieres y tienes confianza elimina las copias de seguridad (del menu.lst y el /boot_backup).
Como nota final, si configuraste el fstab para que monte el /boot como solo lectura, y quieres escribir en la partición, puedes usar el comando:

sudo mount -o remount,rw /boot

Hasta la próxima…

Salu2

Artículos relacionados:

Anuncios




La importancia del /boot en partición independiente

24 05 2008

Hola a todos

Siguiendo el hilo de mis dichosos problemas con Debian, hoy les quería seguir hablando sobre otros de ellos.

Seguramente si eres usuario de Linux, sabrás que para cargar tu sistema operativo, requieres un bootloader, en español, un gestor de arranque. También habrás visto una carpeta en el directorio raíz llamada “boot”, la cual contiene el gestor de arranque y los kernels (núcleos de sistemas) disponibles para usar, la cual por cuestiones de seguridad, es muy importante que se encuentre en una partición separada de las demás. Antes de seguir, primero vamos a dar un poco de teoría necesaria, sacada de la Wikipedia:

Un cargador de arranque (boot loader en inglés) es un programa sencillo (que no tiene la totalidad de las funcionalidades de un sistema operativo) diseñado exclusivamente para preparar todo lo que necesita el sistema operativo para funcionar. Normalmente se utilizan los cargadores de arranque multietapas, en los que varios programas pequeños se suman los unos a los otros, hasta que el último de ellos carga el sistema operativo.

Este programa contiene funcionalidades rudimentarias para buscar unidades que se puedan seleccionar para participar en el arranque, y cargar un pequeño programa desde una sección especial de la unidad más prometedora. El pequeño programa no es, en sí mismo, un sistema operativo sino, simplemente, un cargador de arranque de segundo nivel, como Lilo o Grub, que es capaz de cargar el sistema operativo propiamente dicho y, finalmente, transferirle el control.

Las distribuciones Linux, han adoptado por defecto el cargador de arranque GRUB, ya que es el más flexible, completo y configurable. Los cargadores generalmente se instalan en la carpeta /boot, en la cual como ya dije, se encuentra todo lo necesario para el arranque.

El problema en Linux, a diferencia que Windows, es que los sistemas de archivos de las particiones, en especial las más modernas como ReiserFS y XFS (las cuales usan el autor de este artículo), tienen diversos sistemas de seguridad que son tan sensibles que detectan todo tipo de fallas en el sistema de archivos (ya sea por causas físicas o no), que por cuestiones de protección, impiden ser montadas, u otro caso muy común, tu sistema ha sido apagado sin desmontar correctamente los volumenes por lo cual puede que tenga errores al remontarla.

Por ejemplo, supongamos que tu máquina por algún extraño motivo cae en un cuelgue total, del cual no puedes salir. Lo que harás, seguramente, será resetear la máquina para volver a iniciar el sistema. En un sistema como Windows o en una distro. Linux con un sistema de archivos EXT2/3, seguramente no tendrás problemas en iniciar, ya que estos son muy flexibles en cuanto a errores provocados por malos apagados.

Pero, si tienes un sistema de archivos como ReiserFS, puede de que recibas un error de tu gestor de arranque, acerca de que no puedes acceder a la información del disco, en el caso del grub, el famoso ERROR 18.

Ahora, ¿a qué se debe este problema con el gestor de arranque? Muy sencillo: cuando instalas un gestor, lo que haces es escribir en el MBR (Master Boot Record) el arrancador del gestor, que lo que hará es buscar en una carpeta previamente configurada (por defecto la carpeta /boot) la información necesaria para saber como iniciar el sistema. El problema, justamente, es que no podrás acceder al disco ya que al apagarse inesperadamente no se ha logrado desmontar correctamente, así que se generarán errores en la partición, por lo tanto tampoco podrás recuperar la información que hay en ella, y el cargador no sabrá como iniciar ningún sistema.

Para evitar este tipo de problema, el mejor método es en primer lugar tener la información del gestor de arranque, es decir la carpeta /boot, en una partición distinta a las que sueles usar, y en segundo proteger el contenido de la partición formateandola con un sistema de archivos flexible a los reinicios, y como última medida montandola con acceso de solo lectura para de esta manera, en el caso de sufrir algun reinicio inesperado, esa partición no sufra problemas, ya que será independiente de los errores de las demás particiones.

Lo mejor para tener esta configuración, es hacerlo cuando instalamos la distribución, es más, muchas distros., como por ejemplo Arch, ya crean por defecto el /boot en otra partición.

Aunque si tu ya has instalado y con buena razón no quieres volverla a instalarla, no te preocupes, todavía es posible mover tu /boot a otra partición, aunque eso lo dejamos para el próximo post 🙂

Salu2

Artículos relacionados:





Debian bueno, Debian malo…

16 05 2008

Hola

Hace un tiempo que ando desconectado del mundo informático, debido a hasta hace poco mi “queridísimo” Debian.

Luego de un largo período de no usar Linux, decidí iniciar una nueva instalación de Arch 2007. Lamentablemente, fue muy poco grata la sorpresa de que los repositorios de esa versión de Arch estaban deshabilitados, por lo que no pude concretar la instalación. Por lo cual, acto seguido recurrí a mi buen porta-cd, le quité el polvo a mi CD de Debian Etch, y comenzé una instalación, y como de costumbre, solo con el sistema base para poder instalar todo manualmente.

Deberá ser la enésima vez que sigo este proceso, realmente me sorprende como me queda un sistema totalmente configurado y personalizado a mi gusto: librerías, programas, fuentes, cursores, navegador de archivo, emulador de consola, administrador de sesión, administrador de ventanas, incluso tengo un theme para Fluxbox hecho por mí para tener todo a gusto. No se puede explicar la comodidad de usar un sistema que en el cual ha sido todo minuciosamente configurado por uno mismo, y realmente, luego de hacerlo tantas veces, tenía la sensación de ser un experto haciendolo, y que cada vez las instalaciones me salían mejor, así que más allá de no pdoer instalar la distro. que quería, no me sentía descontento de volver a Debian, ya que siempre me había andado a la perfección, y con una ligereza y fluidez avasallante.

Todo iva bien: instalé el navegador Links, basasdo en ncurses (para consola), mediante el gestor de paquetes APT, para poder acceder a las páginas en las cuales poder descargar los programas que deseaba. Entre todo eso, se me ocurrió, por qué no, la brillante idea de configurar los repositorios de Debian Lenny, para luego hacer un dist-upgrade, para así disfrutar los últimos paquetes, como la última versión de las librerías GTK, que necesitaría para instalar algunos de los programas que suelo compilar para llevar una vida más comoda y agradable. Por lo cual, con el editor VIM, configuré mi /etc/apt/sources.list de la siguiente manera:

deb http://http.us.debian.org/debian lenny main contrib non-free
deb-src http://http.us.debian.org/debian lenny main contrib non-free

Después de una actualización de la cache de los repositorios, ejecuté un dist-upgrade, y salí a tomar un café mientras terminaba la actualización.

Al terminar, reinicié el equipo, y comenzé con la instalación: como primera medida mrxvt como emulador de consola, el cuál tiene como muy cómoda opción la ejecución por pestañas; el servidor de X Xorg, con los drivers para placas de video ATI; y decidí compilar Fluxbox 1.0 con las optimizaciones para mí micro Prescott, cosa que era la primera vez que hacía. Luego de instalar tonterías como las utilidades de Fluxbox (Fbtools), los drivers de sonido ALSA, el aMSN, rtorrent, screen, etc, terminé de configurar algunos scripts para que todo ande bien, y decidí dar mi instalación por terminada descargando algunos wallpapers para poner en la carpeta de donde se seleccionaría aleatoriamente uno de ellos como fondo de escritorio en cada inicio.

Al día siguiente, como no, comencé a buscar algunos videos en YouTube, relacioneados obviamente, por lo cual abría varios videos en varias pestañas del navegador Iceweasel (la versión de Mozilla Firefox de Debian). Luego fue cuando empezaron mis dolores de cabeza, al ver que todo el sistema empezaba a andar a tirones:

TOP: firefox-bin 95% CPU 😐

Obviamente, todo se debía al plugin de flash, Adobe Flash Player. Intenté descargar el driver desde la págian de adobe, e instalarlo manualmente, pero el resultado era el mismo, es más, daba la impresión que iva todavía más lento, lo cual seguramente era signo de mi paranoia. También probé GNASH, una copia de Flash Player libre, aunque con resultados aún peores. Más allá de eso, dejé atrás lo sucedido, y me hice a la idea de que YouTube solo permitía acceder un video a la vez, para no tener problemas. Pero algo que no podía dejar pasar, es el que los videos que tanto me gusta disfrutar (no malcreídos, no pornos) anduvieran lentos, se trabaron, el sonido se escuchara mal o que no cargaran.

Empezé a revisar todo, y me dí cuenta que el instalador del driver ATI (para mi palca onboard Xpress 200) no instalaba el modulo encargado de la aceleración 3D. Investigé un poco sobre el tema, y me enteré que la última versión del driver no instalaba el módulo en kernels inferiores al 2.6.22, por lo cual, me relajé, e instalé el último kernel de los repositorios de Debian Unstable, 2.6.25, y luego los headers correspondientes, los cuales no me instalaban desde los repositorios, porque necesitaba el paquete kbuilder 2.6.25, que terminé descargando desde Debian Packages pensando que todo iva a ir bien.

Pero mi sorpresa fue más grande aún, al ver no solo que no se instalaba el módulo, si no que no se compilaba. Debido a eso, tuve que iniciar una nueva investigación, para enterarme que el driver no funcionaba con el kernel que tenía, por lo cual me sentí totalmente derrotado…

Pasaron unos días, y ya un poco más tranquilo, encontré esta página, la cual menciona la falla exacta del driver con respecto a esa versión del kernel, y un parche que, gracias al cielo, funcionó y me permitió compilar e instalar el modulo 🙂

Luego, mediante el comando aticonfig –initial, y de modificar un poco manualmente el xorg.conf, añadiendo las extensiones Composite y XVideo, y una que otra cosa más, flash comenzó a andar mejor (aunque no como uno desearía). En cambio, los videos seguían andando mal…

El problema, era básicamente que al usar la gui SMPlayer para MPlayer, no se utilizaban los drivers win32 essential, más allá de que el driver de video y sonido parecía andar mal. Siempre he usado la gui por defecto, GMPlayer, pero el problema estaba en que no podía ver el video en pantalla completa, lo cual fue la primera vez que me pasó. Sinceramente, pensé que SMPlayer era la mejor gui de MPlayer, pero después de darme cuenta del problema, hice una pequeña búsqueda en google para dar como ver los videos en pantalla completa. Finalmente, encontré que solamente había que activar el zoom, colocando una línea zoom=yes en el archivo de configuración de MPlayer.

De igual manera, Firefox y Flash Player tienen sus malos momentos, y VirtualBox parece andar igual que antes. He probado Opera 9.50, el cual sigue tan ligero como siempre, aunque en rendimientos y velocidad sigue siendo mejor Firefox 3.

Al final, me he quedado en Debian, aunque estoy esperando la versión final de Gentoo 2008, a ver que tal me va. En estos días, escribiré algo sobre los programas que uso en esta distro., y pondré también unos tutoriales, así que al que le interesa, esté atento.

Salu2

Artículos relacionados: