XEN : Can't add more that 4 hard drive or 2TB HDD to guest

Posted on 2013-10-23
Last Modified: 2013-11-03
I'm having issues assigning more than 4 hard drive to a XEN guest. When SeaBIOS loads, ATA-7 shows up meaning they're being attached as PATA devices. So this should be the reason why I'm limited to just 4 hard drives.

Also I've tried to attach a 2TB hard drive and sea bios does not detect this drive. Hard drive is a WD Cavier Black (Model: WD2002FAEX).

Any one had the same issue as this previously? Thanks.
Question by:dave558
  • 4
  • 3
LVL 13

Assisted Solution

by:Daniel Helgenberger
Daniel Helgenberger earned 500 total points
Comment Utility
What is your actual XEN/OS version?
Please see resource limits imposed by XEN:

Virtual Disk Images (VDI) (including CD-ROM) per Virtual Machine 7
Virtual CD-ROM drives per Virtual Machine 1
Virtual Disk Size (NFS) 2TB minus 4GB
Virtual Disk Size (LVM) 2TB minus 4GB

And disk image number note:
This number is not programmatically enforced, but is the supported limit. Customers can configure up to 16 VDIs using the xe Command Line

I think you are talking about boot volumes in your guests?
Check if something like a little smaller than 2TB works.

Go for KVM/libvirt ;)

Author Comment

Comment Utility
I'm using Xen 4.3 with Debian Wheezy as domain 0.

Also would it make a difference if I use different bios like ovmf? Do I just need to enable during build-time with ./configure --enable-ovmf? Will I need to do anything else?

Also is it worthwhile to have a look at XCP as alternative? What limitations does it have? Also what are the limitation of KVM?

My main requirements are as follows:
* Support for 2TB and above
* Virtual Disk Images of 7 should be sufficient (inc CD-ROM)
* PCI pass through

Thank you.
LVL 13

Accepted Solution

Daniel Helgenberger earned 500 total points
Comment Utility
Please avoid boot disks with more than 2TB. These would require GPT and GPT in turn requires UEFI. I do not know for XEN, but in all the hypervisors I have used UEFI support is far from perfect.
Nothing stops you from booting a small image and mounting a large one in your VM.
Maybe I do not get your setup correct; but passing through a whole disk, (opposed to a LUN) is not considered best practice.
Rather create a LVM physical volume from it and pass Logical Volumes on it as "devices", for instance.

Concerning KVM: the only limit per sé is your hypervisor host, but there are "tested" limits:
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.


Author Comment

Comment Utility
Yes, I'm consider using LVM to manage volumes as it does offer a lot more flexibility.

At this stage, I'm currently testing passing multiple LVM partitions to a single guest machine and noticed that they been emulated as IDE device thus limiting the number to only four. Regardless of whether devices are virtual files, partitions or physical hard drives, seabios is presenting them as IDE emulated devices.

Guest is booting off a smaller partition but when passing a 2TB hard drive, the OS does not pick up the hard drive due to bios being non-uefi. I would think ovmf would fix this problem but its development is still experimental.

I'll give para-virtualisation a go and see if it does fix both this issue. Thank you.
I might look paravirtual
LVL 13

Expert Comment

by:Daniel Helgenberger
Comment Utility
Paravirtual should be the prefered way when it comes to host devices; with the right caching algorithm (write back) you should get about 90% of the native performance of the drive while keeping flebiliy.

Assisted Solution

dave558 earned 0 total points
Comment Utility
Para-virtualisation has fixed the problem with limited number of hard drives due to IDE emulation.

From my understanding, booting will be an issue for 2TB on Windows-based platforms for PC BIOS and require UEFI to boot correctly. With Windows Server 2008, it shouldn't have any issues recognising the hard-drive and you can easily partition drive with GPT.

Hard drive was added as a data drive but was not recognised at all, so I'm suspecting this 2TB limitation is related to missing drivers or something else. This system was compiled by some else and a lot of things where stripped out from it. Testing on another machine did not have the same 2TB limitation.

Author Closing Comment

Comment Utility
Pointed me in right direction to resolve problem.

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Join Greg Farro and Ethan Banks from Packet Pushers ( and Greg Ross from Paessler ( for a discussion about smart network …
David Varnum recently wrote up his impressions of PRTG, based on a presentation by my colleague Christian at Tech Field Day at VMworld in Barcelona. Thanks David, for your detailed and honest evaluation!
This Micro Tutorial will teach you how to reformat your flash drive. Sometimes your flash drive may have issues carrying files so this will completely restore it to manufacturing settings. Make sure to backup all files before reformatting. This w…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now