Re: Difficile création d'une cle usb multiboot uefi gpt grub !
Bonjour.
Merci pour votre bon questionnement.
Tout d'abord j'ai tout refais sans résultat mais je détaille la construction
pour que vous y jettiez uncoup d'oeil :
sudo su
dd if=/dev/zero of=/dev/sdb bs=1024 count=10240
parted /dev/sdb
mkpart fat32 0 512MiB
mkpart ext4 512MiB -1s
set 1 esp on
p
Model: SanDisk Ultra (scsi)
Disk /dev/sdb: 29327MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 0,02MiB 512MiB 512MiB fat32 boot, esp
2 512MiB 29327MiB 28815MiB ext4
q
mkfs.fat -F 32 /dev/sdb1
mkfs.ext4 /dev/sdb2
mkdir -p usb/efi
mkdir usb/data
mount /dev/sdb1 usb/efi
mount /dev/sdb2 usb/data
grub-install --efi-directory=usb/efi --boot-directory=usb/data/boot
--removable (indique sans erreur à la fin)
mkdir usb/data/iso
cp Téléchargements/firmware-10.0.0-amd64-netinst.iso usb/data/iso/
nano usb/data/boot/grub/grub.cfg
menuentry 'debianNetInst' {
iso=/iso/firmware-10.0.0-amd64-netinst.iso
loopback loop $iso
linux (loop)/install.amd/vmlinuz priority=low
initrd (loop)/install.amd/initrd.gz
}
ctl+o
ctl+x
Quelques infos :
parted /dev/sdb p
Model: SanDisk Ultra (scsi)
Disk /dev/sdb: 30,8GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 17,4kB 537MB 537MB fat32 boot, esp
2 537MB 30,8GB 30,2GB ext4
lsblk /dev/sdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 1 28,7G 0 disk
├─sdb1 8:17 1 512M 0 part /home/toto/usb/efi
└─sdb2 8:18 1 28,1G 0 part /home/toto/usb/data
blkid /dev/sdb
/dev/sdb: PTUUID="404153ff-8711-437a-8538-819876a84a7b" PTTYPE="gpt"
blkid /dev/sdb?
/dev/sdb1: UUID="358A-89F0" TYPE="vfat"
PARTUUID="740d77b7-481a-42de-93f4-d74965e8f46e"
/dev/sdb2: UUID="f077c67d-6edb-4b7b-90ad-514093124a3e" TYPE="ext4"
PARTUUID="a3b49102-54f8-43a6-8633-7b2e31075343"
ls -R usb
usb:
data efi
usb/data:
boot iso lost+found
usb/data/boot:
grub
usb/data/boot/grub:
fonts grub.cfg grubenv locale x86_64-efi
usb/data/boot/grub/fonts:
unicode.pf2
usb/data/boot/grub/locale:
ast.mo de_CH.mo en@arabic.mo en@hebrew.mo eo.mo fr.mo hu.mo
ja.mo nb.mo pl.mo sl.mo tr.mo zh_CN.mo
ca.mo de@hebrew.mo en@cyrillic.mo en@piglatin.mo es.mo gl.mo id.mo
ko.mo nl.mo pt_BR.mo sr.mo uk.mo zh_TW.mo
da.mo de.mo en@greek.mo en@quot.mo fi.mo hr.mo it.mo
lt.mo pa.mo ru.mo sv.mo vi.mo
usb/data/boot/grub/x86_64-efi:
acpi.mod efinet.mod hfspluscomp.mod net.mod
shift_test.mod
adler32.mod efi_uga.mod hfsplus.mod newc.mod
signature_test.mod
affs.mod ehci.mod http.mod nilfs2.mod sleep.mod
afs.mod elf.mod iorw.mod normal.mod sleep_test.mod
ahci.mod eval.mod iso9660.mod ntfscomp.mod spkmodem.mod
all_video.mod exfat.mod jfs.mod ntfs.mod squash4.mod
aout.mod exfctest.mod jpeg.mod odc.mod syslinuxcfg.mod
appleldr.mod ext2.mod keylayouts.mod offsetio.mod
tar.mod
archelp.mod extcmd.mod keystatus.mod ohci.mod
terminal.lst
ata.mod fat.mod ldm.mod part_acorn.mod terminal.mod
at_keyboard.mod file.mod legacycfg.mod part_amiga.mod
terminfo.mod
backtrace.mod fixvideo.mod legacy_password_test.mod
part_apple.mod test_blockarg.mod
bfs.mod font.mod linux16.mod part_bsd.mod testload.mod
bitmap.mod fshelp.mod linuxefi.mod part_dfly.mod
test.mod
bitmap_scale.mod fs.lst linux.mod part_dvh.mod
testspeed.mod
blocklist.mod functional_test.mod loadbios.mod part_gpt.mod
tftp.mod
boot.mod gcry_arcfour.mod load.cfg partmap.lst tga.mod
bsd.mod gcry_blowfish.mod loadenv.mod part_msdos.mod
time.mod
bswap_test.mod gcry_camellia.mod loopback.mod part_plan.mod
trig.mod
btrfs.mod gcry_cast5.mod lsacpi.mod part_sun.mod tr.mod
bufio.mod gcry_crc.mod lsefimmap.mod part_sunpc.mod
true.mod
cat.mod gcry_des.mod lsefi.mod parttool.lst udf.mod
cbfs.mod gcry_dsa.mod lsefisystab.mod parttool.mod
ufs1_be.mod
cbls.mod gcry_idea.mod lsmmap.mod password.mod ufs1.mod
cbmemc.mod gcry_md4.mod ls.mod password_pbkdf2.mod ufs2.mod
cbtable.mod gcry_md5.mod lspci.mod pata.mod uhci.mod
cbtime.mod gcry_rfc2268.mod lssal.mod pbkdf2.mod
usb_keyboard.mod
chain.mod gcry_rijndael.mod luks.mod pbkdf2_test.mod
usb.mod
cmdline_cat_test.mod gcry_rmd160.mod lvm.mod pcidump.mod
usbms.mod
cmp.mod gcry_rsa.mod lzopio.mod play.mod
usbserial_common.mod
cmp_test.mod gcry_seed.mod macbless.mod png.mod
usbserial_ftdi.mod
command.lst gcry_serpent.mod macho.mod priority_queue.mod
usbserial_pl2303.mod
configfile.mod gcry_sha1.mod mdraid09_be.mod probe.mod
usbserial_usbdebug.mod
core.efi gcry_sha256.mod mdraid09.mod procfs.mod
usbtest.mod
cpio_be.mod gcry_sha512.mod mdraid1x.mod progress.mod
verify.mod
cpio.mod gcry_tiger.mod memdisk.mod raid5rec.mod
video_bochs.mod
cpuid.mod gcry_twofish.mod memrw.mod raid6rec.mod
video_cirrus.mod
crc64.mod gcry_whirlpool.mod minicmd.mod random.mod
video_colors.mod
cryptodisk.mod geli.mod minix2_be.mod read.mod
video_fb.mod
crypto.lst gettext.mod minix2.mod reboot.mod
videoinfo.mod
crypto.mod gfxmenu.mod minix3_be.mod regexp.mod
video.lst
cs5536.mod gfxterm_background.mod minix3.mod reiserfs.mod
video.mod
ctz_test.mod gfxterm_menu.mod minix_be.mod relocator.mod
videotest_checksum.mod
datehook.mod gfxterm.mod minix.mod romfs.mod
videotest.mod
date.mod gptsync.mod mmap.mod scsi.mod xfs.mod
datetime.mod grub.efi moddep.lst search_fs_file.mod
xnu.mod
diskfilter.mod gzio.mod modinfo.sh search_fs_uuid.mod
xnu_uuid.mod
disk.mod halt.mod morse.mod search_label.mod
xnu_uuid_test.mod
div.mod hashsum.mod mpi.mod search.mod xzio.mod
div_test.mod hdparm.mod msdospart.mod serial.mod
zfscrypt.mod
dm_nv.mod hello.mod mul_test.mod setjmp.mod zfsinfo.mod
echo.mod help.mod multiboot2.mod setjmp_test.mod
zfs.mod
efifwsetup.mod hexdump.mod multiboot.mod setpci.mod
efi_gop.mod hfs.mod nativedisk.mod sfs.mod
usb/data/iso:
firmware-10.0.0-amd64-netinst.iso
usb/data/lost+found:
usb/efi:
EFI
usb/efi/EFI:
BOOT
usb/efi/EFI/BOOT:
BOOTX64.CSV BOOTX64.EFI fbx64.efi grub.cfg grubx64.efi mmx64.efi
Après quelques recherches sur internet j'ai tapé "efibootmgr -v" qui affiche
:
BootCurrent: 0002
Timeout: 0 seconds
BootOrder: 0002,3002,2001,2002,2003
Boot0000* USB Hard Drive (UEFI) - SanDisk
PciRoot(0x0)/Pci(0x14,0x0)/USB(5,0)/HD(1,GPT,740d77b7-481a-42de-93f4-d74965e8f46e,0x22,0xfffde)RC
Boot0002* debian
HD(1,GPT,bd93dbd2-3135-43ab-86bf-e4ff881eec9a,0x800,0x100000)/File(\EFI\debian\shimx64.efi)
Boot2001* USB Drive (UEFI) RC
Boot2002* Internal CD/DVD ROM Drive (UEFI) RC
Boot3000* Internal Hard Disk or Solid State Disk RC
Boot3001* Internal Hard Disk or Solid State Disk RC
Boot3002* Internal Hard Disk or Solid State Disk RC
Boot3003* Internal Hard Disk or Solid State Disk RC
On voit donc que ma clé usb est vue par le bios de mon pc portable comme un
"disque dur usb avec une table de partition gpt" (bios UEFI) d'après la
ligne :
Boot0000* USB Hard Drive (UEFI) - SanDisk
PciRoot(0x0)/Pci(0x14,0x0)/USB(5,0)/HD(1,GPT,740d77b7-481a-42de-93f4-d74965e8f46e,0x22,0xfffde)RC
Dans mon bios UEFI de mon pc portable HP les options de boot sont :
EFI boot order
OS boot manager
Internal cd / dvd rom drive
Usb diskette on key / usb hard disk
Usb cd / dvd rom drive
! Network adapter
Le point ! signifie que j'ai désactivé la possibilité de boot par le réseau
(j'y connais pas grand chose et je n'aime pas cela lorsque je suis connecté
à internet).
Je remarque alors ces 2 lignes :
Boot2001* USB Drive (UEFI) RC
---> correspondant peut être dans mon bios à "Usb diskette on key / usb
hard disk"
Boot0000* USB Hard Drive (UEFI) - SanDisk
PciRoot(0x0)/Pci(0x14,0x0)/USB(5,0)/HD(1,GPT,740d77b7-481a-42de-93f4-d74965e8f46e,0x22,0xfffde)RC
---> correspondant apparemment à ma clé usb "sandisk"
Apparemment il faudrait manipuler la commande "efibootmgr" (comme par
exemple "efibootmgr -n 0000" mais je pense que cela ne chnagerait rien !).
Est-ce que cette commande modifie uniquement des données de l'installation
debian sur disque dur ou modifie-t-elle des firmwares du matériel de mon pc
portable ?
Je ne voudrais pas modifier ou détruire des firmwares et bloquer
définitivement mon pc portable !
Bref il faudrait m'éclaircir ce point et pourquoi pas me donner la solution
qui semble toute proche.
Remarque importante, j'ai installé debian buster 10.0.0 avec une clé usb que
j'ai réalisée ainsi :
cp firmware-10.0.0-amd64-DVD-1.iso /dev/sdb
sync
C'est peut être à cause de cette installation que lorsque je veux booter
avec une clé construite autrement il y a un problème de boot order ?
Je continue à chercher sur internet mais évidement toujours merci pour les
coups de main.
--
Sent from: http://debian.2.n7.nabble.com/debian-user-french-f1152225.html
Reply to: