miércoles, 27 de septiembre de 2017

Diferencia entre BIOS y UEFI (MBR y GPT)

En este manual, vamos a tratar el tema de la tabla de las particiones (MBR o GPT).
Las particiones, son obligatorias y vienen impuestas por el firmware de nuestra máquina (BIOS o UEFI) 

La BIOS está siendo reemplazada por UEFI (EFI), mucho más amigable y gráficamente superior, siendo UEFI un mini "sistema operativo" en el cual se puede usar con teclado y ratón y soporta gestión de redes, pudiendose configurar en remoto desde otro pc, al contrario que BIOS no es un mini sistema operativo, solo se puede usar con el teclado y en el propio pc sin gestión de redes. 

La gran mayoría de los nuevos firmware actuales soportan los dos modos:

- BIOS (Legacy Mode)
- UEFI


Lo primero que tenemos que tener presentes, (estamos preparando la tabla de particiones y las particiones) del disco duro (dependiendo de la tecnología usada: HD o SSD) cuando todavía no esta instalado el sistema operativo.


Conceptos básicos:

Firmware : Es un programa que es grabado en una memoria ROM y establece la lógica de más bajo nivel que controla los circuitos electrónicos de un dispositivo. Se considera parte del hardware por estar integrado en la electrónica del dispositivo, pero también es software, pues proporciona la lógica y está programado por algún tipo de lenguaje de programación. El firmware recibe órdenes externas y responde operando el dispositivo. El firmware se encuentra en: monitores, impresoras, escáner, microprocesadores, etc. La BIOS y el UEFI (EFI) son programas firmwares.



BIOS : (sigla en inglés de Basic Input/Output System ; en español «sistema básico de entrada y salida») es un tipo de firmware que localiza y prepara los componentes electrónicos o periféricos de una PC, para comunicarlos con algún sistema operativo que la gobernará. Para ello la máquina cargará ese sencillo programa en la memoria RAM central del aparato. El programa está instalado en un circuito integrado de la placa base y realizará el control de la misma en el tiempo de arranque o encendido, proporcionando funcionalidades básicas: chequeo de la memoria principal y secundaria, comunicación con el usuario vía monitor o teclado y enlace mediante los procesos de arranque o booting con el núcleo del sistema operativo que gobernará el sistema. Por lo general el término se usa de forma ambivalente para referirse al software BIOS o a la memoria ROM donde residía históricamente en los sistemas de computo basados en la arquitectura x86.



UEFI (EFI) : (Unified Extensible Firmware Interface) es un firmware estándar para PCs, diseñada para reemplazar el BIOS (sistema básico de entrada y salida). Se ha diseñado para mejorar la interoperabilidad del firmware y solucionar las limitaciones del BIOS.
Algunas de las ventajas que ofrece el firmware UEFI son:

- Ayudar a proteger el proceso previo al inicio frente a ataques de bootkit.
- Tiempo de inicio y reanudación desde la hibernación más rápidos
- Compatibilidad con unidades de disco duro con particiones de más de 2,2 terabytes (TB).
- Compatibilidad con modernos controladores de dispositivos de firmware de 64 bits.
- Capacidad para usar el BIOS con hardware UEFI.
- Capacidad para usar Secure Boot.

- UEFI únicamente se puede instalar los sistemas operativos de 64 bits.
- El disco de instalación debe ser GPT (no MBR).
- Requiere de una partición UEFI de boot. Para ello, el disco debe estar vacío.
- Al soportar GTP admite discos de más de 2TB para el arranque del sistema.
- Compatibilidad para más de cuatro particiones por unidad.
- Inicio más rápido. 
En UEFI únicamente podemos instalar los sistemas de 64 bits. Los de 32 bits nunca se instalarán en modo UEFI.

La UEFI (EFI) es un firmware mucho más amigable que soporta un entorno gráfico de mayor calidad, multilenguaje, con precarga de aplicaciones o gestión de LAN, entre otras muchas opciones. EFI son las siglas de "Extensible Firmware Interface"

Los Mac montan EFI desde que se pasaron a los procesadores Intel, por el año 2006, así que son los ordenadores más avanzados que los PCs.







Secure Boot  : "Arranque seguro" es una nueva característica obligada por microsoft en el UEFI que apareció en 2012, en PCs que incluían preinstalaciones  de Windows 8.
Esta función "oficial" de Secure Boot es impedir la ejecución de cualquier software no firmado y certificado por el fabricante. Con lo cual impide la instalación de cualquier Distribución de Linux. 

