LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1331|回复: 4

在T43上安装Gentoo的几点感触(硬盘、无线网络)

[复制链接]
发表于 2006-7-7 01:17:43 | 显示全部楼层 |阅读模式
第一、先说说笔记本的硬盘吧,当初我是在虚拟机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就可以上网冲浪了!
发表于 2006-7-7 09:38:01 | 显示全部楼层
http://gentoo-wiki.com/HARDWARE_IBM_ThinkPad_T30
如果有时间可以仿这篇文章,把大作转移到中文Gentoo wiki上
使用T43的人很多,放到wiki上,大家可以一起来完善
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-7 10:59:33 | 显示全部楼层
OK...有空整理一个全的!
回复 支持 反对

使用道具 举报

发表于 2006-7-11 00:11:36 | 显示全部楼层
补充一下,如果硬盘识别成/dev/hd*
好似无法打开DMA的,用hdparm -tT /dev/hd* 得到的速度都是2MB左右。

要在kernel启动的时候加入
libata.atapi_enable=1 ide1=noprobe
这两行才行,并且把相关的kernel config加上
CONFIG_SCSI_SATA_INTEL_COMBINED=y
CONFIG_SCSI_SATA=y
CONFIG_SCSI_ATA_PIIX=y
CONFIG_SCSI_SATA_INTEL_COMBINED=y
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-14 10:13:51 | 显示全部楼层
对,就是这样,
在T43中如果没有使用SATA,也就是/dev/hda设备的时候,
速度会慢,而且无法打开DMA,在网上搜索了一些不能打开DMA的方法,
好象都不很好用。

所以还是吧SATA打开吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表