### Install Docker on Ubuntu Source: https://github.com/uyuni-project/uyuni-docs/blob/master/docs/container-setup.md Installs Docker, enables and starts the Docker service, and adds the current user to the docker group. ```bash sudo apt-get install -y docker.io sudo systemctl enable --now docker sudo usermod -aG docker $USER # log out and back in after this ``` -------------------------------- ### Install {productname} Packages on {sl-micro} Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/mlm/server-air-gapped-deployment-mlm.adoc Installs the necessary tools and container images for {productname} Server on {sl-micro} in an air-gapped setup. Replace $ARCH$ with your system's architecture. ```shell transactional-update pkg install mgradm* mgrctl* suse-multi-linux-manager-5.2-$ARCH$-server-* ``` -------------------------------- ### Container Setup: Build and Use `uyuni-docs-builder` Image Source: https://context7.com/uyuni-project/uyuni-docs/llms.txt This section details setting up the local build environment using a Docker container. It covers installing Task, cloning the repository, building the container image, opening an interactive shell, running arbitrary tasks within the container, and cleaning build artifacts. ```bash # Install Task on the host (the only required host dependency) sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin # Clone the repository git clone https://github.com/uyuni-project/uyuni-docs.git cd uyuni-docs # Build the container image (once, or after Dockerfile.bci changes) task container:build # Runs: podman build -t uyuni-docs-builder:latest -f Dockerfile.bci . # Open an interactive shell for debugging task container:shell # Runs: podman run --rm -it -v $(pwd):/docs:Z -w /docs uyuni-docs-builder:latest bash # Run any arbitrary task inside the container task container:run -- pdf BOOK=administration PRODUCT=mlm LANG=en # Clean all build artifacts task clean # Removes: build/ translations/ .cache/ ``` -------------------------------- ### Install Saline during initial installation or upgrade Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/salt/salt-monitoring.adoc Use this command to deploy Saline with one replica during the initial setup or an upgrade of the {productname} server. ```bash mgradm install podman --saline-replicas 1 ``` -------------------------------- ### Example: Service Management with Salt State Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/salt/salt-custom-states.adoc Ensure a service is running and enabled to start on boot. This example targets the 'chronyd' service. ```yaml time_service_id: service.running: - name: chronyd - enable: True ``` -------------------------------- ### Start YaST for Uyuni Setup Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/retail/pages/retail-uyuni-server-setup.adoc Initiates the YaST configuration tool on the Uyuni Server to begin the setup process. ```bash yast2 ``` -------------------------------- ### Start Schema Upgrade and Get Information Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/troubleshooting/tshoot-schema-upgrade-fails.adoc Run this command on the container host to start the schema upgrade process and view detailed logs for troubleshooting. ```bash mgradm start ``` -------------------------------- ### Start and Enable Containerized Proxy Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/proxy-migration-uyuni.adoc Start the new containerized proxy service and enable it to start on boot. ```bash systemctl start uyuni-proxy-pod systemctl enable --now uyuni-proxy-pod ``` -------------------------------- ### Example: Set Up External Storage and Database Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/hardware-requirements.adoc An example of the `mgr-storage-server` command, specifying two separate devices for storage and the database. ```shell mgr-storage-server /dev/nvme1n1 /dev/nvme2n1 ``` -------------------------------- ### Install Proxy with Configuration Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/proxy-deployment-uyuni.adoc Install the proxy on the container host using the `mgrpxy install` command, providing the downloaded configuration archive. This command prepares the proxy environment. ```bash mgrpxy install podman config.tar.gz ``` -------------------------------- ### Re-run {productname} Setup Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/public-cloud-guide/troubleshooting/tshoot-public-cloud-setup-separate-disk-byos.adoc After restoring data, re-initiate the {productname} setup process to resolve any previously failed service restarts. ```bash yast2 susemanager_setup ``` -------------------------------- ### Install a package Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/salt/salt-command.adoc Use the pkg.install function to install a specified package on target clients. ```bash salt '*' pkg.install yast2 ``` -------------------------------- ### Install Go Source: https://github.com/uyuni-project/uyuni-docs/blob/master/docs/local-toolchain-setup.md Installs the Go programming language. For openSUSE/SLES, use zypper. For Ubuntu, use apt. The upstream binary installation is recommended for the latest version. ```bash sudo zypper install go ``` ```bash sudo apt-get install -y golang-go ``` ```bash GO_VERSION=1.24.3 curl -fsSL https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz | sudo tar -C /usr/local -xz echo 'export PATH="/usr/local/go/bin:$PATH"' >> ~/.bashrc && source ~/.bashrc ``` ```bash go version ``` -------------------------------- ### Install Task Build Tool Source: https://github.com/uyuni-project/uyuni-docs/blob/master/docs/container-setup.md Installs the Task build tool from its official installation script, placing the binary in ~/.local/bin. ```bash sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin ``` -------------------------------- ### Install {productname} Proxy with Custom Container Image Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/mlm/proxy-deployment-vmdk-mlm.adoc Use these parameters to override the default image version and registry path for a specific service during installation. The example shows how to set custom tags and image paths for the httpd service. ```bash mgrpxy install podman --httpd-tag 0.1.0 --httpd-image registry.opensuse.org/uyuni/proxy-httpd /path/to/config.tar.gz ``` -------------------------------- ### Install yomi-formula Package Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/salt/salt-formula-yomi.adoc Install the yomi-formula package on the {productname} Server using zypper. ```bash zypper in yomi-formula ``` -------------------------------- ### Example: Create Container Volumes Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/partials/snippet-register-proxy-mlm.adoc Example of using the `mgr-storage-proxy` command to move persistent storage to `/dev/nvme1n1`. ```bash mgr-storage-proxy /dev/nvme1n1 ``` -------------------------------- ### Setup Swapfile Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/hardware-requirements.adoc This sequence of commands sets up an 8GiB swap file at /var/swap, disables copy-on-write, restricts access to root, formats it for swap, and activates it for the running system. Run these commands as the root user. ```bash # allocate 8GiB for swap file fallocate -l 8G /var/swap ``` ```bash # ensure CoW is disabled for the swap file chattr +C /var/swap ``` ```bash # allow only root access chmod 600 /var/swap ``` ```bash # make swap file based on allocated file mkswap /var/swap ``` ```bash # activate swap use for the running system swapon /var/swap ``` -------------------------------- ### Install Uyuni Proxy Pattern Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/retail/pages/retail-uyuni-branchserver.adoc Install the Uyuni proxy pattern on the branch server. This is a prerequisite for configuring the proxy. ```bash zypper in -t pattern uyuni_proxy ``` -------------------------------- ### Install a Formula with Zypper Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/salt/salt-formulas-by-product.adoc Install a selected Salt formula on the Uyuni Server using the zypper package manager. ```bash zypper in ``` -------------------------------- ### Install K3s Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/proxy-k3s-deployment-uyuni.adoc Install K3s on the container host machine. Replace with the actual FQDN of your K3s host. ```bash curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--tls-san=" sh - ``` -------------------------------- ### Start the {productname} {productnumber} Server Container Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-management/start-and-stop-containers.adoc Use this command to start the {productname} {productnumber} Server container if it is not already running. This command initiates the container's services. ```bash # mgradm start 5:21PM INF Welcome to mgradm 5:21PM INF Executing command: start ``` -------------------------------- ### Cobbler Sync Start Log Example Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/troubleshooting/tshoot-highsynctimesoverwan.adoc This log entry indicates the start of the cobbler sync process, showing the execution of pre-sync triggers. ```log Thu Jun 3 14:47:35 2021 - DEBUG | running python triggers from /var/lib/cobbler/triggers/task/sync/pre/* Thu Jun 3 14:47:35 2021 - DEBUG | running shell triggers from /var/lib/cobbler/triggers/task/sync/pre/* ``` -------------------------------- ### Install Uyuni Configuration Modules Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/salt/salt-config-modules.adoc Install the uyuni-config-modules package on the Uyuni Server using zypper. This package includes API descriptions, pillar settings, and examples. ```bash zypper in uyuni-config-modules ``` -------------------------------- ### Build Go Binary and Generate Configs Source: https://github.com/uyuni-project/uyuni-docs/blob/master/docs/local-toolchain-setup.md Runs initial setup tasks after cloning the repository to compile the Go binary and generate Antora configuration files. ```bash task setup # Compiles cmd/docbuild → .bin/docbuild ``` ```bash task gen # Generates all Antora/site configs from config.yml ``` -------------------------------- ### Example OS Release Output Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/common-workflows/pages/workflow-product-upgrade-webui.adoc This is an example of the expected output after a successful product upgrade, showing the new version details. Compare this to your client's output. ```bash NAME="SLES" VERSION="15-SP5" VERSION_ID="15.5" PRETTY_NAME="SUSE Linux Enterprise Server 15 SP5" ID="sles" ID_LIKE="suse" ANSI_COLOR="0;32" CPE_NAME="cpe:/o:suse:sles:15:sp5" DOCUMENTATION_URL="https://documentation.suse.com/" ``` -------------------------------- ### Install {productname} with Podman (Third-Party Certs) Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/partials/snippet-step-deploy-podman-certs.adoc Use this command when importing SSL certificates using third-party SSL certificate flags. Adjust the flags as needed if not all certificates are required. Replace `` and certificate paths with your specific values. ```shell mgradm install podman \ --ssl-ca-intermediate \ --ssl-ca-root \ --ssl-server-cert \ --ssl-server-key \ --ssl-db-ca-intermediate \ --ssl-db-ca-root \ --ssl-db-cert \ --ssl-db-key ``` -------------------------------- ### Install Uyuni Container Tools Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/server-deployment-uyuni.adoc Installs essential Uyuni container management tools, including `mgradm`, `mgrctl`, and storage setup utilities, required for deploying the Uyuni server as a container. ```shell zypper in mgradm mgrctl mgradm-bash-completion mgrctl-bash-completion uyuni-storage-setup-server ``` -------------------------------- ### Install {productname} with Podman (Self-Signed Certs) Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/partials/snippet-step-deploy-podman-certs.adoc Use this command when {productname} is using self-signed certificates. Replace `` with your server's fully qualified domain name. ```shell mgradm install podman ``` -------------------------------- ### Get Information About a Specific Formula with Zypper Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/salt/salt-formulas-by-product.adoc Retrieve detailed information about a particular Salt formula before installation. ```bash zypper info ``` -------------------------------- ### Configure Proxy Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/retail/pages/retail-uyuni-branchserver.adoc Finalize the proxy setup by running the configure-proxy.sh script. This script is interactive and guides through the remaining configuration steps. ```bash configure-proxy.sh ``` -------------------------------- ### Example Kickstart URL Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/client-configuration/pages/autoinst-cdrom.adoc An example of an IP address-based kickstart URL. Ensure the distribution defined by the IP range matches the one from which the ISO is being built to avoid errors. ```shell http://`my.manager.server`/kickstart/ks/mode/ip_range ``` -------------------------------- ### Add cryptography keys to a Kickstart profile Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/kickstart.adoc Adds cryptography keys to a Kickstart profile, typically for secure package installation or system setup. ```bash usage: kickstart_addcryptokeys PROFILE ``` -------------------------------- ### Define Custom Kickstart Partition Snippet Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/client-configuration/pages/autoinst-profiles.adoc This example sets up a Kickstart snippet for a common hard drive partition configuration. It defines partitions for /boot, /, swap, and logical volumes. ```kickstart clearpart --all part /boot --fstype ext3 --size=150 --asprimary part / --fstype ext3 --size=40000 --asprimary part swap --recommended part pv.00 --size=1 --grow volgroup vg00 pv.00 logvol /var --name=var vgname=vg00 --fstype ext3 --size=5000 ``` -------------------------------- ### Import a raw Kickstart or {ay} profile from a file Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/kickstart.adoc Imports a raw Kickstart or {ay} profile from a file, with options to specify name, distribution, and virtualization type. ```bash usage: kickstart_import_raw [options] options: -f FILE -n NAME -d DISTRIBUTION -v VIRT_TYPE ['none', 'para_host', 'qemu', 'xenfv', 'xenpv'] ``` -------------------------------- ### Example: Package Management with Salt State Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/salt/salt-custom-states.adoc This state ensures specific packages are installed, with an option to refresh the package list beforehand. It supports version pinning. ```yaml my_pkg_id: pkg.installed: - refresh: True - pkgs: - glibc - kernel-default - hello: 1.0-42 ``` -------------------------------- ### Example Dockerfile Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/image-management.adoc A sample Dockerfile demonstrating the use of ARG parameters to associate the built image with a specific repository and allow building different versions of the operating system. ```dockerfile FROM registry.example.com/sles12sp2 MAINTAINER Tux Administrator "tux@example.com" ``` -------------------------------- ### Enable and Start Prometheus Service Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/monitoring.adoc Enable the Prometheus service to start on boot and start it immediately. ```shell systemctl enable --now prometheus ``` -------------------------------- ### Install {productname} Proxy Packages on {sl-micro} Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/mlm/proxy-air-gapped-deployment-mlm.adoc Install the necessary proxy and management packages on {sl-micro} for an air-gapped deployment. Replace $ARCH$ with your system's architecture. ```shell transactional-update pkg install mgrpxy* mgrctl* suse-multi-linux-manager-5.2-$ARCH$-proxy-* ``` -------------------------------- ### Install Uyuni Proxy with Podman (No Tuning Files) Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/migrate-uyuni-proxy-from-micro55-tumbleweed.adoc Install the Uyuni proxy using `mgrpxy` with Podman. If no tuning files were used or saved, omit the `--tuning-httpd` and `--tuning-squid` parameters. ```shell # If you have no tuning files, remove the tuning parameters: ``` -------------------------------- ### Enable and Start Grafana Service Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/monitoring.adoc Commands to enable the Grafana service to start on boot and start it immediately. ```shell systemctl enable --now grafana-server ``` -------------------------------- ### Import a Kickstart profile from a file Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/kickstart.adoc Imports a Kickstart profile from a specified file, allowing configuration of its name, distribution, and virtualization type. ```bash usage: kickstart_import [options] options: -f FILE -n NAME -d DISTRIBUTION -v VIRT_TYPE ['none', 'para_host', 'qemu', 'xenfv', 'xenpv'] ``` -------------------------------- ### Verify Task Installation Source: https://github.com/uyuni-project/uyuni-docs/blob/master/docs/container-setup.md Checks the installed version of the Task build tool to confirm successful installation. ```bash task --version ``` -------------------------------- ### Start Uyuni Proxy Containers Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/proxy-container-setup-uyuni.adoc Use the 'mgrpxy start' command to initiate the Uyuni Proxy container pod. Verify the status with 'podman ps'. ```bash mgrpxy start uyuni-proxy-pod ``` ```bash podman ps ``` -------------------------------- ### Verify Podman or Docker Installation Source: https://github.com/uyuni-project/uyuni-docs/blob/master/docs/container-setup.md Checks the installed version of Podman or Docker to confirm successful installation. ```bash podman --version # or docker --version ``` -------------------------------- ### Install mgrpxy Package Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/proxy-k3s-deployment-uyuni.adoc Install the mgrpxy package on Leap Micro using transactional-update. A reboot is required after installation. ```bash transactional-update pkg install mgrpxy ``` -------------------------------- ### Install open-vm-tools Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/common-workflows/pages/workflow-install-from-raw-image.adoc Install the open-vm-tools package using transactional-update for systems that require VMware Tools. A reboot is necessary after installation. ```bash transactional-update pkg install open-vm-tools ``` -------------------------------- ### Install Podman and {productname} Server Package Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/partials/snippet-prepare-sles-host.adoc Installs the 'podman' package along with the {productname} Server product package on the server. Ensure you have root privileges before executing these commands. ```shell zypper in podman zypper in -t product Multi-Linux-Manager-Server-SLE ``` -------------------------------- ### Copy Installation Files using mgradm Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/client-configuration/pages/autoinst-distributions.adoc After installing the `tftpboot-installation` package, use `mgradm` to copy the extracted installation files. ```bash # mgradm distribution copy /opt/tftpinstall/usr/share/tftpboot-installation/ ``` -------------------------------- ### Install Helm Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/proxy-k3s-deployment-uyuni.adoc Download and install the Helm package manager using the official installer script. Ensure the script is executable before running. ```bash curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 chmod 700 get_helm.sh ./get_helm.sh ``` -------------------------------- ### List Available Kickstart Trees with spacecmd Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/distribution.adoc Use this command to list all available autoinstall trees. ```bash usage: distribution_list ``` -------------------------------- ### Install Task Build Runner Source: https://github.com/uyuni-project/uyuni-docs/blob/master/docs/local-toolchain-setup.md Installs the Task build runner, which replaces Make. Ensure the installation directory is added to your PATH. ```bash sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin ``` ```bash task --version ``` -------------------------------- ### Enable start_event_grains Configuration Helper Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/troubleshooting/tshoot-passing-grains-to-start-event.adoc Use this command on the {productname} Server to enable the `start_event_grains` configuration helper. This adds the necessary configuration to the client's configuration file, which will be applied upon client restart. ```bash salt '*' state.sls util.mgr_start_event_grains ``` -------------------------------- ### Enable and Start Podman Service Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/server-deployment-uyuni.adoc Enables the Podman service to start on boot and starts it immediately. This ensures Podman is ready for container operations. ```shell systemctl enable --now podman.service ``` -------------------------------- ### Set Up External Storage Server Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/pubcloud-requirements.adoc This command initializes an external storage volume, creating an XFS partition mounted at `/manager_storage`. It configures this location for {productname} databases and repositories. ```bash /usr/bin/mgr-storage-server ``` -------------------------------- ### Navigate to Bootstrap Directory Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/client-configuration/pages/registration-bootstrap.adoc Change to the bootstrap directory on your {productname} Server as the root user. ```bash cd /srv/www/htdocs/pub/bootstrap/ ``` -------------------------------- ### Install Python Package with Pip Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/client-configuration/pages/contact-methods-saltbundle.adoc Use this command to install a Python package into the Salt Bundle's environment. The package is installed in /var/lib/venv-salt-minion/local by default. ```bash salt pip.install ``` -------------------------------- ### Create a package profile for a system Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/system.adoc Create a package profile for a specified system. Options allow setting a name and description for the profile. ```bash usage: system_createpackageprofile SYSTEM [options] options: -n NAME -d DESCRIPTION ``` -------------------------------- ### Install Uyuni Server Pattern Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/retail/pages/retail-install-uyuni.adoc Install the Uyuni Server pattern package. This command requires root privileges and installs the core Uyuni Server components. ```shell zypper in patterns-uyuni_server ``` -------------------------------- ### Enter {productname} Server Container Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/auth-methods-pam.adoc Access the {productname} server container to perform configuration tasks. ```bash mgrctl term ``` -------------------------------- ### Install Uyuni Retail Pattern Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/retail/pages/retail-install-uyuni.adoc Install the Uyuni Retail pattern package. This command requires root privileges and installs the necessary components for the Uyuni Retail Server. ```shell zypper in patterns-uyuni_retail ``` -------------------------------- ### Start migration to SUSE Linux Micro 6.2 Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/mlm/migrations/server/server-mlm-51-52.adoc Initiate the migration process to upgrade the base OS and {productname} Server. This command automatically agrees to licenses and imports GPG keys. ```console transactional-update migration --auto-agree-with-licenses --gpg-auto-import-keys ``` -------------------------------- ### Manually Install Retracted Patch Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/patch-management.adoc Use this command to manually install a retracted package by specifying its exact version. This bypasses the normal installation restrictions for retracted patches. ```bash zypper install vim-8.0.1568-5.14.1 ``` -------------------------------- ### Create a Kickstart profile Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/kickstart.adoc Generates a new Kickstart profile with specified distribution, root password, and virtualization type. ```bash usage: kickstart_create [options] options: -n NAME -d DISTRIBUTION -p ROOT_PASSWORD -v VIRT_TYPE ['none', 'para_host', 'qemu', 'xenfv', 'xenpv'] ``` -------------------------------- ### Install Uyuni Tools and Prerequisites on Tumbleweed Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/migrate-uyuni-server-from-micro55-tumbleweed.adoc Add the Uyuni Stable repository and install essential tools like mgradm, mgrctl, and uyuni-storage-setup-server. Explicitly install podman if needed. ```shell zypper ar https://download.opensuse.org/repositories/systemsmanagement:/Uyuni:/Stable/images/repo/Uyuni-Server-POOL-x86_64-Media1 uyuni-server-stable zypper ref zypper in mgradm mgrctl mgradm-bash-completion mgrctl-bash-completion uyuni-storage-setup-server ``` ```shell zypper in podman ``` -------------------------------- ### Local Toolchain Setup and Publish Tasks Source: https://github.com/uyuni-project/uyuni-docs/blob/master/docs/toolchain-migration/README.md Commands for setting up the local toolchain, regenerating configurations, and publishing builds. Includes tasks for cleaning up build artifacts. ```bash # First-time setup task setup # Build the Go docbuild binary task gen # Regenerate Antora/site configs from config.yml # Publish builds task publish:dsc # Full MLM publish — HTML + PDFs + zips task publish:uyuni # Full Uyuni publish task publish:webui-mlm # MLM WebUI publish task publish:webui-uyuni # Uyuni WebUI publish # Individual targets task draft:mlm-dsc task pdf:mlm task obs:mlm task obs:uyuni task validate:mlm task clean # Remove build/, translations/, .cache/ ``` -------------------------------- ### Install tftpboot-installation Package Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/client-configuration/pages/autoinst-distributions.adoc Install the `tftpboot-installation` package to extract files for autoinstallation on SUSE systems. This command installs the package into a specified root directory to avoid system restarts. ```bash # mkdir /opt/tftpinstall # zypper --installroot /opt/tftpinstall install tftpboot-installation-SLE-Micro-5.5-x86_64 ``` -------------------------------- ### Enable Attestation Container during {productname} Installation Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/confidential-computing.adoc To enable the attestation container during {productname} installation, use the 'mgradm install podman' command and add the CoCo configuration to the 'mgradm.yaml' file. ```yaml coco: replicas: 1 ``` -------------------------------- ### Example Download Time Calculation Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/specialized-guides/pages/large-deployments/hardware-reqs.adoc An example calculation demonstrating the download time for 400 MB of upgrades to 3000 clients over a 1 GB/s link. ```plaintext 400 MB * 3000 / 119 MB/s / 60 = 169 min ``` -------------------------------- ### Install Errata Service Dependencies Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/client-configuration/pages/clients-centos.adoc Install necessary dependencies for the errata service. ```shell zypper in perl-Text-Unidecode ``` -------------------------------- ### List available Kickstart profiles Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/kickstart.adoc Displays a list of all available Kickstart profiles on the system. ```bash usage: kickstart_list ``` -------------------------------- ### Show Kickstart profile contents Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/kickstart.adoc Displays the contents of a Kickstart profile as they would be presented to a client during installation. ```bash usage: kickstart_getcontents LABEL ``` -------------------------------- ### Install Prometheus Package Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/monitoring.adoc Use this command to install the Prometheus package on the monitoring server. ```shell zypper in golang-github-prometheus-prometheus ``` -------------------------------- ### Install Uyuni Proxy Helm Chart (MLM) Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/mlm/proxy-k3s-deployment-mlm.adoc Install the Uyuni proxy Helm chart using the 'helm install' command. This command is specific to MLM deployments and requires a pre-generated configuration archive. ```shell helm install smlm-proxy \ ``` -------------------------------- ### Install Uyuni Proxy with Podman and Tuning Files Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/installation-and-upgrade/pages/container-deployment/uyuni/migrate-uyuni-proxy-from-micro55-tumbleweed.adoc Install the Uyuni proxy using `mgrpxy` with Podman, specifying the paths to the Apache and Squid tuning files if they were saved and restored. ```shell # With tuning files mgrpxy install podman \ --tuning-httpd /etc/uyuni/proxy/apache.conf \ --tuning-squid /etc/uyuni/proxy/squid.conf ``` -------------------------------- ### Build and Promote Project Environments Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/common-workflows/pages/workflow-switch-to-new-client-tools-channels.adoc Builds the first project environment and then promotes subsequent environments in sequence, with a delay between promotions. Includes a dry-run option. ```python all_envs = client.contentmanagement.listProjectEnvironments(key, project_label) if not all_envs: return first_env_label = all_envs[0]['label'] for i, env in enumerate(all_envs): env_label = env['label'] is_first_env = (env_label == first_env_label) if is_first_env: description = "Build for new client tools channels." client.contentmanagement.buildProject(key, project_label, description) else: client.contentmanagement.promoteProject(key, project_label, env_label) if not dry_run and i < len(all_envs) - 1: log("Waiting 30 seconds before next promotion...") time.sleep(30) ``` -------------------------------- ### 3rd Party SSL Certificate Flags for mgradm install podman Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/administration/pages/ssl-certs-imported.adoc These flags are used with the 'mgradm install podman' command to specify the paths for various SSL certificate files during a new {productname} server installation. ```bash --ssl-ca-intermediate strings Intermediate CA certificate path --ssl-ca-root string Root CA certificate path --ssl-server-cert string Server certificate path --ssl-server-key string Server key path --ssl-db-ca-intermediate strings Intermediate CA certificate path for the database if different from the server one --ssl-db-ca-root string Root CA certificate path for the database if different from the server one --ssl-db-cert string Database certificate path --ssl-db-key string Database key path ``` -------------------------------- ### Add packages to a Kickstart profile Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/reference/pages/spacecmd/kickstart.adoc Specifies packages to be installed as part of the Kickstart installation process. ```bash usage: kickstart_addpackages PROFILE ``` -------------------------------- ### Bootstrap Ubuntu Client Source: https://github.com/uyuni-project/uyuni-docs/blob/master/en/modules/client-configuration/pages/clients-ubuntu.adoc Execute this script on the Ubuntu client to bootstrap it. Replace `` with your Uyuni Server's fully qualified domain name. This method is required for Ubuntu due to its default root user restrictions. ```bash sudo su - curl -Sks https:///pub/bootstrap/bootstrap-script.sh | /bin/bash ```