Páginas

martes, 31 de julio de 2012

Alinear particiones linux


Particiones alineadas

Después de ejecutar fdisk -l aparece un mensaje similar a este:

Disk /dev/sda: 640.1 GB, 640135028736 bytes
255 heads, 63 sectors/track, 77825 cylinders, total 1250263728 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 byes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000e1f0

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          63       96388       48163+  83  Linux
Partition 1 does not start on physical sector boundary.
/dev/sda2           96389      594404      249007+  82  Linux Swap
Partition 2 does not start on physical sector boundary.
/dev/sda3          594405    40596254    20000925   83  Linux
Partition 3 does not start on physical sector boundary.
/dev/sda4        40596255  1250263727   604833736+  83  Linux
Partition 4 does not start on physical sector boundary
....

Todos los sectores donde empiezan las particiones deben ser múltiplo de 8. Caso contrario, está mal alieada la partición o particiones.

Fdisk en versiones anteriores de modo predeterminado gestiona los tamaños de las particiones sin alinear al tamaño del sector. Herramientas modernas de particionado utilizan libparted > 2.1 que de forma automática realizan alineamiento compatible 1Mb.

Las nuevas unidades de sectores 4096 bytes

Logical block size: 512 bytes
Physical block size: 4096 bytes

Alinear particiones pasa por reparticionar el disco duro y este proceso es posible realizarlo en Linux sin perder un solo dato. Utilizando un disco externo de 120Gb montado en /media/recuperacion copiar todos los datos de la partición de datos:

# cp -R /media/datos/* /media/recuperacion/

Características:
Disco duro 500 GB 9 particiones distribuidas de la manera siguiente. Las particiones sda8 de datos y sda9 tmp se crearán despues de recuperar el sistema:

$ ls -l /dev/disk/by-label

lrwxrwxrwx 1 root root 10 jul 31 10:12 datos -> ../../sda8
lrwxrwxrwx 1 root root 10 jul 31 10:12 gentoob -> ../../sda1
lrwxrwxrwx 1 root root 10 jul 31 08:10 gentooh -> ../../sda7
lrwxrwxrwx 1 root root 10 jul 31 08:10 gentoor -> ../../sda3
lrwxrwxrwx 1 root root 10 jul 31 08:10 gentoot -> ../../sda9
lrwxrwxrwx 1 root root 10 jul 31 10:12 ubuntuh -> ../../sda6
lrwxrwxrwx 1 root root 10 jul 31 10:12 ubuntur -> ../../sda2

Desde la instalación de gentoo se crean y montan los directorios ubuntur y ubuntuh:
# mkdir /media/ubuntur
# mkdir /media/ubuntuh
# mount -v -t ext3 /dev/sda2 /media/ubuntur
# mount -v -t ext3 /dev/sda6 /media/ubuntuh
# mkdir /media/recuperacion/ubuntu

Entrar en los directorios y realizar los backups:
# cd /media/ubuntur
# tar czvf /media/recuperacion/ubuntu/ubuntu-raiz.tar.gz *
# cd ..
# cd /media/ubuntuh
# tar czvf /media/recuperacion/ubuntu/ubuntu-home.tar.gz *
# cd ..

Al finalizar los backups desmontar las particiones
# umount /media/ubuntuh
# umount /media/ubuntur

Reiniciar y desde la instalación ubuntu realizar los mismos pasos:
Crear directorios y montarlos:
# mkdir /media/gentoob
# mkdir /media/gentoor
# mkdir /media/gentooh
# mount /dev/sda1 /media/gentoob
# mount /dev/sda3 /media/gentoor
# mount /dev/sda7 /media/gentooh
# mkdir /media/recuperacion/gentoo

Realizar los backup
# cd /media/gentoob
# tar czvf /media/recuperacion/gentoo/gentoo-boot.tar.gz *
# cd ..
# cd /media/gentoor
# tar czvf /media/recuperacion/gentoo/gentoo-raiz.tar.gz *
# cd ..
# cd /media/gentooh
# tar czvf /media/recuperacion/gentoo/gentoo-home.tar.gz *

Desmontar particiones
# umount /media/gentoob /media/gentoor /media/gentooh

Realizado el backup de las particiones abrir gparted y copiar el tamaño aproximado de las particiones:

sda1 ext2 97 Mb
sda2 ext3 25 GB
sda3 ext3 25 GB
sda4 extended 415 Gb
sda5 swap 2 GB
sda6 ext3 20 Gb
sda7 ext3 20 Gb
sda8 ext3 200 Gb
sda9 reiserfs 8 Gb
sin asignar 165 Gb

