Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8457
  • 博文数量: 7
  • 博客积分: 18
  • 博客等级: 民兵
  • 技术积分: 80
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-24 14:05
文章分类
文章存档

2017年(1)

2016年(1)

2015年(5)

我的朋友
最近访客

分类: 虚拟化

2015-12-05 23:55:42

越来越喜欢NetBSD,简洁、稳定。可惜大神们很少上来分享他们的心得。互联网上关于NetBSD的中文资料也很少,有一个网站上有NB的中文版手册,是翻译的,有兴趣的新手可以去看看, 。对Xen的完美支持是NetBSD众多优点中的其中一个,为了方便自己使用,现将我的NetBSD/Xen有关的安装配置记个流水帐,其中一些很容易完成的,或网上很容易查到相关资料的,就一句话带过。同时欢迎大家查漏补缺,指出错误之处,多谢。
下面这些网站提供了大量的资料可供查阅:
1,
2, wiki.netbsd.org
3, wiki.xen.org
4,
5,


好了,进入正题。

一、安装NetBSD 6.0 Dom0
  1. 正常安装NB6.0,full installation set,发现6.0版本已经支持我的笔记本电脑上的触摸版和 intel wifi 5100,开心。内核文件/netbsd 有14M多,不爽。

  2,配置 /etc/rc.conf , 配置 /etc/mk.conf, 配置…… 。更具体的内容请参考官网的NB guide 和 pkgsrc guide,或者到 看中文翻译版。下面是我的 mk.conf 文件:

FETCH_USING?=wget
.sinclude "/usr/pkg/share/mk/cpuflags.mk"
.sinclude "/usr/pkg/share/mk/optimize_gcc.mk"
ALLOW_VULNERABLE_PACKAGES=YES

  3,配置中文环境,安装WQY字体,安装中文输入法scim 。下面是我的 .xinitrc 文件内容。用openbox做桌面窗口管理器的话,需要把.xinitrc默认的一个时钟三个xterm都注释掉。openbox桌面过于干净,建议新手还是别用它。网上有一篇<窗口管理器Openbox入门指南>,有兴趣的可以看看,并不难。

export LANG=zh_CN.UTF-8
export LC_CTYPE=zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8
export XMODIFIERS="@im=SCIM"
export GTK_IM_MODULE=scim
export QT_IM_MODULE=scim

exec openbox-session

  4,自定义内核源代码并编译,这样做是为了减小内核。其实现在的电脑配置都很高,不必为了十几M的内核去折腾,所以这一步,以及下面所有编译内核文件的步骤都是可选的。做完这一步后,内核文件减小为7M多。参考文档同上。老鸟也可直接做完Dom0后再编译内核。

  5,安装NetBSD 6.0 Dom0。
    具体的过程请参考 NetBSD/xen Howto 文档。目前只有 Xen 3.1 才支持 PCI pass-through ,所以要想让DomU使用一些PCI硬件的话,最好安装Xen 3.1。我在安装3.1时编译通不过,只好安装4.1了。
    关键点:a)安装完sysutils/xenkernel41后,cp /usr/pkg/xen41-kernel/xen.gz /.
               b)自定义NB Dom0的内核文件并编译。源文件是 /usr/src/sys/arch/amd64/conf/XEN3_DOM0,编译后把生成的 netbsd copy到 / ,注意拷贝之前先备份原文件
               c)对于不想自定义Dom0内核的,可以直接从官网下载 ftp.netbsd.org/pub/NetBSD/NetBSD-6.0/你的port/binary/kernel/netbsd-XEN3_DOM0.gz 到 /
               d)不必使用grub,用NB的bootloader就可以了。编辑/boot.cfg,可使用的XEN方面的参数可参考wiki.xen.org 和 man 5 boot.cfg 。要注意的是,NetBSD的console参数是 =pc 。下面是我的/boot.cfg的内容,供参考:

menu=Boot Xen 4.1 with 1GB for Dom0:load /netbsd.MYKERNEL_XEN3_DOM0 console=pc;multiboot /xen.gz iommu=0 dom0_mem=1024M,max:1024M
menu=Boot Xen 4.1 with Dom0 in single user mode:load /netbsd.MYKERNEL_XEN3_DOM0 -s;multiboot /xen.gz iommu=0 dom0_mem=1024M,max:1024M
#menu=Test:load /netbsd-XEN3_DOM0;multiboot xen.gz iommu=0
menu=Boot MYKERNEL_BASE normally:rndseed /var/db/entropy-file;boot netbsd.MYKERNEL_BASE
menu=Boot MYKERNEL_BASE in single user:rndseed /var/db/entropy-file;boot netbsd.MYKERNEL_BASE -s
menu=Boot GENERIC:rndseed /var/db/entropy-file;boot netbsd.GENERIC
menu=Disable ACPI:rndseed /var/db/entropy-file;boot netbsd.MYKERNEL_BASE -2
menu=Disable ACPI and SMP:rndseed /var/db/entropy-file;boot netbsd.MYKERNEL_BASE -12
menu=Drop to boot prompt:prompt
default=1
timeout=5
clear=1


