How to Fix “vgcreate Command Failed with Status Code 5” in LVM (Xen/CentOS Rescue Mode)


8 views

When working with LVM in a Xen-based CentOS VPS rescue environment, encountering status code 5 during vgcreate typically indicates one of these fundamental issues:

  • Incomplete PV initialization
  • Device mapper conflicts
  • Kernel module dependencies
  • Rescue mode limitations

Before attempting fixes, verify these critical components:

# Check PV status
pvdisplay /dev/xvda1

# Verify device mapper
dmsetup ls

# Confirm LVM modules
lsmod | grep dm_mod

These approaches have resolved similar cases in production environments:

# 1. Force PV recreation with proper headers
pvcreate --uuid YOUR_UUID --restorefile /etc/lvm/archive/* /dev/xvda1

# 2. Reload device mapper
dmsetup remove_all
vgscan --mknodes

# 3. Alternative vgcreate syntax
vgcreate --verbose --autobackup y main /dev/xvda1

In Xen environments using device xvda:

# Ensure Xen block device recognition
pvcreate --devices /dev/xvda1 /dev/xvda1

# Special handling for rescue mode
vgchange -a y
vgmknodes

When standard fixes fail:

# Debug LVM operations
export LVM_DEBUG=1
vgcreate -vvvv main /dev/xvda1 &> /var/log/lvm_debug.log

# Check kernel messages
dmesg | tail -50

# Verify device signatures
hexdump -C -n 512 /dev/xvda1 | grep LVM2

To avoid similar issues:

  • Always verify PVs with pvck before VG creation
  • Maintain consistent device naming in Xen configs
  • Document LVM UUIDs for emergency recovery

When working with LVM (Logical Volume Manager) on a Xen-based VPS running CentOS in rescue mode, you might encounter the cryptic error:

Command failed with status code 5

This typically occurs during volume group creation with vgcreate after successfully creating a physical volume using pvcreate /dev/xvda1.

While not explicitly documented in LVM man pages, status code 5 generally indicates:

  • A device is already in use by another volume group
  • Insufficient free extents on the physical volume
  • Possible Xen virtualization layer conflicts
  • Device mapper issues in rescue mode

Before attempting solutions, gather system information:

# Check existing volume groups
vgs

# Verify physical volume status
pvs

# Examine device mapper
dmsetup ls

# Check kernel messages
dmesg | grep -i lvm

Solution 1: Force device initialization

# First wipe any existing signatures
wipefs -a /dev/xvda1

# Recreate physical volume with force
pvcreate -ff /dev/xvda1

# Then attempt vgcreate again
vgcreate main /dev/xvda1

Solution 2: Handle Xen-specific issues

# Ensure proper device visibility in domU
xe vm-param-get uuid=[your_vm_uuid] param-name=other-config

# Refresh device mappings in rescue mode
partprobe
pvscan --cache

If standard solutions fail, consider:

# Check for underlying filesystem signatures
blkid /dev/xvda1

# Examine partition table
fdisk -l /dev/xvda

# Test with alternative device naming
vgcreate main /dev/disk/by-id/scsi-0XENSTOR_*
  • Always verify device state before LVM operations
  • Use --test flag for dry-runs
  • Maintain consistent device naming in Xen environments
  • Consider LVM metadata backup before major operations