SUSE Linux and openSUSE Knowledge Patch
Identify the exact product, release or service pack, architecture, enabled modules, and installation or migration path before applying guidance. Leap and SLES can intentionally differ even when packages or workloads are compatible.
Read the reference file for every affected subsystem. Treat support boundaries, technology previews, removals, and migration-only compatibility behavior as operational constraints.
Reference index
| Reference | Topics |
|---|---|
| administration-desktop.md | systemd, Cockpit, desktop sessions, audio, tuning, cgroups, Kdump |
| installation-migration.md | Agama, upgrades, lifecycle, repositories, boot parameters, recovery |
| kernel-hardware.md | kernel behavior, BPF, scheduling, limits, drivers, errata |
| networking-services.md | NetworkManager, firewalld, NFS, BIND, DHCP, Dovecot, hostnames |
| packages-runtimes.md | package removals, repositories, runtimes, databases, compatibility libraries |
| platforms.md | IBM Z, POWER, Arm, x86-64, firmware, boot, cryptography |
| security-identity.md | SELinux, AppArmor, SSH, sudo, SSSD, FIPS, LDAP, identity |
| storage-filesystems.md | Btrfs, mount semantics, LUKS2, XFS, unsupported and removed file systems |
| virtualization-containers.md | QEMU, libvirt, KubeVirt, Xen, SEV, TDX, containers, HA |
Breaking migrations and removals
Choose the supported migration mechanism
- Patch an SLES source fully before a service-pack upgrade.
- Do not skip service packs without the required LTSS entitlement.
- Use
opensuse-migration-toolfor the supported Leap migration path. - Use the offline Distribution Migration System for SLES 16 migration; do not migrate while the source system continues running.
- Treat SLE 15 SP7 as the only accepted SLES 16.0 source and expect incomplete 16.0 migration coverage.
- Do not treat AutoYaST input as a drop-in Agama configuration.
- Plan recovery from an Agama console or runlevel 3 because its images have no separate rescue system.
- Keep an RMT server on SLE 15 when serving SLES 16.0 clients.
- Read installation-migration.md before changing repositories, boot parameters, or deployment automation.
Replace removed administration and compatibility stacks
- Replace YaST manual administration with Cockpit where a supported Cockpit module exists.
- Replace SysV
init.dandrc<service>controls with native systemd units. - Replace network teaming with NetworkManager bonding.
- Replace
sapconfwithsaptuneand migrate selected SAP tuning assumptions. - Replace SLE HA Pacemaker 2 and Corosync 2 assumptions with their version 3 interfaces and install fence agents as individual packages.
- Replace NIS identity service with LDAP.
- Retire WBEM/SBLIM integrations; no direct replacement is supplied.
- Replace Redis with Valkey and ISC
dhcpdwith Kea; migrate configuration and automation rather than only renaming packages. - Replace
docker-runcorcrunassumptions withruncwhere applicable.
Account for removed platform capabilities
- Do not plan transactional updates on SLES 16; use SLE Micro for that model.
- Migrate OCFS2 to HA-provided GFS2 and retire ReiserFS, HFS+, UFS, quota-v1, and unsupported Btrfs-feature dependencies.
- Port GTK2, Qt5, and wxWidgets desktop dependencies; use RDP instead of the removed VNC server.
- Do not require cgroup v1 or hybrid mode on Leap 16.
- Do not require 32-bit binaries unless x86-64 32-bit syscalls are enabled with
ia32_emulation; 32-bit container images cannot run regardless. - Do not append to
/etc/serviceson the assumption that it already exists. - Audit removed cloud agents, Terraform providers, Python RPMs, MPI lines, drivers, and legacy tools before upgrading images.
- Read packages-runtimes.md for the detailed removal, replacement, and module inventory.
Security and identity defaults
- Expect SLES 16 to use SELinux enforcing mode and to remove AppArmor.
- Distinguish Leap: new installations cannot select AppArmor, but post-install enablement and migration preservation remain possible.
- Expect the first installer-created SLES user to join
wheeland authenticate tosudo -iwith their own password; non-wheel users supply the root password. - Audit policy that assumes every user belongs to a shared
usersprimary group. - Expect new remote root SSH access to be key-only unless the root-login compatibility package is deliberately installed.
- Treat OpenSSH RSA keys below 2048 bits as rejected by system crypto policy.
- Do not leave the
LEGACYcrypto policy enabled after SSH recovery. - Distinguish FIPS availability from FIPS 140-3 certification status.
- Enable the OpenSSL legacy provider only when MD2, MD4, or MD5 compatibility is explicitly required.
- Read security-identity.md before changing PAM, SSSD, LDAP, Entra ID, or cryptographic policy.
Service and configuration breaks
- Convert Dovecot 2.3 configuration manually before starting Dovecot 2.4.
- Validate BIND configuration against the installed major version before upgrade.
- Migrate FRRouting configuration from Quagga with an explicit compatibility review.
- Migrate DHCP configuration and service automation from ISC DHCP to Kea.
- Use drop-ins under
/etcfor systemd defaults now shipped under/usr. - Expect
/tmpto be volatile and move persistent work state elsewhere. - Expect
/etc/hostnameto be applied literally; prefer an unqualified hostname. - Check the active
tunedprofile because the daemon is installed by default. - Read administration-desktop.md and networking-services.md for exact behavior.
Kernel, storage, and resource behavior
- Enable
kernel.task_delayacct=1or thedelayacctboot option wheniotopmust show SWAPIN and IO percentages. - Use
noneornoto disable Btrfs compression; an empty value restores the default. - Do not bypass a file-system driver's
allow_unsupportedgate on a supported production system. - Use
mount -oro=vfswhen the physical mount must later become read-write with themountfdAPI. - Reinitialize swap with
swapon --fixpgszafter changing Arm page size and discard any suspend image first. - Pair BPF tools and development headers with a kernel from the same product.
- Query systemd's
EffectiveMemoryMax,EffectiveMemoryHigh, andEffectiveTasksMaxfor inherited limits. - Replace custom POWER Kdump
maxcpussettings withnr_cpus. - Update Kdump parsers for hyphenated time fields in output directory names.
- Read kernel-hardware.md and storage-filesystems.md before tuning.
Networking defaults and recovery
- Use NetworkManager as the supported Leap network configuration stack and
systemd.linkfor complex predictable interface naming. - Convert teaming and LACP configurations to NetworkManager bonding.
- Account for NFSv4-over-IPv6 being client-only on SLE 15 and NFSv2 removal in SLE 16.
- Prefer current firewalld; use the maintained 1.3.4 fallback only for affected SLES 15 SP6 deployments.
- Recognize a firewalld restart timeout with many interfaces as a known scaling limitation.
- For Docker/libvirt conflicts, use libvirt's iptables backend and persist
virbr0in thelibvirtzone. - Use passthrough or
hostdevwhen a Cockpit direct-mode SR-IOV VF cannot obtain IPv4. - Read networking-services.md for commands and protocol boundaries.
Installation and package operations
- Permit
installer-updates.suse.comthrough installation firewalls. - Use
root=live:andinst.install_url=for SLES 16 netboot; do not useinstall=. - Use
rd.ntp=<server>when time must be correct before Agama starts. - Create new NetworkManager connections through Agama CLI or configuration, not its UI.
- Use
zypper lifecyclewithlifecycle-data-openSUSEto find deprecated Leap packages. - Use
zypper search-packagesto search enabled and disabled SLE modules through SCC or RMT. - Query enabled repositories or installed RPMs before database-version-specific advice.
- Read installation-migration.md and packages-runtimes.md for exact commands.
Desktop, architecture, and virtualization checks
- Expect Wayland-only desktop choices during Leap installation and use XWayland for X11 applications.
- Start IBus explicitly under KDE Plasma with
ibus-daemon -x. - Expect PipeWire to replace PulseAudio; inspect WirePlumber profile policy if migration fails.
- Install Steam as Flatpak and satisfy IA32 and SELinux policy prerequisites.
- Verify architecture floors before deployment; Leap and SLES intentionally differ on IBM Z support.
- Use GCC 13 and
gcc-13for matching external kernel/module builds where required. - Use the unified SEV OVMF image and avoid
virt-install --cdromfor SEV guests. - Pass through the host CPU or select an equivalent QEMU model when a guest lacks the required instruction level.
- Treat KVM with the Arm 64 KiB kernel as a technology preview.
- Use the current Intel TDX integration state documented for SLES 16 rather than the earlier kernel-only state.
- Read platforms.md and virtualization-containers.md before changing firmware, guest CPU, secure execution, or HA configuration.
Support-boundary discipline
- Treat technology previews as unsupported even when packages and interfaces are present.
- Confirm that a package is supported for the intended workload rather than inferring support from inclusion.
- Keep KubeVirt on packaged N or N+1 during its normal support window; do not assume LTSS coverage.
- Do not infer external-kernel-module presence from a kernel taint bit.
- Revalidate CPU mitigation behavior after a service-pack upgrade because
Autois not a fixed parameter set. - Confirm repository and installed-package reality whenever release prose and package comparisons diverge.