vmware 上安装 gentoo

最近要测试一个内核模块,学习下netlink,需要安装个linux

vmware版本9.0.2,gentoo版本:install-x86-minimal-20130528,3.8.13的内核

主要步骤参考这个:http://www.gentoo.org/doc/en/gentoo-x86-quickinstall.xml

但没必要完全按步骤来,因为是测试用,时区什么的都省了,没分boot分区,/分区使用ext3

这样在配置内核的时候,需要把ext3编进内核,而不能使用模块(查了下使用initrd也可以不编进内核)

内核配置参考:http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=7

lspci会给出你的硬件配置,但是对我这种对硬件参数不太懂的根本没法用来配置内核,可以使用lspci -k 这个命令可以显示其对应的内核模块是什么,然后在配置内核时搜索,就会给出你该配置什么

make defconfig   // 使用默认配置
make menuconfig  // 按'/'搜索

需要注意一点,这个版本vmware的默认磁盘为SCSI,为LSI logic设备。有篇帖子说4.0以前使用的是BusLogic设备,参考:http://blog.csdn.net/kl222/article/details/4681606

需要勾选如下设置,否则的话,内核加载时会报:VFS: Cannot open root device "sda2" or unknown-block(0,0),这个问题纠结了两天才搞出来

Device Drivers --->
 [*] Fusion MPT device support --->
  <*> Fusion MPT ScsiHost drivers for SPI
  <*> Fusion MPT ScsiHost drivers for FC
  <*> Fusion MPT ScsiHost drivers for SAS

参考:http://www.linuxquestions.org/questions/linux-newbie-8/unable-to-boot-on-vmware-workstation-6-5-kernel-panic-824851/

接下来编译内核:make && make modules_install && make install

新版本的gentoo都使用的grub2,便是跟grub有很大不同,现在不需要手配grub.cfg了,使用grub-mkconfig 输出到该文件即可

上面链接给出的是安装grub的教程,安装grub2,可以用emerge,我是下载下来源码自己编译的

使用 grub-install /dev/sda来安装

接下来reboot即可

 

启动后配置网络,vmware用的nat桥连接,编辑->虚拟网络编辑器  看DHCP和NAT设置,记下IP段和网关

ifconfig enp2s1 up#不知道怎么搞的,默认不启动
ifconfig enp2s1 192.168.128.128 netmask 255.255.255.0#设置IP,掩码
route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.128.2#设置网关,我这里是.2

启动后发现网络不能自动启动,查了查发现时以下命令为执行(上面安装链接里有),自动启动后会自动设置IP,不用像上面那样手动设置,应该是DHCP的

# 我这里的名字是enp2s1,貌似是udev搞的,用下面命令创建一个空文件就可以是ethX命名的了
# touch /etc/udev/rules.d/80-net-name-slot.rules
ln -s net.lo net.eth0
rc-update add net.eth0 default

 

==============================================================================================================

后续:虽然安装好了,但是分辨率很低,fgx模式好像不管用,先这样吧,现在字符模式够用了

grub2里不能用more less,分页查看可以用以下命令

set pager=1

  

posted @ 2013-07-20 21:51  D3猎人  阅读(802)  评论(0编辑  收藏  举报