7月中旬买了块腾达的Tenda W541U V2.0的无线网卡,当时没想到要在linux下用,回来后才发现驱动问题比较麻烦,官方不提供linux下的驱动,网上的解决方案没有试成功的,很是郁闷。 给Tenda的技术支持写过信,给到了一个驱动,但没有说具体编译的细节,自己试着
7月中旬买了块腾达的Tenda W541U V2.0的无线网卡,当时没想到要在linux下用,回来后才发现驱动问题比较麻烦,官方不提供linux下的驱动,网上的解决方案没有试成功的,很是郁闷。
给Tenda的技术支持写过信,给到了一个驱动,但没有说具体编译的细节,自己试着编译出一个.o文件,lsmod后还是检测不到无线网卡。再写信就无回音了。可能这个问题很好解决,但自己确实搞不定。
前两天到ubuntu论坛网站上去看,发现老外的一篇贴子,说是解决了这个问题,按照相应步骤试了一下,果然编译了可以使用的驱动,现将步骤和应注意事项总结如下,还希望能帮助和我一样用Tenda W541U V2.0(这个型号我现在是倒背如流了)无线网卡的人!
参考的网址:http://georgia.ubuntuforums.org/showthread.php?t=1285828
标题是:Tenda W541U V2.0 Wireless USB Adapter / Ralink RT2070
具体的流程大家可以参考贴子上的步骤进行,我只是简单的总结一下流程与要需注意的地方:
一、需求:
1 硬件:
无线网卡型号:
Tenda W541U V2.0 Wireless USB Adapter ( Ralink RT2070L Chipset)
在命令终端里输入:lsusb
关于无线网卡的内容应该是类似于以下:
Bus 001 Device 003: ID 148f:2070 Ralink Technology, Corp.
其中ID 后面必须是148f:2070 ,如果不是,不能保证后面是否成功。|
2 驱动下载:
Driver:
RT3070USB(RT307x) http://www.ralinktech.com/support.php?s=2
3 操作系统:ubuntu 9.04
二、步骤:
注意: 以下操作凡是因权限问题而未执行的,请在前面加上sudo再次尝试!
1. 下载RT3070USB driver(上面的网址)
2. 解压:
#sudo tar jxvf 2009_0525_RT3070_Linux_STA_v2.1.1.0.bz2
3 在 os/linux下的usb_main_dev.c 里的#ifdef RT3070下面增加以下语句:
{USB_DEVICE(0x148F,0x2070)}, /* Ralink 2070L */
4 编译模块:
回到刚开始的目录,即解决完进入的第一层目录:
cd ../..
make
5 如果编译成功,则安装:|
make install
如果编译不成功,且你的LINUX 内核版本高于等于2.6.31 的情况,请到步骤11查看并处理!
6 COPY .DAT文件到 /etc/Wireless,copy .bin 到 /lib/firmware
#mkdir -p /etc/Wireless/RT2870STA
#cp RT2870STA.dat /etc/Wireless/RT2870STA/
#apt-get install tofrodos
#dos2unix /etc/Wireless/RT2870STA/RT2870STA.dat
#chmod +x /etc/Wireless/RT2870STA/RT2870STA.dat
#cp common/rt2870.bin /lib/firmware/
注意:要安装dos2unix来去掉一些windows下文件转过来时的多余的字符。
7 启动模块:
#modprobe rt3070sta
8 测试模块(以下192.168.0.33的IP地址自己定 ):
#ifconfig ra0 inet 192.168.0.33 up
#iwconfig ra0
这时,如果输入:ifconfig,应该可以看到ra0设备
9 配置网卡:
因为我用的不是ubuntu默认的网络管理工具,而是WICD工具,只需要 无线网络 处填入 ra0后其它的按相应网络设定配置后 即可配置完毕。
有两点要注意的:
a) 至于有用到WPA方式加密的情况,参考贴里有提到需要修改编译时的配置文件 os/linux/config.mk:
HAS_WPA_SUPPLICANT=y
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y
b) 如果使用WICD工具的话,将WPA Suppliant Driver选为wext。
10 刷新后,无线网络应该能被检测到,终于可以告别有线的日子了。happy一个!
11 对于LINUX 内核版本高于等于2.6.31 的情况,编译时会出现一个编译错误,参考贴中提供了patch。
下面这段我就不翻了,大家基本上都能看明白的。
UPDATE: Linux Kernel >= 2.6.31 / Ubuntu Karmic Koala 9.10 compile patch!
Ok, after speaking with another person and installing Ubuntu 9.10 on my other box I noticed this driver will not compile on my brand new 2.6.31-14-generic kernel.
The error I received (and probably many people do when attempting to compile most ralink drivers under 2.6.31 because this kernel replaced the old net_device structure with a new one called net_device_ops) was:
Code:
CC [M] /root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.o /root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.c: In function ‘RtmpOSNetDevAttach’: /root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.c:1510: error: ‘struct net_device’ has no member named ‘open’ /root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.c:1511: error: ‘struct net_device’ has no member named ‘stop’ /root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.c:1512: error: ‘struct net_device’ has no member named ‘hard_start_xmit’ /root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.c:1513: error: ‘struct net_device’ has no member named ‘do_ioctl’ /root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.c:1519: error: ‘struct net_device’ has no member named ‘get_stats’ /root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.c:1553: error: ‘struct net_device’ has no member named ‘validate_addr’ make[2]: *** [/root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux/../../os/linux/rt_linux.o] Error 1 make[1]: *** [_module_/root/2009_0525_RT3070_Linux_STA_v2.1.1.0/os/linux] Error 2 make[1]: Leaving directory `/usr/src/linux-headers-2.6.31-14-generic' make: *** [LINUX] Error 2
After some deep searching I found this rt3070-2.6.31-compile.patch (a part of rt3070-kmod Fedora 11 package) on lists.rpmfusion.org/pipermail/rpmfusion-commits/2009-August/006214.html. Once you apply it, it will compile just fine.
I have attached it to this post, just:
Code:
$gunzip rt3070-2.6.31-compile.patch.gz $patch -p0 <p>Also make sure that rt2800usb, rt2x00usb and rt2x00lib are blacklisted as they now recognize this device (under Ubuntu 9.10) but the device will not function properly (no scan results).</p> <p> </p><p>Code:</p> <pre class="brush:php;toolbar:false">$sudo pico /etc/modprobe.d/blacklist.conf add the following lines: blacklist rt2x00usb blacklist rt2x00lib blacklist rt2800usb close and save. $sudo rmmod rt2x00usb (just in case) $sudo rmmod rt2x00lib (just in case) $sudo rmmod rt2800usb (just in case)
12 我只是将W541U用来当Station模式来用,AP模式还没用过,具体设置不知如何操作。
祝各位好运!

InnoDB는 Redologs 및 Undologs를 사용하여 데이터 일관성과 신뢰성을 보장합니다. 1. Redologs는 사고 복구 및 거래 지속성을 보장하기 위해 데이터 페이지 수정을 기록합니다. 2. 결점은 원래 데이터 값을 기록하고 트랜잭션 롤백 및 MVCC를 지원합니다.

설명 명령에 대한 주요 메트릭에는 유형, 키, 행 및 추가가 포함됩니다. 1) 유형은 쿼리의 액세스 유형을 반영합니다. 값이 높을수록 Const와 같은 효율이 높아집니다. 2) 키는 사용 된 인덱스를 표시하고 NULL은 인덱스가 없음을 나타냅니다. 3) 행은 스캔 한 행의 수를 추정하여 쿼리 성능에 영향을 미칩니다. 4) Extra는 최적화해야한다는 Filesort 프롬프트 사용과 같은 추가 정보를 제공합니다.

Temporary를 사용하면 MySQL 쿼리에 임시 테이블을 생성해야 할 필요성이 있으며, 이는 별개의, 그룹 비 또는 비 인덱스 열을 사용하여 순서대로 발견됩니다. 인덱스 발생을 피하고 쿼리를 다시 작성하고 쿼리 성능을 향상시킬 수 있습니다. 구체적으로, 설명 출력에 사용되는 경우, MySQL은 쿼리를 처리하기 위해 임시 테이블을 만들어야 함을 의미합니다. 이것은 일반적으로 다음과 같은 경우에 발생합니다. 1) 별개 또는 그룹을 사용할 때 중복 제거 또는 그룹화; 2) OrderBy가 비 인덱스 열이 포함되어있을 때 정렬하십시오. 3) 복잡한 하위 쿼리 또는 조인 작업을 사용하십시오. 최적화 방법은 다음과 같습니다. 1) Orderby 및 GroupB

MySQL/InnoDB는 4 개의 트랜잭션 격리 수준을 지원합니다. Readuncommitted, ReadCommitted, ReturableRead 및 Serializable. 1. READUCMITTED는 커밋되지 않은 데이터를 읽을 수 있으므로 더러운 판독 값을 유발할 수 있습니다. 2. ReadCommitted는 더러운 읽기를 피하지만 반복 할 수없는 독서가 발생할 수 있습니다. 3. RepeatableRead는 더러운 읽기와 반복 할 수없는 독서를 피하는 기본 레벨이지만 팬텀 독서가 발생할 수 있습니다. 4. 직렬화 가능한 것은 모든 동시성 문제를 피하지만 동시성을 줄입니다. 적절한 격리 수준을 선택하려면 균형 잡힌 데이터 일관성 및 성능 요구 사항이 필요합니다.

MySQL은 웹 응용 프로그램 및 컨텐츠 관리 시스템에 적합하며 오픈 소스, 고성능 및 사용 편의성에 인기가 있습니다. 1) PostgreSQL과 비교하여 MySQL은 간단한 쿼리 및 높은 동시 읽기 작업에서 더 잘 수행합니다. 2) Oracle과 비교할 때 MySQL은 오픈 소스와 저렴한 비용으로 인해 중소 기업에서 더 인기가 있습니다. 3) Microsoft SQL Server와 비교하여 MySQL은 크로스 플랫폼 응용 프로그램에 더 적합합니다. 4) MongoDB와 달리 MySQL은 구조화 된 데이터 및 트랜잭션 처리에 더 적합합니다.

MySQL Index Cardinality는 쿼리 성능에 중대한 영향을 미칩니다. 1. 높은 카디널리티 인덱스는 데이터 범위를보다 효과적으로 좁히고 쿼리 효율성을 향상시킬 수 있습니다. 2. 낮은 카디널리티 인덱스는 전체 테이블 스캔으로 이어질 수 있으며 쿼리 성능을 줄일 수 있습니다. 3. 관절 지수에서는 쿼리를 최적화하기 위해 높은 카디널리티 시퀀스를 앞에 놓아야합니다.

MySQL 학습 경로에는 기본 지식, 핵심 개념, 사용 예제 및 최적화 기술이 포함됩니다. 1) 테이블, 행, 열 및 SQL 쿼리와 같은 기본 개념을 이해합니다. 2) MySQL의 정의, 작업 원칙 및 장점을 배우십시오. 3) 인덱스 및 저장 절차와 같은 기본 CRUD 작업 및 고급 사용량을 마스터합니다. 4) 인덱스의 합리적 사용 및 최적화 쿼리와 같은 일반적인 오류 디버깅 및 성능 최적화 제안에 익숙합니다. 이 단계를 통해 MySQL의 사용 및 최적화를 완전히 파악할 수 있습니다.

MySQL의 실제 응용 프로그램에는 기본 데이터베이스 설계 및 복잡한 쿼리 최적화가 포함됩니다. 1) 기본 사용 : 사용자 정보 삽입, 쿼리, 업데이트 및 삭제와 같은 사용자 데이터를 저장하고 관리하는 데 사용됩니다. 2) 고급 사용 : 전자 상거래 플랫폼의 주문 및 재고 관리와 같은 복잡한 비즈니스 로직을 처리합니다. 3) 성능 최적화 : 인덱스, 파티션 테이블 및 쿼리 캐시를 사용하여 합리적으로 성능을 향상시킵니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

드림위버 CS6
시각적 웹 개발 도구

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

WebStorm Mac 버전
유용한 JavaScript 개발 도구
