Package conflict on SLES 12 SP1 and SP2 nodes while doing installation, deployment, or upgrade using installation toolkit
While doing installation, deployment, or upgrade using the installation toolkit on SLES
12 SP1 and SP2 nodes, you might encounter package conflict issues.
If the error message you are getting due to package conflict is similar to Symptom 1, try Workaround 1. If the error message you are getting due to package conflict is similar to Symptom 2, try Workaround 2.
Symptom
1:
[ FATAL ] node1.example.com gpfs.smb-1:4.5.5_gpfs_15-1.sles12.x86_64 (ces_smb)
[ FATAL ] node1.example.com conflicts with file from package
[ FATAL ] node1.example.com samba-winbind-4.4.2-29.4.x86_64
Workaround 1:
- Remove samba-winbind packages from all protocol nodes.
- Rerun the installation toolkit from the last failure point.
Symptom 2:
The error message might be similar to the
following:
[ FATAL ] nodex.example.com File /usr/lib64/libnss_winbind.so.2
[ FATAL ] node2.example.com from install of
[ FATAL ] node2.example.com samba-winbind-4.4.2-31.1.x86_64 (FTP3-SUSE-12-2-Updates)
[ FATAL ] node2.example.com conflicts with file from package
[ FATAL ] node2.example.com gpfs.smb-1:4.5.5_gpfs_15-1.sles12.x86_64
Workaround 2:
- Back up the zypper.rb
file.
cp /opt/chef/embedded/apps/chef/lib/chef/provider/package/zypper.rb /tmp/
- Edit the zypper.rb
file.
vim /opt/chef/embedded/apps/chef/lib/chef/provider/package/zypper.rb
- Modify the install_package function code to add the
--no-recommends parameter using the following code
snippet.
def install_package(name, version) zypper_package("install --auto-agree-with-licenses --no-recommends", name, version) end
- Save the changes in the zypper.rb file.
- Copy the changed zypper.rb file on every failure node or do the same code changes on every node.
- Rerun the installation toolkit from the last failure point.
Note: You can also try using these workarounds in scenarios with similar package conflict
issues.