Después de mucho pelear y discutir por el uso de Secure Boot, que impedía la instalación de cualquier Distribución Linux. La Linux Foundation consiguió crear un pre-loader que permite arrancar  sistemas operativos Linux en sistemas con Secure Boot activado.

Algunas placas bases permiten deshabilitar la funcion "Secure Boot"

Secure boot "previene" que un sistema operativo o algún programa “no autorizado” cargue durante el proceso de inicio del ordenador, es decir, no podemos arrancar un USB o DVD booteable con un sistema operativo.






Actualmente existen dos sistemas de tablas de particiones: Master Boot Record (MBR) y GUID Partition Table (GPT).



MBR : Se suele llamar registro de arranque principal o registro de arranque maestro al primer sector de un disco duro. A menudo se llama sector de arranque del disco a los primero 512 bytes de un disco.
Esta partición es necesaria para el arranque del sistema operativo, o bien para almacenar una tabla de particiones del disco.
 

El MBR utiliza BIOS es pequeño e inflexible. Las direcciones físicas de la unidad del disco duro se le llama CHS (Cilindro, Cabeza, Sector). El tamaño de bloque del disco duro usando MBR es de 512 bytes limitando las particiones hasta un tamaño maximo de 2 TB.

Cuando el equipo finaliza la inicialización a través de BIOS, comprueba el MBR para la obtener información del sistema de arranque. En función de lo que contenga el MBR, el equipo inicia el sistema operativo o presenta una lista de arranque de sistemas operativos instalados en el equipo.



BIOS - MBR
Cuando se va a crear una nueva tabla de particiones en un disco duro y desea utilizar MBR, sólo tienes que seleccionar la opción msdos.

Programa GParted seleccionando msdos en la nueva tabla de particiones, usando Firmware BIOS
 


GPT : GUID partition table. Nace como una parte del estándar EFI, para la colocación de las particiones en un disco duro, superando las limitaciones tecnológicas de MBR en sistemas BIOS tradicionales.
A diferencia de MBR, consta de una tabla de particiones al principio del disco, cuya primera entrada es MBR para mantener la compatibilidad con los viejos sistemas PC BIOS.
 

MBR, utiliza un direccionamiento a las unidades físicas del disco duro, GPT utiliza un sistema de direccionamiento lógico llamado LBA (Logical Block Addressing).
LBA 0  contiene la información del MBR heredado. LBA 1 contiene la cabecera de la tabla de particiones y el GUID del disco. LBAs 2 al 33 contiene las entradas para las particiones, en las que se indica el tamaño y GUID de cada partición.
LBA 34 en adelante --> espacio usable en el disco.


GPT no tiene particiones lógicas ni primarias, sólo particiones

UEFI - GPT



Cuando se va a crear una nueva tabla de particiones en un disco duro y desea utilizar GPT, sólo tienes que seleccionar la opción gpt.

Programa GParted seleccionando gpt en la nueva tabla de particiones, usando Firmware UEFI
 


Las diferencias entre MBR y GPT

MBR no soporta más de 4 particiones primarias, que no pueden exceder de 2,2 TB, es decir, que como mucho, puede gestionar discos de 8,8 TB.
Mientras que GPT soporta hasta 128 particiones primarias, cada una de hasta 256TB.

Dicho de otro modo, con GPT, desaparece la limitación de las 3 particiones primarias y una extendida con a su vez un cierto número de particiones lógicas.

- BIOS. Sistema básico de entrada y salida. También conocido como registro de arranque maestro (MBR).

- UEFI. Unified Extensible Firmware Interface. También conocido como tabla de particiones GUID (GPT).
La tabla de particiones GUID (GPT GUID Partition Table) se introdujo como parte del Firmware Extensible Unificado Interface (UEFI). GPT proporciona un mecanismo más flexible para particionar los discos de arranque que el viejo Master Boot Record (MBR).

Una partición es un espacio contiguo de almacenamiento en un disco físico o lógico que funciona como si fuera un disco físicamente independiente. Las particiones son visibles para el firmware del sistema y los sistemas operativos instalados. El acceso a una partición es controlada por el firmware del sistema antes de que el sistema inicie el sistema operativo y, a continuación, el sistema operativo después de que se inicie.



GRUB2 (Gestor de Arranque, BootLoader en Linux)
 

