Monday, 28 September 2015

cannot create key change index database disk image is malformed

#yum clean all

#yum clean metadata

#yum clean dbcache

or

#yum history new

then
#yum makecache

Yum segmentation fault ( core dumped )

#rm -rf /var/lib/rpm/__db.* 
 
#rpm --rebuilddb 
 
#yum clean all 
 
#yum makecache

Scriptlet failed exit status 1

Run the following command

#rpm -e package-name --noscripts

Error : cannot retreive metalink for repository : epel. Please verify its path and try again

#sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo
#yum check-update

Running these commands will update the repo to use HTTP rather than HTTPS

ftp issue 500: oops : cannot change directory

#getenforce ( Selinux status )
enforcing ( if output)

#getsebool -a | grep ftp

check for ftp_home_dir ---- off
if it is in off state then
#setsebool -P ftp_home_dir 1 ( or on )

hence problem solved

Reinstall a corrupted or destroyed boot partition.


Lately I have had a couple of systems where the boot partition got corrupted or it's contents
deleted mistakenly. Even though I could not boot the system, I did not want to reinstall the whole
system and recover the data from backups.

1. Boot the computer into rescue mode with the relevant CD/DVD by typing "linux rescue" at the boot prompt.
2. Mount the / partition of the system. On CentOS this is automatically done and the / is mounted on /mnt/sysimage.
Otherwise just do (assuming the root partition is on /dev/sda2)
mount /dev/sda2 /mnt/sysimage
3. Chroot into the old root partition since that is where we actually want to make all the changes
chroot /mnt/sysimage
4. If the filesystem labels got deleted up for some reason or they don't agree with what is described in /etc/fstab we should fix that (Assuming the boot partition is /dev/sda1):
e2label /dev/sda1 /boot
5. Make sure the boot partition is mounted:
mount /dev/sda1 /boot
6. Mount the CD-ROM we used to boot the machine
mkdir /media/cdrom
mount -o loop,ro /dev/hdc /media/cdrom
7. Now we need to install the relevant rpms. Make sure you pick the correct kernel for your configuration system (PAE etc..):
cd /media/cdrom/CentOS (this will vary depending on the distro)
rpm -ivh --force kernel-2.6.18-164.el5.i686.rpm
rpm -Uvh --force grub-0.97-13.5.i386.rpm
rpm -Uvh --force redhat-logos-4.9.99-11.el5.centos.noarch.rpm
8. Install GRUB:
grub-install /dev/sda1 (or whichever partition boot is mounted on)
9. If /boot/grub/grub.conf is also lost, you need to create it manually.
vim /boot/grub/grub.conf default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS
        root (hd0,0)
        kernel /vmlinuz-6.18-164.el5 ro root=/dev/VolGroup00/LogVol00
        initrd /initrd-2.6.18-164.el5.img
10. Lastly make a soft link to grub.conf:
cd /boot/grub
ln -s grub.conf menu.lst
Reboot the system and if everything goes well it should boot normally. Run immediately a yum upgrade incase you had to install an older version of the kernel from the CD-ROM.