NAME¶
mkuzip —
compress disk image for use
with geom_uzip(4) class
SYNOPSIS¶
mkuzip |
[-v]
[-o
outfile]
[-s
cluster_size]
infile |
DESCRIPTION¶
The
mkuzip utility compresses a disk image file so that the
geom_uzip(4) class will be able to decompress the resulting
image at run-time. This allows for a significant reduction of size of disk
image at the expense of some CPU time required to decompress the data each
time it is read. The
mkuzip utility works in two phases:
- An infile image is split into
clusters; each cluster is compressed using zlib(3).
- The resulting set of compressed clusters along with
headers that allow locating each individual cluster is written to the
output file.
The options are:
- -o
outfile
- Name of the output file outfile. The
default is to use the input name with the suffix
.uzip.
- -s
cluster_size
- Split the image into clusters of
cluster_size bytes, 16384 bytes by default. The
cluster_size should be a multiple of 512 bytes.
- -v
- Display verbose messages.
NOTES¶
The compression ratio largely depends on the cluster size used. For large
cluster sizes (16K and higher), typical compression ratios are only 1-2% less
than those achieved with
gzip(1). However, it should be kept
in mind that larger cluster sizes lead to higher overhead in the
geom_uzip(4) class, as the class has to decompress the whole
cluster even if only a few bytes from that cluster have to be read.
The
mkuzip utility inserts a short shell script at the
beginning of the generated image, which makes it possible to “run”
the image just like any other shell script. The script tries to load the
geom_uzip(4) class if it is not loaded, configure the image
as an
md(4) disk device using
mdconfig(8),
and automatically mount it using
mount_cd9660(8) on the
mount point provided as the first argument to the script.
EXIT STATUS¶
The
mkuzip utility exits 0 on success, and >0 if
an error occurs.
SEE ALSO¶
gzip(1),
zlib(3),
geom(4),
geom_uzip(4),
md(4),
mdconfig(8),
mount_cd9660(8)
AUTHORS¶
Maxim Sobolev ⟨sobomax@FreeBSD.org⟩