The error message clearly shows a dependency conflict between coreutils packages:
Error: Package: coreutils-libs-8.4-31.el6_5.2.x86_64 (@updates)
Requires: coreutils = 8.4-31.el6_5.2
Removing: coreutils-8.4-31.el6_5.2.x86_64 (@updates)
coreutils = 8.4-31.el6_5.2
Updated By: coreutils-8.4-37.el6.x86_64 (base)
coreutils = 8.4-37.el6
The OOM killer message indicates memory issues, but we should first address the RPM database corruption shown by:
error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
Here's how to properly rebuild the RPM database:
# Stop any running yum processes
rm -f /var/lib/rpm/__db*
rpm --rebuilddb
yum clean all
The specific version conflict requires manual intervention. First, verify installed versions:
rpm -qa | grep -E 'coreutils|kernel'
rpm -q --qf '%{name}-%{version}-%{release}.%{arch} (%{installtime:date})\n' coreutils coreutils-libs
To resolve, try this sequence:
# Temporarily disable all repositories except base
yum --disablerepo=\* --enablerepo=base update coreutils coreutils-libs
# If still failing, try manual downgrade
yum downgrade coreutils-8.4-31.el6_5.2
When seeing OOM killer messages during yum operations:
# Check available memory during updates
free -m
# Alternative approach for low-memory systems
yum update --disableplugin=fastestmirror --nogpgcheck -x kernel\*
For servers with <4GB RAM, create a swap file:
dd if=/dev/zero of=/swapfile bs=1M count=4096
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
After resolving dependencies:
rpm -Va coreutils\*
yum check
package-cleanup --dupes
package-cleanup --problems
For persistent issues, this nuclear option may help:
rm -rf /var/lib/yum/*
yum clean all
yum makecache
The primary error you're encountering stems from a version mismatch between coreutils
and coreutils-libs
packages:
Error: Package: coreutils-libs-8.4-31.el6_5.2.x86_64 (@updates)
Requires: coreutils = 8.4-31.el6_5.2
Removing: coreutils-8.4-31.el6_5.2.x86_64 (@updates)
coreutils = 8.4-31.el6_5.2
Updated By: coreutils-8.4-37.el6.x86_64 (base)
coreutils = 8.4-37.el6
Your system logs reveal OOM killer terminating yum processes:
Nov 14 08:19:47 nico kernel: Out of memory: Kill process 30995 (yum-complete-tr) score 149 or sacrifice child
First, repair the RPM database:
# Stop any running yum processes
rm -f /var/run/yum.pid
# Clean up corrupted RPM database
rm -f /var/lib/rpm/__db*
rpm --rebuilddb
yum clean all
Then address the memory constraints:
# Create swap space if needed (adjust size as necessary)
dd if=/dev/zero of=/swapfile bs=1M count=2048
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
Try forcing the correct version alignment:
# Manual package download and installation
yumdownloader coreutils-8.4-31.el6_5.2 coreutils-libs-8.4-31.el6_5.2
rpm -Uvh --oldpackage coreutils-*.rpm
For stubborn transactions, manually clear them:
# Remove transaction history
rm -f /var/lib/yum/history/*.sqlite
# Alternative cleanup command
package-cleanup --problems
package-cleanup --cleandupes
After all cleanup, run the update with verbose logging:
yum update -v --skip-broken > /var/log/yum-update.log 2>&1
Monitor memory usage during this process with:
watch -n 1 free -m