USE AT OWN RISK.
This is how I set up my uefi machine to dual boot 64 bit puppy install on windows 10 pc with on gpt HDD with grub 2.0.
You need your puppy frugally installed to a usb stick.
Get bootx64.efix & copy to usb stick.
see http://s000.tinyupload.com/?file_id=417 ... 3557151049
in bios:
turn off secure boot
enable legacy
if TPM in security section, disable and clear.
then:
boot into windows (8 - 10) & go to settings
Select 'choose what power button does' & then extra settings
turn off fast boot and choose sleep wherever hibernate is.
Go to Administrative tools & then disk management
shrink c: drive (making unused space for linux, minimum 30Gb)
reboot - pressing F9 (usually) as booting up to get boot device menu
usb boot your linux distro
use gparted (system menu) to create ext4 partition(s) in unused space.
Mount a linux partition to use (possibly sda6).
Make a folder in it called puppy. Remember these details!
Mount usb drive you booted from. Copy vmlinuz, initrd.gz & all .sfs
files into puppy folder you made. Unmount linux partition.
Mount 32bit windows efi boot partition (usually sda1 or sda2)
rename EFI folder to EFI-w & create new EFI folder.
Inside it, create boot folder.
Copy bootx64.efix into boot folder & rename to bootx64.efi
Inside boot folder, create puppy folder.
Copy vmlinuz & initrd.gz from usb stick into puppy folder. Unmount usb stick.
Go back to root of efi boot partition & create grub.cfg
Edit grub.cfg to look like this (ASSUMES LINUX ON SDA6):
#
set default="0"
set timeout=5
menuentry "Puppy" {
linux /EFI/boot/puppy/vmlinuz psubdir=puppy pfix=fsck root=/dev/sda6 rootwait ro
initrd /EFI/boot/puppy/initrd.gz
}
menuentry "Windows" {
insmod part_gpt
insmod chain
chainloader /EFI-w/Microsoft/Boot/bootmgfw.efi
}
#
Should now be able to reboot into puppy. Remove usb stick after reboot starts.
VITAL NOTE: Every time you run windows update, it will break
the boot loader. Must boot via usb & fix.
My UEFI dual boot method
Re: My UEFI dual boot method
That is because you replaced the windows boot installation with the Puppy installation. You fool Windows into believing its boot installation is still there, so it maintains it. You can put the Puppy boot installation next to the windows installation under /EFI/ (I think, will have to look at home). Then you should look if you find it in the EFI bios: probably not , because it is not a complete installation of grub, just a binary. You can solve that by installing refind as well, next to it. That will be in bios and you can configure it to chainload windows or the grub for Puppy or even start Puppy directly. That is roughly how fatdog (first I think), slacko, quirky and other Puppies do it also.ozsouth wrote:VITAL NOTE: Every time you run windows update, it will break the boot loader. Must boot via usb & fix.
You probably mean vfat32 partition with esp boot flag.Mount 32bit windows efi boot partition (usually sda1 or sda2)
Nice description of what you did!
I may try to write out what I have done also.
- Limbomusic
- Posts: 267
- Joined: Fri 15 Apr 2016, 14:07
- Location: Norway
- Contact:
cool
Hope its okay to chime in with:
The excellent LICK by noryb009 may be the easiest way to dual boot a win10 machine with puppy linux. (uefi or not) especially for newcomers.
https://github.com/noryb009/lick
(Which I mirrored at http://helledussen.com/linux/files/LICK-1.2.0-win32.exe)
You just run lick. (for me, it took some time installing the boot-loader but just wait, it finishes eventually)
Then just drag any puppy-ISO over and it will get added to boot-menu.
If u get "partition hibernated by windows" - boot into windows - right click start button-> "Windows power-shell-Admin" and type in:
powercfg -h off
and reboot
The excellent LICK by noryb009 may be the easiest way to dual boot a win10 machine with puppy linux. (uefi or not) especially for newcomers.
https://github.com/noryb009/lick
(Which I mirrored at http://helledussen.com/linux/files/LICK-1.2.0-win32.exe)
You just run lick. (for me, it took some time installing the boot-loader but just wait, it finishes eventually)
Then just drag any puppy-ISO over and it will get added to boot-menu.
If u get "partition hibernated by windows" - boot into windows - right click start button-> "Windows power-shell-Admin" and type in:
powercfg -h off
and reboot