Modifica el tamaño de la particion Swap de Ubuntu

Ubuntu

Hace algunos dias me di cuenta que mi Inspiron 640m, en el cual tengo instalado Ubuntu 8.04 Hardy Heron y Windows XP en booteo dual, en ocasiones no hibernaba en Ubuntu y quedaba encendido. Despues de darme el tiempo de observar que era lo que sucedia, me di cuenta que se presentaba un mensaje que duraba apenas unos 5 segundos y que decia…

Not enough free swap

Lo que me llevo a la conclusion que debia aumentar el espacio de mi particion Swap. Sin embargo al intentar realizar esto en Ubuntu con GParted, las particiones que debia modificar estaban montadas y aparecian bloqueadas, la particion EXT3 donde esta instalado Ubuntu y la particion Swap. Al intentar realizar lo mismo en Windows XP con Partition Magic, dichas particiones solo era posible eliminarlas pero no cambiarles el tamaño.

Me parece que esta situacion comenzo a ocurrir cuando le aumente la memoria a mi laptop desde 1 Gb a 2 Gb, sin embargo no me habia dado cuenta. Buscando informacion descubri que el swap debe tener un tamaño igual o mayor a la RAM instalada, y extrañamente en mi instalacion de Ubuntu disponia de un swap de apenas 600 Mb, considerando que mi RAM instalada inicialmente era de 1 Gb. Obviamente con el incremento de RAM la situacion se torno mas critica y comenzaron a aparecer los problemas ya comentados.

Buscando formas de aumentar el swap, encontre informacion muy interesante en el sitio de Ayuda Oficial de Ubuntu con indicaciones de como crear un archivo swap para evitar modificar el tamaño de la particion swap, y agregarlo al swap total.

Sin embargo a pesar que pude crear un archivo swap y aumentar el swap total disponible, estas instrucciones bloquearon la posibilidad de hibernacion de mi equipo en forma completa, y por lo tanto no eran la solucion a mi dilema.

Afortunadamente en Ubuntu existen muchas formas de llegar a Roma, y encontre la aplicacion GParted Live, la cual puede ser montada en un CD, Pendrive USB, Servidor PXE o un Disco Duro, para ser booteada y de esta forma poder modificar el tamaño de la particion Swap de una forma segura.

En mi caso la monte en un pendrive USB de apenas 128 Mb siguiendo unas sencillas instrucciones que encontre tanto en el sitio de GParted como en el sitio Debuntu.


1. Configurando GParted Live en el pendrive USB para el booteo

Primero bajas el ZIP de GParted Live, luego insertas el pendrive en el puerto USB, vacias o formateas el pendrive y descomprimes el contenido del ZIP de GParted en el pendrive, respetando la estructura de los subdirectorios.

Paso seguido necesitas verificar donde esta montado el pendrive USB para luego hacerla booteable. Para esto es necesario el Terminal y escribir lo siguiente…

sudo fdisk -l

Esto te indicara en donde esta montado tu pendrive USB, en mi caso resulto que estaba montado en /dev/sdb1.

Luego necesitamos la aplicacion syslinux para hacer booteable el pendrive, para lo cual es necesario escribir lo siguiente en el Terminal…

syslinux -s /dev/sdb1

Si el sistema nos indica que la aplicacion no esta instalada, basta escribir sudo apt-get install syslinux en el Terminal para instalarla, y luego repetir el comando syslinux -s /dev/sdb1. Con esto mi pendrive USB quedo booteable y basto reiniciar el laptop para poder modificar el tamaño de la particion Swap.

Particiones

2. Modificando la tabla de archivos del sistema (Fstab)

Una vez cambiado el tamaño de la particion Swap y reiniciar mi dispositivo, me di cuenta que el sistema hibernaba normalmente, pero al volver de la hibernacion el sistema iniciaba desde cero y tambien la pantalla de splash de Ubuntu con la barra de progreso durante la carga era reemplazada por una serie comprobaciones en texto que me hicieron recordar las antiguas versiones de Ubuntu. Buscando informacion me di cuenta que faltaba modificar el punto de montado de la particion Swap en la tabla de archivos del sistema (fstab).

