<div class="container">
    <h1>Recommended update for suse-migration-services</h1>

    <table class="table table-striped table-bordered">
        <tbody>
        <tr>
            <th>Announcement ID:</th>
            <td>SUSE-RU-2026:22820-1</td>
        </tr>
        <tr>
            <th>Release Date:</th>
            <td>2026-07-18T10:13:46Z</td>
        </tr>
        
        <tr>
            <th>Rating:</th>
            <td>important</td>
        </tr>
        <tr>
            <th>References:</th>
            <td>
                <ul>
                    
                        <li style="display: inline;">
                            <a href="https://bugzilla.suse.com/show_bug.cgi?id=1258112">bsc#1258112</a>
                        </li>
                    
                        <li style="display: inline;">
                            <a href="https://bugzilla.suse.com/show_bug.cgi?id=1260340">bsc#1260340</a>
                        </li>
                    
                        <li style="display: inline;">
                            <a href="https://bugzilla.suse.com/show_bug.cgi?id=1263889">bsc#1263889</a>
                        </li>
                    
                    
                </ul>
            </td>
        </tr>
        
        <tr>
            <th>Affected Products:</th>
            <td>
                <ul class="list-group">
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server 16.0</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server for SAP applications 16.0</li>
                    
                </ul>
            </td>
        </tr>
        </tbody>
    </table>

    <p>An update that has three fixes can now be installed.</p>

    


    
        <h2>Description:</h2>
    
    <p>This update for suse-migration-services fixes the following issues:</p>
