新しいパソコンにUbuntu16.04をインストールしましたが,ネットにつながりませんでした.
問題は,ネットワーク機器(有線)が認識されていないこと。ifconfigをしたら,loのローカルループバックしか表示されませんでした.正常であれば,イーサネットの項目も同時に一緒に表示されるはずです.
ググッてたくさん出てくる情報は,e1000eのネットワークドライバをmake installするもの.基本的には,この方針で治ったのですが,他に必要な操作もあったので残しておきます.(このパソコンのみ必要な操作なのかもしれませんが^_^)
lspci | grep Ethernetで表示されるのは以下の通り。(使っているネットワーク機器)
Intel Corporation Device 15bc (rev 10)
手順1.ドライバのダウンロード&解凍
ここからe1000-3.4.2.1をダウンロード(2019/2/11)
ネットは使えないと思うので,別PCでダウンロードしてUSBなどで移しましょう.私は,windowsを同じPCにデュアルブートしてるので,windowsでダウンロードしてデータ保存用のHDDに入れてUbuntuからアクセスしました.
適当なディレクトリで,
tar -zxvf e1000e-3.4.2.1.tar.gz
で解凍しましょう.
手順2.ソースの修正
e1000e-3.4.2.1/src/nvm.の関数を次のように書き換えます.
/* 書き換え前 */
s32 e1000e_validate_nvm_checksum_generic(struct e1000_hw *hw) {
s32 ret_val;
u16 checksum = 0;
u16 i, nvm_data;
for (i = 0; i < (NVM_CHECKSUM_REG + 1); i++) {
ret_val = e1000_read_nvm(hw, i, 1, &nvm_data);
if (ret_val) {
e_dbg("NVM Read Error\n");
return ret_val;
}
checksum += nvm_data;
}
if (checksum != (u16)NVM_SUM) {
e_dbg("NVM Checksum Invalid\n");
return -E1000_ERR_NVM;
}
return 0;
}
/* 書き換え後 */
s32 e1000e_validate_nvm_checksum_generic(struct e1000_hw *hw)
{
return 0;
}
手順3.インストール
makeしてinstallします.
- e1000e-3.4.2.1/srcでmake
- sudo make install
- sudo modprobe e1000e
- sudo update-initramfs -u #次回起動時もこのモジュールを使用する
以前にmodoprobe e1000eしたことある場合は,3の前にsudo rmmod e1000eをしましょう.
makeの時になんかエラー出ましたが,無視して進めたら私の環境ではネットにつながりました.
以上です( ´ー`)フゥー...
No responses yet