fai-mirror(1)

NAME
fai-mirror - create and manage a partial mirror for FAI

SYNOPSIS
fai-mirror [OPTION]... DIRECTORY

DESCRIPTION
This command creates a partial mirror of Debian packages. It can be used to create the fai CD or as a local mirror when you can't download the whole Debian mirror. By default the mirror will contain all packages of all classes used in the configuration space (/srv/fai/config/package_config).

OPTIONS

-a ARCH
    Download packages from architecture ARCH. If not specified, use native architecture of host.

-B  Do not add packages included in base.tar.xz and packages defined in /etc/fai/NFSROOT to the mirror. By default all these packages are included in the mirror. This will explicitly remove packages from the mirror that are already in base.tar.xz. You should not this flag if your nfsroot is old and newer versions of the packages included in base.tar.xz should be included into the mirror.

-b  Create the mirror only from packages names in /srv/fai/config. Do not include packages from /etc/fai/NFSROOT, but also do not remove packages that are in base.tar.xz. This is useful if your partial mirror does not match the Linux distribution of the nfsroot, or if you do not have a nfsroot yet.

-C CFDIR
    Use CFDIR as the configuration directory. Default is /etc/fai. You can also set the environment variable FAI_ETC_DIR.

-c CLASS[,CLASS]
    Use only this list of classes for building the mirror. Can't be used in conjunction with -x.

-h  Show simple help and version.

-G  Create a generic mirror. This option is passed to install_packages. Often used with -I. Only omit -G if you need the package mirror for this exact list of FAI classes.

-I  Ignore conflicts in package dependencies.

    This helps downloading packages in one go that define a conflict to each other (for e.g. grub-pc and grub-efi). Another way is to set -m1, which also avoids package conflicts but will be slower.

-m MAX
    Set the number of packages to NUM. This overwrites the variable MAXPACKAGES.

-x CLASS[,CLASS]
    Exclude these classes. Do not add the packages of these classes to the mirror.

-s  DIRECTORY
    Override the value of FAI_CONFIGDIR set in nfsroot.conf.

-P  FILE
    Copy an APT preferences file into the cache config before creating the mirror. Using this you can set pin priority for packages to a certain release.

-p  Preserve existing sources.list. NOT YET IMPLEMENTED.

-V  Read variable definitions from class/*.var if used in package_config/<classes>.

-v  Create verbose output.

EXAMPLES
   $ fai-mirror -v /files/scratch/mirror Creates a partial mirror in the directory /files/scratch/mirror using all classes.
   $ fai-mirror -v -cDEFAULT,DEMO /debmirror Creates a partial mirror containing all packages used in the classes DEFAULT and DEMO.
   $ fai-mirror -v -cDEFAULT,DEBIAN,DEMO,AMD64,GRUB_PC /srv/debmirror-amd64 This will create a mirror including packages for the amd64 architecture defined for the classes specified. You can also run this on a non amd64 host.
   $ fai-mirror -v -xARM64,ROCKY,UBUNTU,NOBLE,LIVEISO,CLOUD,STANDARD /tmp/large This builds a mirror that is used for the large FAI ISO that's available on the projects home page.

NOTES
You only need root permissions if you access the official Debian mirror via NFS. By default, the variable MAXPACKAGES is set to 1, so conflicting packages can also be added to the mirror. Setting this to a higher number (e.g. 99999) reduces the time for creating the mirror, but some packages may be missing.

SEE ALSO
This program is part of FAI (Fully Automatic Installation). The FAI homepage is https://fai-project.org.

fai-make-nfsroot(8), install_packages(8)

FILES
The FAI configuration file.
The FAI configuration file for the nfsroot.
Package resource definition for FAI.
The FAI package configuration directory. This directory is defined by
    the variable FAI_CONFIGDIR.
The list of packages included in base.tar.xz inside the nfsroot.
Additional packages that were added to the nfsroot by the
    configuration file /etc/fai/NFSROOT.

AUTHOR
Thomas Lange <lange@cs.uni-koeln.de>