<p>Changes in suse-migration-services:</p>
<ul>
<li>yq is only recommended not required</li>
<li>Bump version: 2.1.34 → 2.1.35</li>
<li>Update suse-migration-rpm</li>
<li>Handle multipath root (#493)</li>
</ul>
<p>Add handling of multipath_wnn kernel parameter for multipath
  root. This allows to detect multipath mapped systems and mount
  them properly in the DMS live migration system and Fixes #491</p>
<ul>
<li>Explicitly request python3-base</li>
<li>Make sure to add multipath to the initrd for SAP (bsc#1260340)</li>
<li>Fix install of NetworkManager</li>
<li>Fix missing tests for latest apparmor code change</li>
<li>Bind mount resolv.conf to /system-root/run/.../resolv.conf</li>
<li>
<p>Mount /system-root/run as tmpfs
  Use tmpfs for /run, so we do not write temporal
  files during migration to disk.</p>
</li>
<li>
<p>Make sure to add multipath to the initrd (bsc#1260340)</p>
</li>
<li>Fix loading SELinux policy of Salt Bundle with workaround</li>
<li>preserve resolv.conf (bsc#1263889)</li>
<li>
<p>Avoid temporary test/unit/.coverage in dist archive
  This temporary file, generated by pytest-cov, is created within each
  <code>make test</code> call containing different content, also if no
  source files has changed.</p>
</li>
<li>
<p>Integrate ResolvConf class and reorder network setup services
  Refactor SetupNameResolver and WickedToNetworkManager to use the new
  ResolvConf class for unified resolver handling.
  Swap systemd service dependencies to ensure name resolver setup
  runs before host network setup.</p>
</li>
<li>
<p>Add ResolvConf class for unified name resolver mgmt
  Implement a new ResolvConf class to provide a consistent approach for
  handling /etc/resolv.conf during migrations. The class introduces
  logic to:</p>
</li>
<li>
<p>Detect if /etc/resolv.conf is managed by netconfig or NetworkManager.</p>
</li>
<li>Verify user customizations using MD5 checksums (compatible with
  netconfig) and header analysis.</li>
<li>Preserve custom configurations by moving them to a static file
  and creating a symlink to prevent future overwrites by network tools.</li>
<li>
<p>Support resolver setup for both the target root and live systems.</p>
</li>
<li>
<p>wicked2nm: explicitly remove sysconfig-netconfig (bsc#1258112)</p>
</li>
</ul>
<p>If sysconfig-netconfig is not removed, when dropping wicked,
  NetworkManager still use <code>netconfig</code>.
  But <code>netconfig</code> doesn&#x27;t find its
  <code>/etc/sysconfig/network/scripts/netconfig.function</code> file, which
  lead to an error like:
  <code>NetworkManager[926]: /usr/sbin/netconfig: line 574: log: command not found</code></p>
<ul>
<li>Fixed log message for already mounted system</li>
<li>
<p>Use download-in-advance mode for zypper migration
  This reduces the risk of download problems while inside
  of the upgrade process. This Fixes jira#PCT-1170</p>
</li>
<li>
<p>Add explicit SLES15 migration target check
  Instead of falling back to the default with a misleading
  warning message, make sure to check for this target explicitly
  beforehand</p>
</li>
<li>
<p>Bump version: 2.1.33 → 2.1.34</p>
</li>
<li>Init tools/migrate with debug set to false</li>
<li>Fix Zypper class command output handling</li>
</ul>
<p>The way zypper is called always redirects all output,
  stdout and stderr into the main log file. Because of that
  the variables self.output and self.error are always empty.
  This commit fixes the command call in a way that
  stdout and stderr are multiplexed such that the caller
  data can be captured by the python call and the data gets
  appended to the log file too. This commit also drops the
  unused and due to the redirection always empty self.error
  variable. For multiplexing the tee command gets used which
  impacts the returncode of the actual call. In order to
  get the correct exit code we use set -o pipefail.</p>
<ul>
<li>Fix validation of zypper migration result</li>
</ul>
<p>Up to now the assumption was that any situation in which zypper
  migration cannot migrate the system returns with an error, meaning
  exit code != 0. However, this assumption is wrong. There are
  condition in which zypper migration only indicates a problem
  with a message saying &#x27;No migration available&#x27; and the call
  return with a successful error code = 0. This causes big trouble
  for the DMS in a way that it continues running its services
  which all assumes the migration to the next major release was
  performed. It misleads readers of the log file into the wrong
  direction and the worst it causes modifications to the host
  system when it was not migrated. This commit makes sure that
  the migration stops and treats the above message as an error
  condition.</p>
<ul>
<li>
<p>Fix quoting</p>
</li>
<li>
<p>Add time info to backup directory</p>
</li>
</ul>
<p>So far only the date information was part of the backup
  directory. However, if multiple migration attempts happens
  on the same day, this would overwrite the data.</p>
<ul>
<li>fix: ensure <code>logger.handlers</code> is empty in tests</li>
</ul>
<p>Loggers will only be initialized once; thus if the logger test is
  scheduled after other tests, loggers might already be initialized and
  the logger creation code path might not be taken, causing the logger
  test to fail.</p>
<ul>
<li>
<p>XFSv4 precheck</p>
</li>
<li>
<p>Fix migrate tool for container based migration</p>
</li>
</ul>
<p>The tool overwrites an eventually existing /etc/sle-migration-service.yml
  config file. This commit fixes it by using yq and inplace updates</p>
<ul>
<li>
<p>update SLES16 DMS image to 16.1</p>
</li>
<li>
<p>Fix md device detection</p>
</li>
</ul>
<p>Fix detection of device mapper layered rootfs. Software
  raid disks are not found by findmnt if the actual rootfs
  is one or more layers down. This commit fixes the detection
  if we need to pass along the rd.auto cmdline option to
  let the boot process activate them.</p>
<ul>
<li>update SLES16 DMS image to 16.1</li>
</ul>



    

    <h2>Patch Instructions:</h2>
    <p>
        To install this SUSE  update use the SUSE recommended
        installation methods like YaST online_update or "zypper patch".<br/>

        Alternatively you can run the command listed for your product:
    </p>
    <ul class="list-group">
        
            <li class="list-group-item">
                SUSE Linux Enterprise Server for SAP applications 16.0
                
                    
                        <br/>
                        <code>zypper in -t patch SUSE-SLES-16.0-1282=1</code>
                    
                    
                
            </li>
        
            <li class="list-group-item">
                SUSE Linux Enterprise Server 16.0
                
                    
                        <br/>
                        <code>zypper in -t patch SUSE-SLES-16.0-1282=1</code>
                    
                    
                
            </li>
        
    </ul>

    <h2>Package List:</h2>
    <ul>
        
            
                <li>
                    SUSE Linux Enterprise Server 16.0 (noarch)
                    <ul>
                        
                            <li>suse-migration-services-common-2.1.35-160000.1.1</li>
                        
                            <li>suse-migration-pre-checks-2.1.35-160000.1.1</li>
                        
                    </ul>
                </li>
            
        
            
                <li>
                    SUSE Linux Enterprise Server for SAP applications 16.0 (noarch)
                    <ul>
                        
                            <li>suse-migration-services-common-2.1.35-160000.1.1</li>
                        
                            <li>suse-migration-pre-checks-2.1.35-160000.1.1</li>
                        
                    </ul>
                </li>
            
        
    </ul>

    
        <h2>References:</h2>
        <ul>
            
                
                    <li>
                        <a href="https://bugzilla.suse.com/show_bug.cgi?id=1258112">https://bugzilla.suse.com/show_bug.cgi?id=1258112</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://bugzilla.suse.com/show_bug.cgi?id=1260340">https://bugzilla.suse.com/show_bug.cgi?id=1260340</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://bugzilla.suse.com/show_bug.cgi?id=1263889">https://bugzilla.suse.com/show_bug.cgi?id=1263889</a>
                    </li>
                
            
        </ul>
    
</div>