<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mra</id>
	<title>Alpine Linux - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mra"/>
	<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/wiki/Special:Contributions/Mra"/>
	<updated>2026-04-25T21:28:59Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://wiki.alpinelinux.org/w/index.php?title=Create_UEFI_boot_USB&amp;diff=13686</id>
		<title>Create UEFI boot USB</title>
		<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/w/index.php?title=Create_UEFI_boot_USB&amp;diff=13686"/>
		<updated>2017-07-12T16:28:57Z</updated>

		<summary type="html">&lt;p&gt;Mra: Update file names and correct paths&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This article explains how to create an UEFI boot USB with parted and gummiboot.&lt;br /&gt;
&lt;br /&gt;
In this example we will use {{Path|/dev/sdX}}. This will be different depending on your system.&lt;br /&gt;
&lt;br /&gt;
== Create GPT boot partition ==&lt;br /&gt;
&lt;br /&gt;
Install {{Pkg|parted}}&lt;br /&gt;
{{Cmd | apk add parted }}&lt;br /&gt;
&lt;br /&gt;
Create a single UEFI boot partitions.&lt;br /&gt;
{{warning| this will erase all content of your {{Path|/dev/sdX}}. Make sure that you use correct device}}&lt;br /&gt;
&lt;br /&gt;
{{Cmd | parted --script /dev/sdX mklabel gpt}}&lt;br /&gt;
{{Cmd | parted --script --align{{=}}optimal /dev/sdX mkpart ESP fat32 1MiB 512MiB }}&lt;br /&gt;
{{Cmd | parted --script /dev/sdX set 1 boot on }}&lt;br /&gt;
&lt;br /&gt;
== Create fat32 filesystem ==&lt;br /&gt;
&lt;br /&gt;
Create a fat32 system with the name `Alpine`.&lt;br /&gt;
&lt;br /&gt;
{{Cmd | mkfs.vfat -n Alpine /dev/sdX1 }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Copy content of ISO image to filesystem ==&lt;br /&gt;
&lt;br /&gt;
It is possible to mount the iso image and copy files with {{codeline|cp}} or {{codeline|rsync}} and it is also possible to use {{codeline|7z}} to extract content from the iso. In this example I will use the {{codeline|uniso}} utility from {{Pkg|alpine-conf}} package.&lt;br /&gt;
&lt;br /&gt;
{{Cmd | mount -t vfat /dev/sdX1 /mnt }}&lt;br /&gt;
{{Cmd | cd /mnt &amp;amp;&amp;amp; uniso &amp;lt; /path/to/alpine-3.4.0-x86_64.iso }}&lt;br /&gt;
&lt;br /&gt;
== Copy gummiboot efi binary ==&lt;br /&gt;
&lt;br /&gt;
UEFI will look for a {{Path|EFI/bootx64.efi}} as a fallback efi loader. We copy {{Path|gummibootx64.efi}} to this location.&lt;br /&gt;
&lt;br /&gt;
{{Cmd | mkdir -p /mnt/EFI/Boot }}&lt;br /&gt;
{{Cmd | apk add gummiboot }}&lt;br /&gt;
{{Cmd | cp /usr/lib/gummiboot/gummibootx64.efi /mnt/EFI/Boot/bootx64.efi }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Create configuration files for boot loader ==&lt;br /&gt;
&lt;br /&gt;
We need create some configuration files for gummiboot.&lt;br /&gt;
{{Cmd | mkdir -p loader/entries }}&lt;br /&gt;
&lt;br /&gt;
{{Cat | loader/loader.conf |default alpine&lt;br /&gt;
timeout 4&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The options are taken from {{Path|boot/syslinux/syslinux.cfg}}&lt;br /&gt;
&lt;br /&gt;
{{Cat | loader/entries/alpine.conf |title    Alpine Linux&lt;br /&gt;
linux    /boot/vmlinuz-hardened&lt;br /&gt;
initrd   /boot/initramfs-hardened&lt;br /&gt;
options  modloop{{=}}/boot/modloop-hardened modules{{=}}loop,squashfs,sd-mod,usb-storage quiet&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Finally umount the disk&lt;br /&gt;
{{Cmd | cd ~ &amp;amp;&amp;amp; umount /mnt}}&lt;/div&gt;</summary>
		<author><name>Mra</name></author>
	</entry>
</feed>