二,创建NetBSD 6.0 DomU
    这个地方有些复杂,关键点在于:正确的配置虚拟网卡,正确的DOMU配置文件。仍然参考 NetBSD/xen How to 。注意:目前XenTools4.1及以下的版本只支持 xm 命令。
    说一下我的安装方法,其它安装方法请老鸟们补充。先 dd if= 出来一个 几十G的文件,这个文件就是一个虚拟磁盘,NB DomU就是安装在这个磁盘上的。在上面提到的官网FTP站点把netbsd-INSTALL_XEN3_DOMU.gz 和 netbsd-XEN3_DOMU.gz 下载下来。创建DomU的配置文件,安装NB的时候,先用这个kernel: netbsd-INSTALL_XEN3_DOMU.gz , 我是用CDROM安装的,磁盘配置部分就是:disk = ['file:……', 'phy:……'] ,并设置 root= 从CDROM启动。安装后NB后,不要重启或关机,而是运行 halt -p 命令,然后更改配置文件,把kernel改成用这个:netbsd-XEN3_DOMU.gz , 并把 root = 改成正确的值,我的是 root = "xbd0"
    NB DomU 跟 NB Dom0 完美无缝集成,很好很强大。配置DomU就跟平常配置NB一样就可以了。


三,创建Debian 6.0 DomU
    参考NetBSD/xen How to 中关于Linux DomU 的硬盘配置的部分;参考wiki.xen.org,其中有一篇文章叫 Debian Guest Installation Using Debian Installer;参考Debian官网,好像也有个Xen wiki
    需注意的地方:
    a)我是用Debian Installer安装的。同样先 dd if= 出来一个虚拟磁盘。安装时,要按照上面的参考文档配置 kernel = "xxx/vmlinuz" , ramdisk = "xxx/initrd.gz", extra = “xxx” , 前面两个文件同样要到Debian官网上下载。
    b)DomU配置文件中硬盘部分的描述要小心,应该用 xvda。
    c)安装时文件系统要选ext2,跟往常一样的安装bootloader
    d)安装后要把kernel, ramdisk, extra注释掉
    e)如果在字符console下启动Debian 6.0 DomU,则启动到某一行之后你将无法再看到任何输出,但实际上Debian已经正常启动了。造成这个问题的原因可能是键盘或字符等配置方面的问题。一个替代方案是:在NetBSD Dom0 的 X Window 桌面下通过虚拟终端来运行Debian DomU,这样可以进入到Debian DomU的命令行;或者也可以在NB Dom0的 X Window下使用VNC:xm create Debian_DomU.cfg之后,xm vncviewer DomainName_of_Debian。因为Debian默认安装后会启动到X桌面,所以我在下面的配置文件中配置了 vfb
    f)下面是我的配置文件,要注意的是,这是安装之后的配置,安装时的配置是略有不同的。

#kernel = "/home/XenDomU/SystemShare/debian-vmlinuz"
#ramdisk = "/home/XenDomU/SystemShare/debian-initrd.gz"
memory = 1024
name = "Debian_1"
vcpus = 1
#cpus= "0"
nics = 2
vif = ['bridge=bridge0','bridge=bridge1']
disk = ['file:/home/XenDomU/DomU2-Debian/debian1-disk.img,xvda,w']
root = "/dev/xvda1"
vfb = ["type=vnc,vncunused=1,vnclisten=0.0.0.0"]
#bootloader = "pygrub"
#extra = "console=hvc0"
   
  
四,其它的问题
     a) Xen官网上提到的参数应该是都能用的
     b) 请使用 xm xxx 命令,不要用 xl xxx
     c) 感觉同时启动 NetBSD DomU 和 Debian DomU 后,DomU里的网卡性能比较差,还要好好研究一下多个DomU并行时的网卡配置。
     d) 有空时要编译一下DomU的内核,太大了,不爽。
     e) 别用opera,总是跟中文输入法冲突。
阅读(424) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:NetBSD 6.1.5 + XEN 4.2 之虚拟网卡

给主人留下些什么吧!~~