Un gestor de arranque es un programa que te permite seleccionar que sistema operativo arrancar. Un cargador de arranque, por otro lado, se carga un núcleo del sistema operativo y transfiere el control al mismo. Muchos programas de realizar ambas funciones, pero otros manejar sólo una de ellas. Menos de (U) EFI, el firmware por lo general incluye un gestor de arranque simple, y cada sistema operativo proporciona su propio cargador de arranque. La mayoría de los gestores de arranque EFI y el gestor de arranque residir en sus propios subdirectorios del directorio EFI en el ESP.

GRUB2 es la nueva versión de GRand Unified Bootloader (GRUB). GRUB2 derivada de PUPA, un proyecto de investigación destinado a mejorar el GRUB: ha sido totalmente reescrito a fin de proporcionar una mayor modularidad y portabilidad

Está destinado a reemplazar el gestor de arranque GRUB anterior (referido como "GRUB Legacy"). GRUB2 tiene un código base completamente independiente de GRUB Legacy, y dispone de instalaciones como un nuevo shell como sintaxis que permiten funciones avanzadas de scripting. Usuarios de GRUB Legacy son animados a emigrar a GRUB2.

En resumen, el gestor de arranque («bootloader») es el primer programa que se ejecuta cuando se inicia el equipo. Es el responsable de cargar y transferir el control al kernel de Linux, que, a su vez, inicializa el resto del sistema operativo.

Grub2 permite:


- arranque desde plataformas UEFI

- arrancar desde discos GPT con particiones sin siquiera tener un MBR híbrido extraño, a pesar de que uno puede usar una por razones de compatibilidad / portabilidad;
- arranque desde la administración de volúmenes lógicos directamente como soporte LVM2;
- arranque desde incursión DM-RAID soporte para RAID 1, 4, 5, 6, 9 y 10 [0?] [o 1x?];
    y el arranque desde dispositivos cifrados, probablemente LUKS, a causa de la documentación inexistente a pesar de los módulos de cypher / hash estar allí: lo que no hay orientación sobre un howto por ahora.




========================================


Nota post articulo.

Aclaración sobre Secure Boot

Secure Boot  : "Arranque seguro" es una nueva característica obligada por microsoft en el UEFI que apareció en 2012, en PCs que incluían preinstalaciones  de Windows 8.
Esta función "oficial" de Secure Boot es impedir la ejecución de cualquier software no firmado y certificado por el fabricante. Con lo cual impide la instalación de cualquier Distribución de Linux.

Porque existen problemas para instalar Debian y cualquier Linux.

Como puedes leer en este articulo el Secure Boot, es una opción que se incluyo por ya sabes que empresa.

¿Y sabes para que? Para seguir con el monopolio de una famosa empresa y ponérselo mucho mas difícil y a veces imposible la instalación de
un sistema GNU/Linux como Debian, a los usuarios de GNU/Linux

La función de Secure Boot es impedir la ejecución de cualquier software no firmado y certificado por el fabricante (para firmarlo y certificarlo se tiene que pagar, ya os imagináis a  que empresa), por lo que cualquier amenaza que intentara atacar durante el inicio se vería frustrada  pues se detendría el arranque del sistema. Esto por ejemplo deja en fuera de juego la posibilidad de instalar distribuciones Linux.

Cuando te compras una nueva placa base o un nuevo PC y quieres instalar el sistema operativo Debian, es cuando empiezan los problemas. Y todos los noveles se creen que el problema es de la distribución que estas intentando instalar, en este caso de Debian. Pero la realidad es otra bien distinta, el problema es del Secure Boot, que no deja instalar nada que no este firmado digitalmente, y para poder firmar digitalmente se tiene que pagar por una firma. ¿y a quien se tiene que pagar? podéis imaginar a quien. Lo malo, no es solo pagar, es que si eres de los que instalas mas de un Linux a la misma vez, tienes que pagar por cada Linux que quieras instalar y además por cada versión de dicha distribución. 

Yo uso GNU/Linux para no tener que pagar por cada programa que uso, Y como no tengo que pagar para usar el sistema operativo no pienso pagar para poder instalarlo. El culpable de todo esto es el Secure Boot.

A quien no le a pasado alguna vez lo siguiente:

Estas realizando una instalación de Debian, ni siquiera te deja empezar la instalación, no te reconoce el pendrive o el cd/dvd de instalación de Debian. (y a pensado que el pendrive o el CD/DVD se encontraba estropeado, cuando realmente el culpable es el Secure Boot).

En otras ocasiones si te deja empezar la instalación, y es al final del proceso cuando se instala el gestor de arranque GRUB2 y casi siempre falla por el Secure Boot de la UEFI, que no deja modificar el gestor de arranque, con lo cual no puedes instalar GRUB2 para arrancar tu sistema operativo Debian GNU/Linux.

