Cree un disco U para el sistema Ubuntu con arranque UEFI puro

2019-01-23 11:28:41

Cree un disco U para el sistema Ubuntu con arranque UEFI puro

Prólogo

El propósito de este artículo es crear una unidad USB Ubuntu To Go que admita el arranque UEFI a través del ISO de Ubuntu 16.04.
Me he referido a otros artículos antes, e hice con éxito un sistema de disco U que admite Bios y UEFI, pero requiere conexión a Internet para instalar Grub2 de EFI.
Personalmente, siento que el archivo ISO en sí mismo es compatible con UEFI, ¿por qué no extraer el archivo de arranque directamente del archivo de imagen?
A través de la búsqueda a tientas, extraje la carpeta EFI en el ISO, usé las cadenas EFI / grubx64.efi para ver su código fuente y descubrí que leería el archivo de configuración /boot/grub/grub.cfg en el directorio raíz del disco EFI, que fue inspirado para resumir Los siguientes pasos de producción.


Preparación

Ubuntu 16.04 LTS ISO

http://releases.ubuntu.com/xenial/ubuntu-16.04.5-desktop-amd64.iso

Edición gratuita de DiskGenius

http://www.diskgenius.cn

Software de descompresión HaoZip

http://haozip.2345.cc/

No se recomienda un disco U USB3.0 de 64 GB o superior, 2.0, la velocidad es demasiado lenta

Tome mi Chipfancier 256GB como ejemplo, use DiskGenius para configurar el tipo GPT, la partición es la siguiente

Tamaño Formato Observaciones
200MB FAT32 Distinción EFI
100GB EXT4 Ubuntu está instalado aquí, monta el directorio raíz /
133GB exFat Para almacenar archivos, el formato exFat es común a Windows, MacOSX, Linux
2GB FAT32 Almacene el ISO del disco de instalación, el archivo iso del arranque Grub2 solo puede estar en Fat32

Además, el disco U de 64 GB utiliza el tipo MBR. Las particiones recomendadas son las siguientes: la tercera partición se puede combinar en la segunda partición después de la instalación.

Tamaño Formato Observaciones
200MB FAT32 Partición primaria, activa, distinción EFI
50GB EXT4 La partición principal, donde está instalado Ubuntu, monta el directorio raíz /
2GB FAT32 La partición principal, que almacena el disco de instalación ISO

** Utilice el software de descompresión para copiar toda la carpeta EFI en ubuntu-16.04.5-desktop-amd64.iso a la primera partición **

# EFI 文件夹应该包含以下内容
# UEFI 系统会搜索所有FAT32 磁盘根目录下的EFI/BOOT/BOOTx64.efi(不分大小写)
|____EFI
    |____BOOT
      |____BOOTx64.EFI  <-- 由shimx64.efi 改名而来,针对主板开启了SecureBoot
      |____grubx64.efi  <-- 如果关闭了SecureBoot 可直接将grubx64.efi 改名为bootx64.efi

** Cree /boot/grub/grub.cfg en la primera partición, que contiene el comando para iniciar Ubuntu, pero se puede usar después de la modificación después de instalar el sistema **

set timeout=10

menuentry "Ubuntu 16.04 LTS" {
  set uuid=0dcc1a29-32ad-4c59-a14d-ab0d9b3c1c00
  search --no-floppy --fs-uuid --set=ubdisk $uuid
  #search.fs_uuid $uuid ubdisk  # same as above
  set root=($ubdisk)
  linux /boot/vmlinuz-4.15.0-29-generic root=UUID=$uuid
  initrd /boot/initrd.img-4.15.0-29-generic
}

submenu "Others" {

  menuentry "Reboot" {
    reboot
  }

  menuentry "Halt" {
    halt
  }
}

** Cree una carpeta ISO en la última partición, copie ubuntu-16.04.5-desktop-amd64.iso en ISO y cree /ISO/set-hdisk-source.txt, cuyo contenido es arrancar el archivo iso en el disco U Comando **

set isofile=/ISO/ubuntu-16.04.5-desktop-amd64.iso
loopback loop $hdisk$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile quiet splash
initrd (loop)/casper/initrd
boot

** El diagrama de árbol resultante del sistema de archivos **

|____第一分区,即EFI 分区
| |____EFI
| | |____BOOT
| |   |____BOOTx64.EFI
| |   |____grubx64.efi
| |____boot
|   |____grub
|     |____grub.cfg
|____最后分区,即保存ISO 的分区
| |____ISO
|   |____ubuntu-16.04.5-desktop-amd64.iso
|   |____set-hdisk-source.txt

Pasos de instalación

Inserte el disco U con los archivos desplegados anteriormente en la computadora y elija arrancar desde el disco U. Cuando aparezca el menú Grub2, presione c para ingresar al símbolo del sistema grub>

