新しいパソコンに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します.

  1. e1000e-3.4.2.1/srcでmake
  2. sudo make install
  3. sudo modprobe e1000e
  4. sudo update-initramfs -u #次回起動時もこのモジュールを使用する

以前にmodoprobe e1000eしたことある場合は,3の前にsudo rmmod e1000eをしましょう.

makeの時になんかエラー出ましたが,無視して進めたら私の環境ではネットにつながりました.

以上です( ´ー`)フゥー...

Categories:

Tags:

No responses yet

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA