|
|
第一、先说说笔记本的硬盘吧,当初我是在虚拟机VMware中挂物理硬盘来安装Gentoo的,由于在VMware硬盘默认都是IDE的,所以当我fdisk -l的时候,看到的都是/dev/hdaN,顺利安装以后,在真实环境中也能正常启动,当然了,在编译内核的时候要把真实环境中所需要的驱动程序也编译到内核中。但是,当我使用Gentoo的LiveCD来启动机器的时候,fdisk -l看到的都是/dev/sdaN,可能是把本本的SATA硬盘认成了SCSI了,但是这样一来就产生了一个疑问,为什么本本的硬盘既可以是hda也可以是sda呢?
这两天又再重新从stage1来装系统,感觉这个问题还是取决于内核,当在内核中选择了支持SATA,则设备则为sdaN,否则为hdaN。(内核版本:Linux Kernel v2.6.16-gentoo-r9)
Device Drivers --->
SCSI device support --->
SCSI low-level drivers --->
<*> Serial ATA (SATA) support
<*> Intel PIIX/ICH SATA support
第二、关于无线网卡的使用,在内核中不要选择和IEEE 802.11有关的选项,但是要选择Wireless Extensions。然后就可以执行emerge ipw2200来安装相关的驱动了,在emerge过程中一般要安装4个相关的包,在安装ieee80211的时候,如果你的内核中还有和IEEE 802.11有关的选项它会提示你哪些选项需要去掉,这时候你就需要重新配置并编译内核来满足安装的需要了,如果你都满足了,安装程序还会检查你的内核目录中是否还存在相关的源文件,如果有的话,安装程序提供了一个shell脚本来去除这些文件,这时候你不用担心,去掉就可以。
不过,emerge ieee80211的时候还能够提示你的内核了哪些必要的选项,ieee80211需要两个加密算法,在内核中一定要选中,
<*> ARC4 cipher algorithm
<*> Michael MIC keyed digest algorithm
不过,还有一些选项时必选的,但是emerge程序不能检测的,我在emerge ipw2200成功以后,发现系统无法加载ieee80211和ipw2200模块,察看了一下dmesg,发现在加载这两个模块的时候,出现了一下的提示:
ieee80211.ko needed unknown symbol tcf_action_exec
等等。。。
只好去google了一下,有如下发现:
tcf_action_exec
Defined as a function in:
net/sched/act_api.c, line 161
Defined as a function prototype in:
include/net/act_api.h, line 78
打开了内核源代码中相应的文件,没有什么发现,就看了一下同目录下的Makefile:
obj-$(CONFIG_NET_CLS_ACT) += act_api.o
现在分析应该是我的内核中没有这个模块,而这个模块中的 tcf_action_exec 函数又是ieee80211所必需的,同样的那些其他的符号也都在这个目录下面,看来应该是和schedule有关的,在
Networking --->
Networking options --->
QoS and/or fair queueing --->
由于提示需要的符号太多了,懒得一一查找,所以就把这个分支下面的所有选项都选上了,在编译内核,重启机器无限网卡终于可以工作了!此时,当你使用命令iwconfig的时候,就会提示你的无限网卡的名字,我的为eth1。
第三、无限网卡的配置
安装好驱动以后,应该就是配置了,其实也不是很困难,首先要配置/etc/conf.d/wireless文件,在同目录下有一个wireless.example的示例文件,里面有详细的说明,根据说明配置即可。有的人第一次配可能不知道ESSID是什么?
这个时候你可以使用iwlist eth1 scanning来搜索一下是否存在AP,如果你有了固定的AP的话,ESSID就是你的AP的名字,假设你的ESSID是default,如果你的AP加密了,你还需要设置密码(假设为123456),如下:
key_default="s:123456"
然后使用ln -sf /etc/init.d/net.lo /etc/init.d/net.eth1做一个连接,然后/etc/init.d/net.eth1 start即可。设置好网关和DNS就可以上网冲浪了! |
|