在dell 640m 笔记本上安装slackware11.0 并驱动intel 3945abg 无线网卡 教程

发布时间:2009-04-23
首先,你需要下载slackware 11.0 的1,2,3,4 四张CD,下载后请先安装好。
由于安装时,还是2.4的内核,为了发挥本本的性能。我们能将内核升级到2.6.18(对无线网卡支持较好)。
升级内核的方法,我大致说一下,特别要注意的是升级完成后,需要改lilo.conf文件,不然就会面对的是:
VFS: Cannot open root device ""303" or (0,0)
please append a correct "root=" boot option
Kernel Paic: VFS: unable to mount root fs on (0,0)
********************************************************
一。升级内核到2.6.18
1.请将下载的d4.iso解压(可以在windows里面先压出来),然后将test-2.6.18/source/linux-2.6.18/目录下面的所有文件复制到/usr/src/linux-2.6.18下面
root@dmh#cd /usr/src/linux-2.6.18
root@dmh#tar jxvf linux-2.6.18.tar.bz2
root@dmh#cp config-generic-2.6.18 linux-2.6.18/.config
root@dmh#make menuconfig
在进行menuconfig配置时,要特别注意一下,将您初次安装slackware 11.0时,/boot/目录所使用的文件系统支付要编入到内核中,而不是模块。比如我用的就是reiserfs,在menuconfig配置菜单中Files system里面,把reiserfs的选项用空格键改成[*] 不要是[M]
还有就是把ext2和ext3也进行相同的操作。由于slackware 的config-generic-2.6.18基本上已经为我们配好了,我们只需要改一下上面提到的Files system 这一项下面的文件系统支持就行了,接着保存退出。
root@dmh#make
编译内核和模块这个过程可能得1个来小时,我也不知道用了多长时间,我的640m好像是跑了1个多小时哈,半夜编译的时候都差点等睡着了,所以得有点耐心才行。完成后,我们继续下一步。
root@dmh#make install
这一步是执行安装新内核
root@dmh#cd /boot
root@dmh#mkinitrd -c -k 2.6.18 -m reiserfs
如果你是ext3文件系统,用下面的:
root@dmh#mkinitrd -c -k 2.6.18 -m jbd:ext3 -f ext3 -r /dev/hdb3
我们还需要手工修改lilo.conf文件,不然启动的时候,会出现前面提到的VSF错误。这个问题到底是怎样的原因,我查了很多的资料,应该是没有挂载上lilo.conf文件中提定的root=/dev/hda3,由于dell 640m 本本是sata硬盘,所以我们需要将lilo.conf中linux启动项的root=/dev/hda3 改成root=/dev/sda3 完整的如下
image = /boot/vmlinuz
initrd = /boot/initrd.gz
root = /dev/sda3
label = Lnx2618
read-only

这一行完了后,我们还需要改一下/etc/fstab 文件,将中间所有hda项,改成sda,这样新内核启用后,才能正常的挂载swap和/mnt/Win_C 这一些分区。

改完后,就可以reboot重新启动了。

2.让kde 可以设置屏幕为1280x800
在intel的网站上下载的linux驱动,不知道为何不能编译,看了一下它自带的Readme还是不知所云。。。。后来就跳过了这一步,采用改/etc/X11/xorg.conf 文件,用i810驱动。

修改如下部分:
/etc/X11/xorg.conf
# Any number of graphics device sections may be present

Section "Device"
Identifier "VESA Framebuffer"
Driver "i810" #这里是将vesa改成i810
#VideoRam 4096
# Insert Clocks lines here if appropriate
EndSection
#下面的是在Modes 多增加了 "1280x800"
Subsection "Display"
Depth 24
Modes "1280x800" "1024x768" "800x600" "640x480"
EndSubsection

Subsection "Display"
Depth 32
Modes "1280x800" "1024x768" "800x600" "640x480"
EndSubsection

修改完成后保存.
接着就是下载915resolution-0.5.2.tar.gz 文件,自己在网上找哈。下载后,请自己安装好。也就是解压后:
make
make install
就行了。
root@dmh#915resolution -l
会显示一个列表,dell 640m本本,我们就取58这个值,然后我们在/etc/rc.d/rc.local文件中添加如下一行:
915resolution 58 1280 800 32
保存重启后,就可以发现已经变成了1280x800宽屏了。

3.安装及配置无线网卡
本本自带的是intel 3945abg 无线网卡,所以我们得下载几个文件.
ipw3945-1.2.0.tgz

ipw3945d-1.7.22.tgz

ipw3945-ucode-1.14.2.tgz

开始安装步骤......................
root@dmh#tar xzvf ipw3945-1.2.0.tgz
root@dmh#cd ipw3945-1.2.0
root@dmh#make
root@dmh#DIR=$(sed -ne "s:^FIRMWARE_DIR=\([^, ]*\).*:\1:p" \
/etc/hotplug/firmware.agent)
root@dmh#tar xzvf ipw3945-ucode-1.14.2.tgz
root@dmh#cp ipw3945-ucode-1.14.2/ipw3945.ucode $DIR (注意:上面那个DIR与这一行命令需要在同一个bash里面执行哈,不然会提示cp出错)
root@dmh#tar xzvf ipw3945d-1.7.22.tgz
root@dmh#cp ipw3945d-1.7.22/x86/ipw3945d /sbin
root@dmh#cd ipw3945-1.2.0
root@dmh#make install
root@dmh#./load debug=0
root@dmh#iwconfig
看一下有没有eth1 在列表里面,如果有,就说明已经驱动成功了。
接下来,就是配置连接到无线网络中。
你可以用
root@dmh#iwlist eth1 scanning 来扫描附近的无线网络信号,如果找到,会有入点一些说明。
我这里是用的电信e8送的华为hg520s无线宽带猫,下面以我的猫为例说下如何配置。
修改
/etc/rc.d/rc.inet1.conf
# Config information for eth1: 这里是eht1,注意大利这个哦
USE_DHCP[1]="yes" #将它改成yes

修改
/etc/rc.d/rc.wireless
## NOTE : Comment out the following five lines to activate the samples below ...
## --------- START SECTION TO REMOVE -----------
## Pick up any Access Point, should work on most 802.11 cards
*)
INFO="intel 3945 802.11a/b/g"
# ESSID (extended network name) : My Network, any
ESSID="HG520s" #这个是华为hg520s的essid值
# Operation mode : Ad-Hoc, Managed, Master, Repeater, Secondary, auto
MODE="Managed"
# Frequency or channel : 1, 2, 3 (channel) ; 2.422G, 2.46G (frequency)
FREQ=""
CHANNEL="1" #这个改成1就是(2.4G),你也可以看你自己的无线路由器的信道是多少
# Bit rate : auto, 1M, 11M,54M
RATE="auto"
# Encryption key : 4567-89AB-CD, s:password
# Example for 40-bit encryption:
#KEY="883e-aa67-21 [1] key 5501-d0da-87 [2] key 91f5-3368-6b [3] key 2d73-31b7-96 [4]"
# Example for 104-bit encryption (aka 128-bit WEP):
#KEY="d5ad2f05abd048ecf10b1c80c7"
KEY="s:lmiao open" #这一项就是填写数据wep 加密的key,s:后面跟你的密码,我的是lmiao, open 参数是验证级别开放
# Other iwconfig parameters : power off, ap 01:23:45:67:89:AB
IWCONFIG=""
# iwspy parameters : + 01:23:45:67:89:AB
IWSPY=""
# iwpriv parameters : set_port 2, set_histo 50 60
IWPRIV=""
;;
## ---------- END SECTION TO REMOVE ------------

保存,然后在修改
etc/rc.d/rc.inet1
# @(#)/etc/rc.d/rc.inet1 10.2 Sun Jul 24 12:45:56 PDT 2005 (pjv)
/sbin/ipw3945d #加上了这一句,是为了在系统启动的时候,就能够连到无线局域网中。加到这里可以将就解决,理想的应该是加载模块那里。
保存后,就大功告成了。。。。。。。

写的真累,希望这篇文章,能帮助其它640m 用户少走一些弯路,有时候就是一步的错误,可能会让你搞上几个小时。有了别人的经验,遇到同样的问题,就能很快解决。分享经验,共进步。。。