OZ-CUSTOMIZE(1)

πŸ’– OZ-CUSTOMIZE πŸ’–

okay bestie, so this is the manual page for oz-customize β€” it lives in section 1 of the General Commands Manual, and honestly? it's a whole vibe. let's get into it 🫢


✨ NAME ✨

oz-customize β€” a tool to automatically modify installed operating system files


🌸 SYNOPSIS 🌸

oz-customize [OPTIONS] <tdl-file> <libvirt-xml-file>

πŸ¦‹ DESCRIPTION πŸ¦‹

So basically, this is a tool for modifying operating systems that are already installed. What kind of modifications, you ask? typically installing extra packages, ngl. And yes, it can totally be used as the counterpart to oz-install β€” but it does not have to be used in conjunction with it, so it's giving independent queen energy πŸ‘‘

Heads up fr fr: oz-customize does the actual customization using a combination of KVM and libvirt, so BOTH of those need to be available (and actually working) for oz-customize to even have a chance to succeed. no cap. 😭

πŸ’… OPTIONS πŸ’…

  • -c <config> β€” grab the config from the config file config, instead of the default /etc/oz/oz.cfg. If neither one exists, Oz just uses sensible defaults, periodt. The config file is in standard ini format; for the full explanation of the sections and keys, go peek at the CONFIGURATION FILE section below πŸ‘€
  • -d <loglevel> β€” turn on debugging output at level loglevel. The log levels are:

0 β€” errors only (this is the default ✨)

1 β€” errors and warnings

2 β€” errors, warnings, and information

3 β€” all messages

4 β€” all messages, prepended with the level and classname

  • -h β€” print a short help message. short king behavior πŸŽ€

πŸŽ€ CONFIGURATION FILE πŸŽ€

The Oz configuration file is in standard INI format with several sections. If any section or configuration key is missing, Oz will use a sensible default β€” it's very forgiving like that πŸ’–. For true/false configuration keys, the values of "true", "True", "yes", or "Yes" can be used to turn the option on, and "false", "False", "no", or "No" can be used to turn the behavior off. The configuration file should have the following form:

[paths]
output_dir = /var/lib/libvirt/images
data_dir = /var/lib/oz
screenshot_dir = .
sshprivkey = /etc/oz/id_rsa-icicle-gen

[libvirt]
uri = qemu:///system
type = kvm
bridge_name = virbr0
cpus = 1
memory = 1024
image_type = raw

[cache]
original_media = yes
modified_media = no
jeos = no

[icicle]
safe_generation = no

🌈 the paths section

This section defines the paths that Oz will use for storing data.

  • The output_dir key describes where to store the images after they are built. πŸ“¦
  • The data_dir key describes where to cache install media and use temporary storage.
  • Both locations must have a decent amount of free disk space in order for Oz to work properly β€” like, do not skimp on this one bestie, it will not go well 😭
  • The screenshot_dir key describes where to store screenshots of failed installs. (receipts of the flop πŸ™ˆ)
  • The sshprivkey key describes where the ssh keys are stored, which are required by Oz to do customization of the image.

πŸ’œ the libvirt section

This section allows some manipulation of how Oz uses libvirt.

  • The uri key describes the libvirt URI to use to do the guest installation.
  • The type key defines what type of virtualization to use.
  • The bridge_name key defines which bridge Oz should place the guests that it launches on.
  • The cpus key defines how many cpus should be used inside the virtual machine.
  • The memory key defines how much memory (in megabytes) should be used inside the virtual machine.
  • The image_type key defines which output disk type should be used; this can be any value that libvirt supports. slay, flexible ✨

πŸ“ the cache section

This section allows some manipulation of how Oz caches data. Caching in Oz is a whole tradeoff between installation time and storage space, iykyk.

  • The original_media key tells Oz to cache the original installation media so that it does not have to download it the next time an install for the same operating system is requested.
  • The modified_media key tells Oz to cache the oz-modified installation media so that it does not have to download and modify it the next time an install for the same operating system is requested.
  • The jeos key tells Oz to cache the installed operating system after installation. This can significantly speed up subsequent installation of the same operating system, with the additional downside of the operating system getting out-of-date with respect to security updates. Use with care. ⚠️
not me warning you twice: jeos = fast, but also potentially stale and missing security updates. use with care fr.

🧚 the icicle section

This section allows some manipulation of how Oz generates ICICLE output. ICICLE is a package manifest that can optionally be generated at the end of installs.

  • The safe_generation key controls whether Oz uses a throwaway overlay file while generating the ICICLE.
  • If it is set to "no" (the default), then Oz will boot up the guest at the end of the install and run the appropriate commands to generate the ICICLE.
  • If it is set to "yes", then Oz will use a throwaway overlay file while generating the ICICLE. After the ICICLE is generated, Oz will delete the backing file, leaving the original disk image pristine. immaculate. no notes. πŸ’…

⭐ SEE ALSO ⭐

oz-generate-icicle(1), oz-install(1), oz-cleanup-cache(1), oz-examples(5)


πŸ‘‘ AUTHOR πŸ‘‘

Chris Lalancette <clalancette@gmail.com> β€” the main character who wrote this 🫢


aaaand that's the whole page bestie!! this version is from Dec 2010, part of the oz-customize manual. go forth and customize some operating systems, you absolute icon πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from