Xen PV Bootloader为什么选择PyGrub
来源:互联网 发布:lurker软件官方网站 编辑:程序博客网 时间:2024/06/02 03:11
Why?
PyGrub enables you to start Linux DomUs with the kernels that lie in the filesystem of the DomU instead of with a Kernel that lies in the filesystem of the Dom0. This enables easier kernel update from DomU or migration of HVM'ed Linuxes.
Concept
It is used as a Bootloader and provided with Xen. PyGrub behaves like Grub and reads the standard Grub menu.lst to provide the xen create process with the required parameters and SXP stanzas.
Question is: Does it copy the req'd kernel and initd temporarily out to Dom0 for it to access it there or does Dom0 access the kernel and initd in their filesystem? Anyone?
Therefore usage is quite easy.
Security Question: Some time ago, someone found a security problem with pyGrub that allowed it to break out of the DomU, i did not find any fix notices - it that problem still relevant?
RESOLVED: This issue has been resolved. Check outhttp://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1068 &http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-4993 for details
How?
- Install Grub
- Install a linux-image-xen of your choice.
- Create the /boot/grub directory if it is not present.
- Let it create its default menu.lst (update-grub in Debian)
- Change your domU.cfg in the Dom0 like this:
- remove kernel and initd stanza - add bootloader stanza, e.g.
bootloader = '/usr/bin/pygrub'
You need to see where in the filesystem pygrub lies, debian does not use this path but /usr/lib/xen-$version/bin/pygrub or something like this.
Important Tip / Caveat
On your disk line, e.g.
disk = ['file:/vserver/mail/guest_base2G.img,hda1,w','file:/vserver/mail/guest_swap256M.img,hda2,w','phy:data/mail,hda3,w']
make sure that the partition/lvm/container that contains the kernel and initrd comes first. Xend passes the *first* entry to pyGrub. (At least for Version 3.2.1) If the first disk entry does not contain a kernel you will most likely get
设置menu.lst
Error: Boot loader didn't return any data
If you get this error have a look at /var/log/xen/xend.log . You can read here which parameters were given to pyGrub, try them by Hand and see if pyGrub outputs the right stanzas for domU startup. (They look a little like grub entries LISPified, SXP-Format).
Thanks to (The following is taken from http://lists.xensource.com/archives/html/xen-users/2007-09/msg00524.html and own experience) for first pyGrub Reference.
- Xen PV Bootloader为什么选择PyGrub
- xen bootloader
- pyGrub
- android 默认bootloader为什么选择lk?
- Xen PV Guest interrupt
- Install OpenSolaris PV On Xen
- Xen的PV Guest如何wake up
- Xen 安装和PV Guest配置
- Xen实战之PV domU安装
- Indirect descriptors for Xen PV disks
- Xen PV disk间接描述符
- xen network PV driver 现状分析
- 使用Xen-tools工具建Pv domain
- 为什么BOOTLOADER是锁着的?
- 为什么需要bootloader
- Bootloader的作用、为什么需要Bootloader?
- How to create a PV image for XEN
- 基于Xen的PV Guest VM与HVM性能比较
- xend的调试方法
- Quantum & r2q
- hfsc
- 【转】Ultimate Traffic Shaper
- Boot loader didn't return any data!
- Xen PV Bootloader为什么选择PyGrub
- 获取Google/Twitter hosts的方法
- scons配置文件
- [原]bash一些技巧
- Linux内核之系统调用
- [译]Xen Virtualization Essentials翻译(1)
- [原]虚IP的添加和删除
- Shell(Bash) - mysql数据库操作
- 修改字符集后phpmyadmin 无法连接