Para que quede mas claro, en el fstab, se especifica el UUID, es decir el punto exacto en el disco duro donde comienza la particion que sera montada en nuestro sistema, y al haber modificado el tamaño de la particion Swap, cambia el UUID de dicha particion, lo cual no es modificado automaticamente por el proceso realizado con GParted Live.

Primero es necesario verificar si tenemos instalado initramfs-tools, para lo cual usamos el comando sudo apt-get install initramfs-tools en el Terminal. Si no tenemos instalado dicho paquete, lo instalara, si esta desactualizado, lo actualizara y si esta instalado nos dira que no es necesario actualizarlo. Luego es necesario usar el comando sudo blkid lo cual nos arrojara el nuevo UUID de la particion Swap, que en mi caso es /dev/sda6.

/dev/sda1: SEC_TYPE=”msdos” LABEL=”DellUtility” UUID=”07D6-0A0C” TYPE=”vfat”
/dev/sda2: UUID=”1634268C34266F45″ LABEL=”Zion” TYPE=”ntfs”
/dev/sda3: LABEL=”DellRestore” UUID=”0000-0000″ TYPE=”vfat”
/dev/sda5: UUID=”2fbe2bbd-b825-4ec0-a695-10d0abfb34ac” SEC_TYPE=”ext2″ TYPE=”ext3″
/dev/sda6: TYPE=”swap” UUID=”1768a37d-642d-4bb6-b9c0-a35d15641407″

Luego corresponde modificar el UUID de la particion Swap en el fstab con el comando sudo gedit /etc/fstab, y posteriormente modificar el UUID de la particion Swap en el archivo de configuracion de retorno desde un estado de hibernacion con el comando sudo gedit /etc/initramfs-tools/conf.d/resume. Finalmente es necesario actualizar el sistema con el comando sudo update-initramfs -u y reiniciar.

En mi caso fstab y conf.d/resume quedaron de la siguiente forma:

/etc/fstab

# /etc/fstab: static file system information.
#
# proc /proc proc defaults 0 0
# /dev/sda5
UUID=2fbe2bbd-b825-4ec0-a695-10d0abfb34ac / ext3 defaults,errors=remount-ro 0 1
# /dev/sda6
UUID=1768a37d-642d-4bb6-b9c0-a35d15641407 none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec 0 0

/etc/initramfs-tools/conf.d/resume

RESUME=UUID=1768a37d-642d-4bb6-b9c0-a35d15641407

Con todo esto realizado la hibernacion en Ubuntu volvio a la normalidad, lo cual es un alivio pues puedo apagarlo rapidamente sin perder lo que estoy haciendo en ese instante, y tenerlo disponible la proxima vez que encienda mi laptop.

Simplemente estoy maravillado con Ubuntu, me encanta lo configurable que es y por sobre todo me encanta poder “trastear” con el y dejarlo funcionando tal como yo quiero… Es decir, que funcione perfecto.

Links:

2 Respuestas para “Modifica el tamaño de la particion Swap de Ubuntu”


  1. 1 Henrry Ortiz

    La verdad quiero felicitarte ya que me sirvio mucho, porque los id’s de la particion swap habian cambiado, ya que hice un resize solo y me faltaba algo mas.

    Crear un script /etc/acpi/suspend.d/95-set-image-size.sh, con el siguiente contenido para que cuando empiece a hibernar cambie el tamaño por default que trae Hardy.

    #/bin/bash
    echo 1048576 > /sys/power/image_size

    Y asi todo esta mejor. Gracias.

  2. 2 MrAnderson

    Henrry: Es extraño, pero en mi caso no fue necesario dicho script, solo fue necesario modificar el UUID de la particion swap para que partiera bien e hibernara correctamente. Por lo que estuve leyendo aparentemente eso es necesario cuando uno crea un archivo de swap en vez de modificar la partición de swap. Gracias de todas maneras por el comentario. Saludos.

Deja una respuesta




Valido XHTML 1.0 Transitional Creative Commons