Reiniciar con un livecd, en este caso el livedvd gentoo linux 13.0
Después de la carga del sistema utilizando fdisk particionar el disco. La versión incluida en el mencionado livedvd inicia por defecto desde 2048 bytes. Versiones anteriores empiezan desde 63 bytes en cuyo caso no se acepta el valor por defecto y se sustituye por 64 bytes.

Crear, formatear particiones, hacer sda1 arrancable. Primero eliminar todas las particiones.
# fdisk /dev/sda
Crear las particiones utilizando fdisk
Crear los sistemas de ficheros
Crear e inicializar swap.
# mkswap /dev/sda5
# swapon /dev/sda5


Conmutar el indicador de iniciable.

Abrir un terminal y pasarse a root:
# sudo su

Restaurar particiones:
formatear partición, crear directorios y montarlos
# mkfs.ext2 /dev/sda1
# mkdir /media/{gentoob,gentoor,gentooh,ubuntur,ubuntuh}
# mount -t ext2 /dev/sda1 /media/gentoob
# cd /media/gentoob
# tar xzvf /media/recuperacion/gentoo/gentoo-boot.tar.gz
# mkfs.ext3 /dev/sda2
# mount /dev/sda2 /media/ubuntur
# cd /media/ubuntur
# tar xzvf /media/recuperacion/ubuntu/ubuntu-raiz.tar.gz
# mkfs.ext3 /dev/sda3
# mount /dev/sda3 /media/gentoor
# cd /media/gentoor
# tar xzvf /media/recuperacion/gentoo/gentoo-raiz.tar.gz
# cd ..
# mkfs.ext3 /dev/sda6
# mount /dev/sda6 /media/ubuntuh
# cd /media/ubuntuh
# tar xzvf /media/recuperacion/ubuntu/ubuntu-home.tar.gz
# cd ..
# mkfs.ext3 /dev/sda7
# mount /dev/sda7 /media/gentooh
# cd /media/gentooh
# tar xzvf /media/recuperacion/gentoo/gentoo-home.tar.gz
# cd ..

Desmontar particiones:
# umount /media/gentoob /media/gentooh /media/gentoor

Reinstalar grub y cambiar los uuid para ubuntu en los archivos /boot/grub/menu.lst y /etc/fstab.

# mount -v -t ext2 /dev/sda1 /media/gentoor/boot
# mount -v -t ext3 /dev/sda7 /media/gentoor/home

Montar el sistema de ficheros /proc para permitir a la instalación utilizar la información proporcionada por el kernel incluso dentro del chroot y montar de forma transparente el sistema de ficheros /dev.

# mount -t proc none /media/gentoor/proc
# mount -o bind /dev /media/gentoor/dev

Entrar en el nuevo entorno de instalación chrooting:
# chroot /media/gentoor /bin/bash
# env-update
>>> Regenerating /etc/ld.so.cache...
# source /etc/profile
# export PS1="(chroot) $PS1"

Actualizar /etc/mtab que contiene la información relativa a todos los ficheros montados:
# grep -v rootfs /proc/mounts > /etc/mtab

Instalar grub:
# grub-install --no-floppy /dev/sda

Salir del chroot y reiniciar
# exit
# umount /media/gentoor/boot /media/gentoor/home
# umount /media/gentoor/proc /media/gentoor/dev
# umount /media/gentoor
# reboot

Crear el sistema de ficheros reiserfs para la partición tmp se puede realizar una vez iniciado el sistema. En Gentoo con la utilidad reiserfsprogs. Comentar esta linea en /etc/fstab y descomentarla despues de crear el sistema de fichero:

# /dev/sda9 /tmp reiserfs notail,noatime,nodev,nosuid,noexec 0 0

Creo el sistema de ficheros reiserfs para particion tmp:
# emerge reiserfsprogs
# mkreiserfs -f --l "gentoot" /dev/sda9

Utilizar gparted para crear la particion de datos. Crear directorio /media/datos y agregar entrada al archivo /etc/fstab
# vi /etc/fstab
/dev/sda8 /media/datos ext3  users,defaults,nodev,nosuid 0 2


# mount -a

Disposit. Inicio    Comienzo      Fin      Bloques  Id  Sistema
/dev/sda1   *        2048      200703       99328   83  Linux
/dev/sda2          200704    52629503    26214400   83  Linux
/dev/sda3        52629504   105058303    26214400   83  Linux
/dev/sda4       105058304   976773167   435857432    5  Extendida
/dev/sda5       105060352   109254655     2097152   83  Linux
/dev/sda6       109256704   151199743    20971520   83  Linux
/dev/sda7       151201792   193144831    20971520   83  Linux
/dev/sda8       193146880   617873407   212363264   83  Linux
/dev/sda9       617875456   634652671     8388608   83  Linux



Linux es genial!.

No hay comentarios:

Publicar un comentario