This howto is for advanced users. All the time I assume you understand what I show.
This proven to work for me w/ ASUS N56VZ notebook w/ Fedora configured to use lvm and luks encrypted root.
It may help w/ other devices, but may not - no warranty of any kind.
1# Boot from your OS install CD, i.e. I used fedora xfce spin (fits to 700Mb CD).
# Take care:
Use UEFI boot option from BIOS when booting. This is required for proper reading uefi variablesand storing them to /sys/firmware/efi/ so that efibootmgr don't fail later on.
# Open root terminal (or just logout and logon as root and open just a terminal, or use 'su -')
# You must know which partittion to use. 'parted' may help, especially in case of GPT partititon table .
[root@localhost ~]# parted
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) select /dev/sda
Using /dev/sda
(parted) print free
Model: ATA ST1000LM024 HN-M (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
17.4kB 1049kB 1031kB Free Space
1 1049kB 211MB 210MB fat32 EFI system partition boot
2 211MB 345MB 134MB Microsoft reserved partition msftres
3 345MB 400GB 400GB ntfs Win7_C
4 400GB 401GB 416MB pv dev_sda4_luks lvm
6 401GB 616GB 215GB vg_data lvm
8 616GB 616GB 105MB fat16 fedora EFI system partition boot
9 616GB 616GB 210MB ext4 fedora /boot
10 616GB 973GB 357GB vg_fedora /,/var/log,swap
7 973GB 1000GB 26.8GB ntfs Basic data partition hidden, diag
1000GB 1000GB 729kB Free Space
(parted) quit
[root@localhost ~]#
# for such a descriptive names as I have you should use 'name' parted command available for GPT partitions. (i.e. 'name 4 "pv dev_sda4_luks"' ).
# make phisical volume of your LUKS encrypted install available.
[root@localhost ~]# cryptsetup luksOpen /dev/sda10 pv_fedora
# make all logical volumes available as kernel devices
[root@localhost ~]# vgchange -a y
[root@localhost ~]# lvdisplay | grep "LV Path"
LV Path /dev/fedora/root
LV Path /dev/fedora/var_log
LV Path /dev/fedora/swap
[root@localhost ~]# mount /dev/fedora/root /mnt/
[root@localhost ~]# mount /dev/fedora/var_log /mnt/var/log
[root@localhost ~]# mount /dev/sda9 /mnt/boot/
[root@localhost ~]# mount /dev/sda8 /mnt/boot/efi/
[root@localhost ~]# mount -o bind /proc /mnt/proc
[root@localhost ~]# mount -o bind /dev /mnt/dev
[root@localhost ~]# mount -o bind /sys /mnt/sys
[root@localhost ~]# xhost +127.0.0.1
[root@localhost ~]# chroot /mnt
[root@localhost /]# export DISPLAY=:0.0
[root@localhost /]# mount -a
# All above was just to make lost (due to bootloader problems) installation available to us. Now time to reinstall grub.
# making a copy for safety
[root@localhost /]# mkdir /grub-related-backup; cp -r /boot/efi /etc/grub.d /etc/default/grub /grub-related-backup
# Note, that if you changed encryption setup - take care on 'rd.luks.uuid=' params listing encrypted partittions to start on boot.
# Note, that if you changed lvm setup - take care on 'rd.lvm.lv=' params listing lvm partitions required to be present on boot.
# remove part of string 'rhgb quiet' from GRUB_CMDLINE_LINUX in /etc/default/grub, also set 'GRUB_DEFAULT=0' :
[root@localhost /]# vim /etc/default/grub
[root@localhost ~]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=0
GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/swa
p rd.md=0 rd.dm=0 rd.luks.uuid=luks-093dbff3-12a2-494a-848
5-0991a5fae3c9 $([ -x /usr/sbin/rhcrashkernel-param ] && /usr/sbin/rhcrashkernel-param || :) vconsole.keymap=us rd.lvm.lv=fedora/root rd.luks.uuid=luks-c949f08e-e051-4392-8ef
7-22e31fee8c9f rd.luks.uuid=luks-14a7989b-3634-42fe-b3a
f-0ea134a2dddb"
GRUB_DISABLE_RECOVERY="true"
GRUB_THEME="/boot/grub2/themes/system/th
eme.txt"
[root@localhost ~]#
# the command below assumes that you reinstall grub with the same configs:
[root@localhost /]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub.cfg ...
Found theme: /boot/grub2/themes/system/theme.txt
Found linux image: /boot/vmlinuz-3.7.6-201.fc18.x86_64
Found initrd image: /boot/initramfs-3.7.6-201.fc18.x86_64.im
g
Found linux image: /boot/vmlinuz-3.7.5-201.fc18.x86_64
Found initrd image: /boot/initramfs-3.7.5-201.fc18.x86_64.im
g
Found linux image: /boot/vmlinuz-3.6.10-4.fc18.x86_64
Found initrd image: /boot/initramfs-3.6.10-4.fc18.x86_64.img
Found Windows 7 (loader) on /dev/sda3
Found Windows Recovery Environment (loader) on /dev/sda7
done
[root@localhost /]# cp /boot/grub2/grub.cfg /boot/efi/EFI/fedora/grub.cfg
[root@localhost /]# grub2-install --efi-directory=/boot/efi --boot-directory /boot --recheck
# if above fails - try specify device, i.e. 'grub2-install --efi-directory=/boot/efi --boot-directory /boot --recheck /dev/sda'
# also this will fail if you didn't choose EFI CD ROM boot option to boot.
[root@localhost /]# sync; sync; exit
[root@localhost /]# reboot