最新のカーネルではndiswrapperが動かずWLI-CB-AMG54も動きませんでした。
前の関連記事:linuxBean14.04(181)使用するカーネルのバージョンを指定する
WLI-CB-AMG54のWindows2000用ドライバーを入手する
Linux用のドライバーはないようで、Windows用のドライバーを使います。
ドライバーダウンロード BUFFALO Wireless LAN Driver Disk | BUFFALO バッファロー
ここからwdrv-1052.exeをダウンロードしました。
アーカイバでは解凍できないので、Wineで解凍します。
ファイルマネージャでwdrv-1052.exeを右クリック→linuxBeanWine プログラムの実行。
解凍が終わるとWindows用のインストーラーが起動するのでそれはキャンセルします。
wdrv-1052.exeがあったフォルダにwdrv-1052という名前のフォルダができます。
使用するファイルはこのフォルダ下のCBAMG54/WIN2000フォルダにあります。
Windows2000用ドライバーをインストールする
スタート→設定→Windows用無線LANドライバ。
新しいドライバのインストール。
wdrv-1052/CBAMG54/WIN2000フォルダにあるnetamg54.infを選択します。
最新のカーネルだと「モジュールをロードすることができませんでした。」とでてndiswrapperの挿入に失敗しますが、これでインストールはこれで完了です。
これでカードを挿してもフリーズしなくなりますが、カードを動かすにはカーネルを古いものに戻さないといけません。
linuxBean14.04(181)使用するカーネルのバージョンを指定するの方法で、3.13.0-158から3.13.0-85にカーネルを変更するとWLI-CB-AMG54が使えるようになりました。
古いカーネルを使う以外の解決方法はわかりませんでした。
3.13.0-158でndiswrapperをコンパイルしてみる
3.13.0-158でndiswrapperを挿入できない理由を探るために3.13.0-158でndiswrapper 1.61をコンパイルしてみました。
コンパイルにするにはまずbuild-essentialをインストールしておかないといけません。
ndiswrapperのソースはndiswrapper - Browse /stable at SourceForge.netからndiswrapper-1.61.tar.gzをダウンロードして解凍しました。
解凍してでてきたndiswrapper-1.61フォルダをファイルマネージャで開いて、ツール→現在のフォルダを端末で開く。
sudo su
make
これでコンパイルしてみると、エラーがでてきます。
root@dynabookSS:/home/pq/ダウンロード/ndiswrapper-1.61# make make -C utils make[1]: ディレクトリ `/home/pq/ダウンロード/ndiswrapper-1.61/utils' に入ります gcc -g -Wall -I../driver -o loadndisdriver loadndisdriver.c make[1]: ディレクトリ `/home/pq/ダウンロード/ndiswrapper-1.61/utils' から出ます make -C driver make[1]: ディレクトリ `/home/pq/ダウンロード/ndiswrapper-1.61/driver' に入ります make -C /usr/src/linux-headers-3.13.0-158-generic M=/home/pq/ダウンロード/ndiswrapper-1.61/driver make[2]: ディレクトリ `/usr/src/linux-headers-3.13.0-158-generic' に入ります LD /home/pq/ダウンロード/ndiswrapper-1.61/driver/built-in.o MKEXPORT /home/pq/ダウンロード/ndiswrapper-1.61/driver/crt_exports.h MKEXPORT /home/pq/ダウンロード/ndiswrapper-1.61/driver/hal_exports.h MKEXPORT /home/pq/ダウンロード/ndiswrapper-1.61/driver/ndis_exports.h MKEXPORT /home/pq/ダウンロード/ndiswrapper-1.61/driver/ntoskernel_exports.h MKEXPORT /home/pq/ダウンロード/ndiswrapper-1.61/driver/ntoskernel_io_exports.h MKEXPORT /home/pq/ダウンロード/ndiswrapper-1.61/driver/rtl_exports.h MKEXPORT /home/pq/ダウンロード/ndiswrapper-1.61/driver/usb_exports.h CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/crt.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/hal.o /usr/src/linux-headers-3.13.0-158-generic/scripts/ubuntu-retpoline-extract-one: eval: 行 28: 対応する `'' を探索中に予期しないファイル終了 (EOF) です /usr/src/linux-headers-3.13.0-158-generic/scripts/ubuntu-retpoline-extract-one: eval: 行 29: 構文エラー: 予期しないファイル終了 (EOF) です CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/iw_ndis.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/loader.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/ndis.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/ntoskernel.o /usr/src/linux-headers-3.13.0-158-generic/scripts/ubuntu-retpoline-extract-one: eval: 行 28: 対応する `'' を探索中に予期しないファイル終了 (EOF) です /usr/src/linux-headers-3.13.0-158-generic/scripts/ubuntu-retpoline-extract-one: eval: 行 29: 構文エラー: 予期しないファイル終了 (EOF) です contentmap: 00000010: invalid offset CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/ntoskernel_io.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/pe_linker.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/pnp.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/proc.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/rtl.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/wrapmem.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/wrapndis.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/wrapper.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/usb.o CC [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/divdi3.o LD [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/ndiswrapper.o Building modules, stage 2. MODPOST 1 modules WARNING: "__x86_indirect_thunk" [/home/pq/ダウンロード/ndiswrapper-1.61/driver/ndiswrapper.ko] undefined! CC /home/pq/ダウンロード/ndiswrapper-1.61/driver/ndiswrapper.mod.o LD [M] /home/pq/ダウンロード/ndiswrapper-1.61/driver/ndiswrapper.ko make[2]: ディレクトリ `/usr/src/linux-headers-3.13.0-158-generic' から出ます make[1]: ディレクトリ `/home/pq/ダウンロード/ndiswrapper-1.61/driver' から出ますハイライトした行にコンパイルエラーがでています。
いずれもretpolineと__x86_indirect_thunk関連のもので、これらは2018年に話題になったCPUの脆弱性への対策です。
GoogleはSpectreとMeltdownの対策を昨年6月に開始し12月には完了していた。性能低下の報告はなし - Publickeyには「Retpolineによって、コンパイル時にソースコードを変更することなくインフラを保護することができました。」と書いてありますが、対策を打ったカーネル3.13ではndiswrapperはコンパイルできなくなるようです。
Retpolineの14.04への適用は2018年1月に3.13.0-140からされたようなので(SecurityTeam/KnowledgeBase/SpectreAndMeltdown - Ubuntu Wiki)、それ以降のカーネルではndiswrapperは動かないのかもしれません。
でもカーネルを3.13.0-139に変更して動くか確認してみようとしましたが、カーネルのlinux-image-3.13.0-139をSynapticパッケージマネージャでインストールしてそれで起動してみると有線LANすらも繋がらなくなったので確認するのはあきらめました。
ちなみにこのままmake installはエラーなく終わります。
root@dynabookSS:/home/pq/ダウンロード/ndiswrapper-1.61# make install make -C driver install make[1]: ディレクトリ `/home/pq/ダウンロード/ndiswrapper-1.61/driver' に入ります mkdir -p -m 755 /lib/modules/3.13.0-158-generic/misc install -m 0644 ndiswrapper.ko /lib/modules/3.13.0-158-generic/misc /sbin/depmod -a 3.13.0-158-generic make[1]: ディレクトリ `/home/pq/ダウンロード/ndiswrapper-1.61/driver' から出ます make -C utils install make[1]: ディレクトリ `/home/pq/ダウンロード/ndiswrapper-1.61/utils' に入ります mkdir -p -m 755 /sbin mkdir -p -m 755 /usr/sbin install -m 755 loadndisdriver /sbin install -m 755 ndiswrapper /usr/sbin install -m 755 ndiswrapper-buginfo /usr/sbin make[1]: ディレクトリ `/home/pq/ダウンロード/ndiswrapper-1.61/utils' から出ます mkdir -p -m 755 /usr/share/man/man8 install -m 644 ndiswrapper.8 /usr/share/man/man8 install -m 644 loadndisdriver.8 /usr/share/man/man8だけどmodprobeでモジュールの挿入に失敗します。
root@dynabookSS:/home/pq/ダウンロード/ndiswrapper-1.61# modprobe ndiswrapper modprobe: ERROR: could not insert 'ndiswrapper': Unknown symbol in module, or unknown parameter (see dmesg)dmsegでエラー個所をみると_x86_indirect_thunkがわからないといわれています。
[ 4758.892966] ndiswrapper: module verification failed: signature and/or required key missing - tainting kernel [ 4758.893074] Disabling lock debugging due to kernel taint [ 4758.894815] ndiswrapper: Unknown symbol __x86_indirect_thunk (err 0)_x86_indirect_thunkは一連のCPUの脆弱性への対策がらみのものです。
(2018.9.28追記。PlanexのGW-NS11Cはダウンロード|GW-NS11C:PLANEXからダウンロードしたWindows用のドライバーはインストールできましたが、
ADMtek SMC2653W v2 802.11bのハードウェアスイッチで無効になっています、といわれて使えませんでした。ACTランプはオレンジ色に点滅していました。)
参考にしたサイト
ドライバーダウンロード BUFFALO Wireless LAN Driver Disk | BUFFALO バッファロー
WLI-CB-AMG54はこのWIN2000用ドライバで動かせませた。
ndiswrapper - Browse /stable at SourceForge.net
ndiswrapperのソースのダウンロードページ。
GoogleはSpectreとMeltdownの対策を昨年6月に開始し12月には完了していた。性能低下の報告はなし - Publickey
2018年に話題になったCPUの脆弱性。
SecurityTeam/KnowledgeBase/SpectreAndMeltdown - Ubuntu Wiki
上記のCPUの脆弱性に対するUbuntuの対応。
0 件のコメント:
コメントを投稿