|
|
(17 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
|
| |
|
| One way to completely re-build images is to use a script like [https://github.com/alpinelinux/alpine-make-vm-image alpine-make-vm-image].
| | == ISO remastering == |
|
| |
|
| But there is also an alternative:
| | There are third party scripts to re-build completely custom images, like |
| | * [https://github.com/alpinelinux/alpine-make-vm-image alpine-make-vm-image] |
| | (works to only make a disk based VM image) |
|
| |
|
| == Live Disk customizations with APKOVL configurations ==
| | and there is Alpine's original |
| | * [[How_to_make_a_custom_ISO_image_with_mkimage|mkimg]]. |
| | (creates a diskless ISO file - usually what you want for QEMU and Proxmox) |
|
| |
|
| The "diskless" Alpine ISO images seem to look for an .apkovl volume in system partitions, and offer to save local backups and package cache to mountpoints below /media/. (Besides supporting a boot parameter that points to a web server.)
| |
|
| |
|
| So
| |
| * Boot the diskless system from ISO, and if necessary create and format a partition.
| |
| * Edit /etc/fstab and mount the writable partition below /media/.
| |
| * Run alpine-setup and choose to save the state to the mounted partition.
| |
| * Customize the system.
| |
| * Generate an APKOVL file with [[Alpine_local_backup|lbu]] by executing <code>lbu commit</code>
| |
|
| |
|
| (If instead you put the APKOVL file on a webserver, you would need to supply a custom url with the <code>APKOVL</code> kernel boot parameter.)
| | == An alternative == |
| | |
| | It's also possible to commit and load ISO image customizations to and from a writable partition when booting in [[Installation#Diskless_Mode|Diskless Mode]]. |
|
| |
|
| Notes:
| |
|
| |
|
| * Any packages you add to /etc/apk/world of your lbu will automatically be installed in the live system.
| |
| * See [[Alpine_Linux_package_management#Local_Cache]] about managing included packages.
| |
| * If you don't have a web server you can run busybox's httpd temporarily - <code>busybox httpd -p 127.0.0.1:80</code>
| |
| * See [[Alpine_local_backup|lbu]] about how to customize it to cover files outside of <code>/etc</code>.
| |
| * If you want to make a customized installer, you need to create <code>.default_boot_services</code> which will cause <code>mkinitfs</code> to create the defaults for the live image.
| |
|
| |
|
| == Booting an ISO image with local customizations == | | == Booting an ISO image with local customizations == |
|
| |
|
| Example: Booting and customizing an ISO image with an .apkovl in a [[Qemu#Live_mode| Qemu]] virtual machine.
| | * [[Directly booting an ISO file]] |
| | |
| Debian's grub-imageboot package is a way to boot .iso files directly.
| |
|
| |
|
| [[Category:Package Manager]] | | [[Category:Package Manager]] |
| [[Category:ISO]] | | [[Category:ISO]] |
ISO remastering
There are third party scripts to re-build completely custom images, like
(works to only make a disk based VM image)
and there is Alpine's original
(creates a diskless ISO file - usually what you want for QEMU and Proxmox)
An alternative
It's also possible to commit and load ISO image customizations to and from a writable partition when booting in Diskless Mode.
Booting an ISO image with local customizations