Comment créer une clé USB que l'installateur Linux et Win10 et winpe peuvent démarrer UEFI

introduction

Le premier article.

Sujet principal

Si vous n'avez qu'une seule machine Win dans votre maison, vous devez créer deux clés USB, et si la machine Win tombe en panne pour une raison quelconque, vous devez la réparer. ex. j'ai cassé la zone de démarrage

environnement

Double démarrage Win10 et Ubuntu Vous ne pouvez le faire qu'avec Linux, mais comme install.wim fait 4 Go ou plus, Prend de l'espace de stockage

Obtenez iso

https://tb.rg-adguard.net/public.php Vous pouvez passer Winiso d'ici Vous pouvez également obtenir la dernière version de l'iso à partir de l'outil Mediacreation

Réduire /source/install.wim

Vous pouvez ignorer cette étape si vous l'avez téléchargée avec l'outil Mediacreation </ b>

Dism /Get-WimInfo /WimFile:D:\sources\install.wim
Dism /Get-WimInfo /WimFile:{Chemin du fichier ESD} or {Chemin du fichier WIM}

Ensuite, le numéro d'édition sortira, alors notez-le.

Dism /Export-Image /SourceImageFile:{Chemin du fichier ESD} /SourceIndex:{Numéro d'index} /DestinationImageFile:{Chemin du fichier WIM} /Compress:max /CheckIntegrity

Veuillez changer l'extension en .wim ou .esd selon le cas.

grub-install Créer une partition fat32 avec un minimum de 100 Mo

mount /dev/Partition de 100 Mo/mnt
mkdir /mnt/boot
grub-install --target=x86_64-efi --efi-directory=/mnt --boot-directory=/mnt/boot --removable --recheck

bogue de la version 2.04 de grub

grub version 2.04 ne peut pas charger iso Écraser / efi / * avec 2.02 .efi J'ai extrait de l'iso de lubuntu 18.04

Comment diviser la partition

スクリーンショット_2020-06-22_12-55-41.png La partition qui stocke l'ISO doit être fat32 /GRUB/boot/grub/grub.cfg

touch /USB_mountpoint/boot/grub/grub.cfg

grub.cfg

insmod all_video
insmod fat
insmod ntfs

if [ x$feature_platform_search_hint = xy ]; then
   	search --no-floppy --fs-uuid --set=root  XXXX-XXXX #UUID de la partition ISO
else
   	search --no-floppy --fs-uuid --set=root XXXX-XXXX #UUID de la partition ISO
fi

# System shutdown
menuentry "System shutdown" {
	echo "System shutting down..."
	halt
}

# System restart
menuentry "System restart" {
	echo "System rebooting..."
	reboot
}

# Firmware setup
menuentry "Firmware setup" {
	fwsetup
}

# Xubuntu
menuentry '[loopback]xubuntu-20.04-desktop-amd64' {
	set isofile='/iso/xubuntu-20.04-desktop-amd64.iso'
    loopback loop $isofile
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile
    initrd (loop)/casper/initrd
}

# Kail Linux
menuentry "[loopback]kali-linux-2019.4-lxde-amd64" {
	set isofile='/iso/kali-linux-2019.4-lxde-amd64.iso'
	loopback loop $isofile
	linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=kali
	initrd (loop)/live/initrd.img
}

# Ubuntu Server
menuentry '[loopback]ubuntu-20.04-live-server-amd64' {
    set isofile='/iso/ubuntu-20.04-live-server-amd64.iso'
    loopback loop $isofile
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile
    initrd (loop)/casper/initrd
}

# WinPE
menuentry '[chain]Hiren’s BootCD PE' {
	insmod chain
    if [ x$feature_platform_search_hint = xy ]; then
   	    search --no-floppy --fs-uuid --set=root  XXXXXXXXXXXXXX #UUID de la partition WinPE
   	else
   	    search --no-floppy --fs-uuid --set=root XXXXXXXXXXXXXX #UUID de la partition WinPE
   	fi
        chainloader /EFI/Boot/bootx64.efi #bootx64.CHEMIN EFI
}

# Win10
menuentry '[chain]Win10_1909_Japanese_x64' {
	insmod chain
    if [ x$feature_platform_search_hint = xy ]; then
   	    search --no-floppy --fs-uuid --set=root  XXXXXXXXXXXXXX #UUID de la partition Win Installer
   	else
   	    search --no-floppy --fs-uuid --set=root XXXXXXXXXXXXXX #UUID de la partition Win Installer
   	fi
        chainloader /efi/boot/bootx64.efi #bootx64.CHEMIN EFI
}

Obtenir l'UUID de la partition

lsblk -f /dev/sda
lsblk -f | grep MOUNT_POINT

Citation

https://qiita.com/SkyLaptor/items/7f2bf545e3d0a9170303 https://wiki.archlinux.jp/index.php/%E3%83%9E%E3%83%AB%E3%83%81%E3%83%96%E3%83%BC%E3%83%88_USB_%E3%83%89%E3%83%A9%E3%82%A4%E3%83%96 https://qiita.com/roamer7038/items/b61cc70404a4e5ab181b

À la fin

Merci d'avoir lu un article aussi difficile à lire

Recommended Posts

Comment créer une clé USB que l'installateur Linux et Win10 et winpe peuvent démarrer UEFI
Comment installer Linux sur un PC UEFI 32 bits
Comment créer un référentiel local pour le système d'exploitation Linux
Comment mettre Pyenv sur Amazon Linux et Ubuntu pour créer un environnement Python 3.6.0
Comment créer une propriété de relations qui peuvent être prefetch_related par des conditions spécifiques
Comment écrire une classe méta qui prend en charge à la fois python2 et python3
Comment démarrer un serveur WEB simple qui peut exécuter des cgi de php et python
Comment configurer WSL2 sur Windows 10 et créer un environnement d'étude pour les commandes Linux
Présentation de la création d'un socket serveur et de la création d'un socket client
Commande pour créer Linux Live USB
Comment créer un package Conda
Comment créer un pont virtuel
[Langage C] Comment créer, éviter et créer un processus zombie
Comment créer un Dockerfile (basique)
Comment créer un fichier de configuration
Comment créer un bot Janken qui peut être facilement déplacé (commentaire)
Comment créer un wrapper qui préserve la signature de la fonction à envelopper
Créer une zone d'écriture permanente sur Kali Linux démarré à partir d'une clé USB
Comment créer un clone depuis Github
[Linux] Comment subdiviser des fichiers et des dossiers
Comment diviser et enregistrer un DataFrame
Comment créer un dossier git clone
Comment créer un référentiel à partir d'un média
J'ai essayé de créer une classe qui peut facilement sérialiser Json en Python
Je souhaite créer une file d'attente prioritaire pouvant être mise à jour avec Python (2.7)
Un sort qui élimine les caractères et symboles non japonais et crée un corpus simple japonais
Comment installer la bibliothèque Python qui peut être utilisée par les sociétés pharmaceutiques
Créez une application Web qui convertit le PDF en texte à l'aide de Flask et PyPDF2
[Python] Comment créer un environnement de serveur Web local avec SimpleHTTPServer et CGIHTTPServer
Comment créer un objet fonction à partir d'une chaîne
Comment créer des variables explicatives et des fonctions objectives
Comment créer un fichier JSON en Python
Essayez de créer une nouvelle commande sous Linux
Comment basculer entre les shells Linux et Mac
[Note] Comment créer un environnement de développement Ruby
Comment créer une boîte de saisie Kivy 1 ligne
Procédure de création d'application multi-plateforme avec kivy
Comment créer une API Rest dans Django
[Note] Comment créer un environnement de développement Mac
Ce que vous pouvez comprendre parce que vous êtes un débutant Comment créer un fichier (premier message)
[GCF + Python] Comment importer Excel vers GCS et créer une nouvelle table dans BigQuery
Comment utiliser l'unité esclave LAN sans fil tp-link qui ne prend pas en charge Linux
Remarques sur l'utilisation de StatsModels qui peuvent utiliser la régression linéaire et GLM en python
Lire la source Python-Markdown: Comment créer un analyseur
Installer Grub sur une mémoire USB (UEFI) ~ Démarrer Linux à partir de grub sur une mémoire USB ~
Débutants! Commandes et utilisation de base de Linux!
Comment créer un sous-menu avec le plug-in [Blender]
[Python] Comment écrire une docstring conforme à PEP8
[Python] Comment créer une matrice de corrélation et une carte thermique
Comment créer un simple script serveur / client TCP
[Python] Comment créer un histogramme bidimensionnel avec Matplotlib
Correction d'un moyen pour l'UEFI de forcer Windows à démarrer
Comment créer un environnement Python sur Amazon Linux 2
[Linux] Comment mettre votre IP dans une variable
[Linux] Créez un auto-certificat avec Docker et apache
[Linux] [C / C ++] Comment obtenir la valeur d'adresse de retour d'une fonction et le nom de fonction de l'appelant