Como podemos leer para instalar cualquier linux en nuestro nuevo PC o en nuestra nueva placa base, se tiene que desactivar el Secure Boot, pero el problema es que no todas las placas bases te dan dicha opción. Con lo cual te habrás comprado un nuevo PC para instalar Debian y no podrás instalar Ningún GNU/linux que no este firmado. 

Si has leído bien, algunas empresas de sistemas operativos GNU/Linux, si compran la firma digital y puedes instalar una versión concreta de sus sistema operativo, como por ejemplo Ubuntu. 

Una de las grandes diferencia entre BIOS y UEFI para un usuario de GNU/Linux es, que BIOS no tiene ninguna restricción para instalar cualquier GNU/Linux como Debian, y por el contrario UEFI incluye Secure Boot que hace imposible la instalación de cualquier GNU/Linux que no este firmado y certificado.


¿que será lo próximo que harán para joder a los usuarios de GNU/Linux? 

Para que no podamos instalar nuestro Debian GNU/Linux y tener que usar un sistema operativo por el cual se tiene que pagar una licencia de uso, con el software firmado y certificado.


Recordemos que aparte del Secure Boot, otro gran problema que tenemos los usuarios de GNU/Linux son los DRIVERS y/o FIRMWARE que los fabricantes de dispositivos/periféricos no lo compilan o no lo crean para GNU/Linux, pero esto es para otra noticia de este blog.








8 comentarios:

doc dijo...

francamente, a mi, que soy usuario 'normalito', me importa un comino el secure boot (no uso Windows), nunca llegaré a tener más de 2 TB por partición, no me interesa llegar hasta más de 100 particiones primarias (con 3 primarias, una extendida y, como mucho un par de particiones lógicas me es más que suficiente), y me importa muy poco tardar como mucho ¿2 o 3? segundos más cuando arranco o reinicio... que lo hago muy pocas veces al día.
Desgraciadamente se me impone, comprando un nuevo portátil, usar la UEFI, y me ha costado poder llegar a instalar solamente un Debian... a la vez que, además, me preocupa enormemente eso que se dice que se requiere crear una partición EFI 'en un disco vacío' (fue la única forma de poder reinstalar mi Debian)... porque me gusta, por lo menos cuando cambio de versión, reinstalar, no actualizar, y ello suponer tener que respaldar la /home, o las particiones auxiliares que tenga, etc.
Incluso tengo miedo de que el Clonezilla no restaure bien.
En resumen... que yo soy de los que funcionan muy a gusto con la tabla de particiones clásica (tipo MsDOS), la BIOS y el MBR, y estas nuevas imposiciones (que quizás procedan de Windows) me resultan, cuando menos, incómodas.

John Gallego dijo...

Excelente articulo informativo. Muchas gracias.

Usuario_Debian dijo...

Hola Doc.
La verdad, es que la BIOS esta ya muy obsoleta, y tiene muchas limitaciones y necesitaba actualizarse para aprovechar las nuevas tecnologías.

Tu dices:
francamente, a mi, que soy usuario 'normalito', me importa un comino el secure boot (no uso Windows),

Mi respuesta:
Perfecto, respecto tu opinión totalmente. No te escribo para discrepar solo para informarte.

Que quede claro que el Secure Boot, es una autentica LIMITACION para los usuarios de GNU/LINUX, ya que nos lo pone muy difícil y a veces imposible para poder instalar nuestro Debian en un PC/Portatil/Netboot, etc.. cualquiera, El culpable de ello ya sabéis quien es. Y no es Debian

Tu dices:
nunca llegaré a tener más de 2 TB por partición, no me interesa llegar hasta más de 100 particiones primarias (con 3 primarias, una extendida y, como mucho un par de particiones lógicas me es más que suficiente)

Mi respuesta:
Perfecto.

Yo cuando empecé en la informática no existían los discos duro, la ram era de 64k, no existía el pendrive, ni el cd-rom, ni el ratón, las pantallas eran Televisiones, etc.... Y mejorare siempre la tecnología de mis equipos siempre que me lo pueda permitir. Coincidirás conmigo que no nos vamos a quedar en los primeros pc de los años 80.


Tu dices:
y me importa muy poco tardar como mucho ¿2 o 3? segundos más cuando arranco o reinicio... que lo hago muy pocas veces al día.

Mi respuesta:
Perfecto.

