Сделал соответсвующее разбиение:
Код: Выделить всё
Device Start End Sectors Size Type
/dev/sdk1 2048 6143 4096 2M BIOS boot
/dev/sdk2 6144 137215 131072 64M EFI System
/dev/sdk3 137216 399359 262144 128M Linux filesystem
/dev/sdk4 399360 17176575 16777216 8G Linux filesystem
/dev/sdk5 17176576 59119615 41943040 20G Linux filesystem
/dev/sdk6 59119616 60626910 1507295 736M Linux filesystem
Поставил в третий раздел Grub2 Legacy.
Загружается, выполняет grub.conf
Стал ставить Grub2-EFI.
Находясь в каталоге /usr/lib/grub/x86_64-efi, собрал образ
Код: Выделить всё
grub2-efi-mkimage -c /media/disk/boot/efi/EFI/BOOT/grub2-efi/grub.cfg -O x86_64-efi -o /media/disk/boot/efi/EFI/BOOT/grub2-efi/grub.efi -d /usr/lib/grub/x86_64-efi -p /grub2 \
$(find . -name '*.mod' -and -not -name "minix*" -and -not -name "affs*" -and -not -name "afs*" -and -not -name "bfs*" -and -not -name "md4*" -and -not -name "*amiga*" -and -not -name "sfs"| tr '\n' ' ' | sed -e 's/\.mod//g')
Модули, которые включил:
Код: Выделить всё
find . -name '*.mod' -and -not -name "minix*" -and -not -name "affs*" -and -not -name "afs*" -and -not -name "bfs*" -and -not -name "md4*" -and -not -name "*amiga*" -and -not -name "sfs"| tr '\n' ' ' | sed -e 's/\.mod//g'
./acpi ./adler32 ./ahci ./all_video ./aout ./appleldr ./at_keyboard ./ata ./backtrace ./bitmap ./bitmap_scale ./blocklist ./boot ./bsd ./btrfs ./bufio ./cat ./chain ./cmp ./configfile ./cpio ./cpio_be ./cpuid ./crc64 ./crypto ./cryptodisk \
./cs5536 ./date ./datehook ./datetime ./diskfilter ./dm_nv ./echo ./efi_gop ./efi_uga ./efifwsetup ./efinet ./ehci ./elf ./emuusb ./exfat ./exfctest ./ext2 ./extcmd ./fat ./fixvideo ./font ./fshelp ./functional_test ./gcry_arcfour ./gcry_blowfish \
./gcry_camellia ./gcry_cast5 ./gcry_crc ./gcry_des ./gcry_md4 ./gcry_md5 ./gcry_rfc2268 ./gcry_rijndael ./gcry_rmd160 ./gcry_seed ./gcry_serpent ./gcry_sha1 ./gcry_sha256 ./gcry_sha512 ./gcry_tiger ./gcry_twofish ./gcry_whirlpool \
./geli ./gettext ./gfxmenu ./gfxterm ./gptsync ./gzio ./halt ./hashsum ./hdparm ./hello ./help ./hexdump ./hfs ./hfsplus ./http ./iorw ./iso9660 ./jfs ./jpeg ./keylayouts ./keystatus ./ldm ./linux ./linuxefi ./loadbios ./loadenv ./loopback \
./ls ./lsacpi ./lsefimmap ./lsefisystab ./lsmmap ./lspci ./lssal ./luks ./lvm ./lzopio ./mdraid09 ./mdraid09_be ./mdraid1x ./memdisk ./memrw ./minicmd ./mmap ./msdospart ./multiboot ./multiboot2 ./net ./newc ./nilfs2 ./normal ./ntfs \
./ntfscomp ./odc ./ohci ./part_acorn ./part_apple ./part_bsd ./part_dvh ./part_gpt ./part_msdos ./part_plan ./part_sun ./part_sunpc ./parttool ./password ./password_pbkdf2 ./pata ./pbkdf2 ./play ./png ./priority_queue ./probe ./raid5rec \
./raid6rec ./read ./reboot ./regexp ./reiserfs ./relocator ./romfs ./scsi ./search ./search_fs_file ./search_fs_uuid ./search_label ./serial ./setjmp ./setpci ./sfs ./sleep ./squash4 ./tar ./terminal ./terminfo ./test ./test_blockarg ./testload ./tftp \
./tga ./time ./trig ./true ./udf ./ufs1 ./ufs2 ./uhci ./usb ./usb_keyboard ./usbms ./usbserial_common ./usbserial_ftdi ./usbserial_pl2303 ./usbtest ./video ./video_bochs ./video_cirrus ./video_fb ./videoinfo ./videotest ./xfs ./xnu ./xnu_uuid \
./xzio ./zfs ./zfscrypt ./zfsinfo
Содержимое файла /media/disk/boot/efi/EFI/BOOT/grub2-efi/grub.cfg
Код: Выделить всё
search.fs_uuid a0624e8b-faf1-4282-9455-5794fbc0a43e root hd0,gpt3
set prefix=($root)/grub2
configfile $prefix/grub.cfg
UUID - раздела, где находится каталог grub2
Код: Выделить всё
/dev/sdk3: LABEL="Boot" UUID="a0624e8b-faf1-4282-9455-5794fbc0a43e" TYPE="ext3" PARTLABEL="Linux filesystem" PARTUUID="ffb4c58b-5661-4fb7-872b-193805eae2cd"
Что нахожится в разделе:
Код: Выделить всё
mount | grep sdk && pwd && ls -l
/dev/sdk4 on /media/disk type ext4 (rw,relatime,data=ordered)
/dev/sdk3 on /media/disk/boot type ext3 (rw,relatime,data=ordered)
/dev/sdk2 on /media/disk/boot/efi type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
/media/disk/boot
итого 29
drwxr-xr-x 3 root root 16384 янв 1 1970 efi/
drwxr-xr-x 6 root root 1024 янв 20 19:32 grub2/
drwx------ 2 root root 12288 янв 20 16:26 lost+found/
Все это я установил командой
Код: Выделить всё
grub2-efi-install --target=x86_64-efi --bootloader-id=grub --efi-directory=/media/disk/boot/efi --boot-directory=/media/disk/boot --removable /dev/sdk
В UEFI-режиме флэшка загружается. Но Grub2 выдает ошибку "prefix not set" две строки и зависает. На клавиатуру не откликается.
В связи с этим у меня два вопроса:
1. Как заставить Grub2 находить нужный раздел с рабочим каталогом GRUB2?
2. Какие модули можно, или даже нужно еще выкинуть?