ls # Compruebe qué letras de unidad están disponibles actualmente, por ejemplo, el disco que almacena iso es (hd0, gpt4)

ls (hd0, # En este momento, se le indicará presionando la tecla Tab, qué particiones están en el disco duro y el UUID y el tipo de formato de la partición

Guíe el archivo iso en el disco U con el siguiente comando, FAT32 cambiará todas las letras a minúsculas, la fuente es equivalente a leer un archivo por lotes

set hdisk=(hd0,gpt4)
source $hdisk/iso/set-hdisk-source.txt

Después de ingresar a Ubuntu LiveCD, haga clic en el logotipo en la esquina superior izquierda para ingresar a Terminal para abrir el terminal

sudo -s  # 切换到root 用户
umount -l /isodevice  # 卸载iso 挂载的盘符,否则无法对U 盘进行写入操作
ubiquity --no-bootloader  # 千万不要用桌面的安装图标直接安装,否则UEFI 引导文件会被修改

La instalación de Ubuntu es lo mismo que usar otros medios, lo único que debe tener en cuenta es seleccionar el punto de montaje del directorio raíz /

  1. Elija el idioma, me gusta elegir chino, y luego configure el directorio en inglés
  2. Optar por salir
  3. Elija instalar software adicional de terceros
  4. Partición del disco duro
  • Mensaje "Partición montada desmontada" Seleccione "Sí"
  • Seleccione la segunda partición del disco U, escriba Ext4, la partición principal, marque "formato", punto de montaje "/"
  • El mensaje no configura el intercambio para ignorarlo, haga clic en "Continuar"
  1. Seleccionar zona horaria
  2. Seleccionar teclado, inglés, americano
  3. Establecer nombre de usuario, nombre de host, contraseña

No "reinicie" después de la instalación, seleccione "continuar prueba"

fdisk -l  # 查找U 盘的设备名,通过分区类型及数量判断,例如/dev/sdb
blkid | grep sdb # 查看各个磁盘的UUID,主要关注U 盘的第一、第二个分区的UUID

mount /dev/sdb2 /mnt
mount /dev/sdb1 /mnt/boot/efi

vi /mnt/etc/fstab  # 将最后一行的UUID 改成U 盘第一个盘即EFI 分区的UUID
# /etc/fstab 最后一行影响的是新系统/boot/efi 目录的挂载
# Ubuntu 在安装的时候会将Windows 的ESP 分区挂载到/boot/efi
# 在MacBook 上启动报错就是因为/boot/efi 挂载的设备不存在
# 所以,将/boot/efi 挂载点设置为U 盘就不会找不到设备了

vi /mnt/boot/efi/boot/grub/grub.cfg  # 将set uuid=U盘第二个盘即Ext4 分区的UUID
# 这里设置的是告诉Grub2,Ubuntu 的安装位置,UUID 是磁盘的唯一标识,除非格式化才会改变

# 以上vi 都修改完文件后卸载挂载的磁盘并重启系统
umount /mnt/boot/efi
umount /mnt
init 6  # 重启系统

Comience nuevamente desde el disco U, seleccione "Ubuntu 16.04 LTS" para ingresar al sistema recién instalado


Limpieza

Después de apagar la computadora, desconecte el disco U. Durante el proceso de instalación, Ubuntu todavía escribió algo a UEFI, tomando mi sistema X270 original Windows 8.1 como ejemplo.
Ingrese a Windows y use DiskGenius para explorar la partición ESP y elimine la carpeta ubuntu debajo de la carpeta EFI.


Artículo de referencia

Hacer BIOS dual / EFI dual boot Ubuntu To Go disco de arranque

https://www.littleqiu.net/archives/771
https://zhuanlan.zhihu.com/p/27871019

Instalación de Ubuntu en memoria USB con arranque puro EFI (compatible con Mac)

https://medium.com/@mmiglier/ubuntu-installation-on-usb-stick-with-pure-efi-boot-mac-compatible-469ad33645c9

Arrancar el archivo iso de ubuntu desde el menú de grub

https://askubuntu.com/questions/500295/booting-ubuntu-iso-file-from-grub-menu

¿Cómo sabe GRUB2 UEFI loader dónde encontrar archivos de configuración?

https://stackoverrun.com/cn/q/9723219

Instale Ubuntu en la unidad USB y arranque en el sistema Uefi y Bios

https://askubuntu.com/questions/784928/install-ubuntu-to-usb-drive-and-boot-it-to-uefi-and-bios-system


发布了27 篇原创文章 · 获赞 4 · 访问量 9697

Supongo que te gusta

Origin blog.csdn.net/yoshubom/article/details/86615667
Recomendado
Clasificación