No es que un ordenador tarde en arrancar 2 ó 3 segundos mas por usar UEFI, es que tarda 4 ó 5 segundos en arrancar que es bien distinto (siempre que se use discos SSD) (que quede claro que no uso dicha tecnología actualmente porque no me puedo permitirme actualizar mi pc), a lo mejor tarda 10 segundos, me puedo equivocar porque no uso dicha tecnología actualmente.

Tu dices:
Desgraciadamente se me impone, comprando un nuevo portátil, usar la UEFI, y me ha costado poder llegar a instalar solamente un Debian... a la vez que, además, me preocupa enormemente eso que se dice que se requiere crear una partición EFI 'en un disco vacío' (fue la única forma de poder reinstalar mi Debian)... porque me gusta, por lo menos cuando cambio de versión, reinstalar, no actualizar, y ello suponer tener que respaldar la /home, o las particiones auxiliares que tenga, etc.
Incluso tengo miedo de que el Clonezilla no restaure bien.

Mi respueta:
Totalmente de acuerdo.
Nos imponen usar UEFI con el Secure Boot activado (porque no en todas las placas base SE PUEDEN DESACTIVAR el Secure Boot)para no poder hacer uso de nuestra libertad de instalar Debian.

Tu dices:
En resumen... que yo soy de los que funcionan muy a gusto con la tabla de particiones clásica (tipo MsDOS), la BIOS y el MBR, y estas nuevas imposiciones (que quizás procedan de Windows) me resultan, cuando menos, incómodas.

Mi respuesta:
Perfecto.

A mi gustaría usar la nueva UEFI SIN RESTRICCIONES, y poner instalar cualquier GNU/Linux que se me antoje. Lógicamente instalaría Debian


Mi resumen:
A lo mejor en esta entrada no he conseguido transmitir las ventajas e inconvenientes de una tecnología vieja/obsoleta y de la nueva tecnología, y de las limitaciones que NOS IMPONEN a los usuarios de GNU/Linux, impuestas por ya sabéis quien.

Tampoco tengo la suerte o la desgracia (dependiendo de los inconveniente de instalar Debian, por el Secure Boot) de usar UEFI y discos SSD, etc...

Un saludos

Usuario_Debian dijo...

Hola Jonh Gallego.

Me alegra mucho saber que este articulo te ha gustado.
Muchas gracias.

Un saludo

doc dijo...

por supuesto, se me olvidó felicitarte por la ilustrativa divulgación que haces sobre la BIOS y la UEFI, y pude aparecer excesivamente brusco. Pero es que esto de la UEFI me cabrea mucho, hace dos meses estuve 3 dias para conseguir instalar un normalísimo Debian Stretch, como único S.O, en un portátil Lenovo. Vamos que la primera vez se me instaló pero cuando quise hacerlo, por segunda vez 'para fijar el método', y describirlo... me llovieron los problemas.
Saludos cordiales y gracias por tus comentarios, que ratifican alguna de mis ideas..

Alejandro dijo...

Diego, te felicito por el artículo, he guardado la dirección en el navegador para tenerlo a mano, a partir de ahora, por lo menos, entenderé por qué fallan las instalaciones de debian.

Usuario_Debian dijo...

Hola Alejandro.
Como puedes leer el Secure Boot, es una opción que se incluyo por ya sabes que empresa.

Y sabes para que? Para seguir con el monopolio y ponérselo mucho mas difícil y a veces imposible, la instalación de un sistema GNU/Linux como Debian.

Por eso cuando estas realizando una instalación de Debian, ni siquiera te deja empezar la instalación, no te reconoce el pendrive o el cd/dvd de instalación de Debian. (A quien no le a pasado y se a creido que el pendrive o el CD/DVD se encontraba extropeado, cuando realmente el culpable es el Secure Boot). En otras ocasiones si te deja empezar la instalación, y es al final del proceso es cuando se instala el gestor de arranque GRUB2 y casi siempre falla por el Secure Boot de la UEFI. (a quien no le a pasado) pues el culpable de esto ya sabes quien es.

Otro día voy a hacer un manual porque no funcionan los dispositivos/periféricos en Debian tales como: Tarjetas graficas, tarjetas de sonido, impresoras, ratones, escáner, sintonizadoras de TV, capturadoras de TV, tabletas digitales, y un largo etc.... Aunque ya te imaginaras por que no funcionan, y de quien es la culpa.

Un saludo.

Unknown dijo...

Impresionante trabajo, como siempre, sigue ampliando nuestros conocimientos, en mi caso, mínimos, gracias, usuario_debian.