中断後、イーサネットは再開しません。
Sudo service network-manager restart
動作しません。問題を解決するのは再起動のみです。
少なくともネットワークカーネルモジュールr8169の場合、この問題を追跡するUbuntuの主なバグは次のようです。
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1752772
この問題の影響を受けるすべての人がそこに行き、それがあなたに影響を与えることをマークすることをお勧めします。
Xubuntu 18.04の新規インストールを実行していますが、イーサネットインターフェイスはカーネルモジュールr8169を使用しています。
Sudo lshw -C network
情報グループは2つあり、1つはdescription: Ethernet interface
で始まり、もう1つはdescription: Wireless interface
で始まります。 description: Ethernet interface
の下で、次のようにconfiguration:
で始まる行を探します。
configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full firmware=rtl_nic/rtl8105e-1.fw ip=192.168.100.6 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s
ドライバーは次の場所にあります:driver=
。
Systemdは、サスペンドの前後に/lib/systemd/system-sleep
の下ですべての実行可能スクリプトを実行し、2つのパラメーターを渡します。$1
は状態(pre
、サスペンド前、またはpost
、サスペンド後) $2
はアクションです(suspend
、hibernate
、hybrid-state
、またはsuspend-then-hibernate
)。これは、systemd-suspend.service
のマニュアルページに記載されています。
サスペンドから再開する場合、イーサネットインターフェイスのモジュールをリロードする必要があります。afterサスペンド。そこで、スクリプト/lib/systemd/system-sleep/r8169-refresh
を作成しました。
#!/bin/bash
PROGNAME=$(basename "$0")
state=$1
action=$2
function log {
logger -i -t "$PROGNAME" "$*"
}
log "Running $action $state"
if [[ $state == post ]]; then
modprobe -r r8169 \
&& log "Removed r8169" \
&& modprobe -i r8169 \
&& log "Inserted r8169"
fi
実行可能にしました:
chmod +x /lib/systemd/system-sleep/r8169-refresh
スクリプトから記録されたメッセージは、スクリプトの名前とそのPIDでタグ付けされた/var/log/syslog
に送られます。これにより、スクリプトがカーネルモジュールをリロードしたかどうかを確認できます。
grep r8169-refresh /var/log/syslog
もう1つの単純な(r?)ソリューションを次に示します。サスペンドサイクルの後にモジュールをアンロード/リロードするだけのタスクを行うsystemdサービスを作成します(名前は/ etc/systemd/system/fix-r8169.service ):
[Unit]
Description=Fix RTL-8169 Driver on resume from suspend
After=suspend.target
[Service]
User=root
Type=oneshot
ExecStartPre=/sbin/modprobe -r r8169
ExecStart=/sbin/modprobe r8169
TimeoutSec=0
StandardOutput=syslog
[Install]
WantedBy=suspend.target
それからsystemctl enable fix-r8169.service
を実行するだけで設定できます!! Systemdは、サスペンドからの復帰時にモジュールを自動的にアンロードおよびリロードします。
乾杯!
それは私にも起こりました。
ネットワークカーネルモジュール/ドライバーのアンロード/リロードが機能します。
私はr8169なので、(ルートとして):(手で入力したので、遅延がありました)
Sudo modprobe -r r8169
Sudo modprobe -i r8169
最初の試行でmiiも削除しました。必要ありません。
私は同じ問題を抱えていたので、この解決策を見つけました。
実行:Sudo lshw -C network
ネットワークカードカーネルモジュールを見つける
* -network、説明:イーサネットインターフェイス、設定フィールドで見つかったdriver=sky2
sky2は、私のラップトップ用のイーサネットネットワークカーネルモジュールです。
次の場所にファイルsky2.shを作成します:/lib/systemd/system-sleep/
フォルダー
#!/bin/bash
modprobe -r sky2 # unload sky2 kernel module
modprobe -i sky2 # reload sky2 kernel module
そして、以下を使用して権限を変更します。
Sudo chmod a+x sky2.sh
その後、問題は解決しました。
uKUUを使用してカーネルを4.15から4.20(2019年1月16日の最新版)に更新することにより、Ubuntu 18.04 Bionicでこの問題を解決しました
最新のカーネルをインストールするにはUbuntu Kernel Update Utilityをインストールします
Sudo add-apt-repository ppa:teejee2008/ppa
Sudo apt-get install ukuu
次のコマンドでアクセス制御を無効にします。
Sudo xhost +
ukuuでインストールする
Sudo ukuu
Sudo ukuu --install-latest
そして再起動
Sudo reboot
イーサネット接続を検出しますか?
それから
NetworkManager.conf
を開きます
Sudo nano /etc/NetworkManager/NetworkManager.conf
dns=dnsmasq
にコメント(#を追加)
[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq
[ifupdown]
managed=true
ネットワークマネージャーを再起動します
Sudo service network-manager restart
押す Ctrl+Alt+T ターミナルに移動して次のように入力します:
Sudo apt-get purge tlp
または
/etc/default/tlp
を編集して変更:
WOL_DISABLE = NO
に
WOL_DISABLE = YES
最初に確認すること:ネットワークマネージャー/サービスを再起動します:
Sudoサービスネットワークマネージャーの再起動
うまくいかない場合は、この投稿の他の回答を確認してください
Dell Inspiron 15でも同じ問題が発生しました。再起動またはサスペンド後に有線ネットワークがありません。
BIOSの設定を変更することでこれを修正したようです。
詳細設定-> Intel(R)Smart Connect Technology->無効
(デフォルトは有効です)
副作用として、すべての設定をデフォルト値にリセットすると、メニュー項目が消えて再び表示されます。
これは、2018年7月28日にUbuntu 16.04から18.04にアップグレードした後、Gigabyte-B250M-DS3Hマザーボードでも発生しました。カーネルは4.15.0-29-genericです。
Sudo lshw -C network
の結果はRTL8111/8168/8411 PCI Expressギガビットイーサネットコントローラーを示し、r8169が使用されているドライバーであることを示しました。
最終的に機能したのは、イーサネットコントローラー専用のドライバーをインストールすることでした(大きな驚き)。
Sudo apt install r8168-dkms
その後、コンピューターを再起動します(andypotterに感謝します)。 r8169をブラックリストに登録する必要はありませんでしたが、/lib/systemd/system-sleep/
(Pauloのアドバイス)を呼び出してr8168を削除して再挿入するスクリプトをr8168-refresh-after-suspend
で作成する必要がありました。
#!/bin/bash
# $1 is the state (pre or post)
# $2 is the action (suspend)
case $1/$2 in
pre/suspend)
modprobe -r r8168
;;
post/suspend)
modprobe -i r8168
;;
esac
そして、もちろん、それを実行可能にします:
Sudo chmod +x /lib/systemd/system-sleep/r8168-refresh-after-suspend
これは魅力的でした。したがって、これはまだ4.15.0-29カーネルの問題ですが、バンドエイドの修正は引き続き機能します。
私は同じ問題を抱えていましたが、ここでの解決策はうまくいきませんでした。私はこのテーマについていくつかのフォーラムを数日かけて過ごし、あらゆることを試しました。カーネルをアップグレードするか、以前のモジュールドライバーをインストールするという2つの代替ソリューションが記載されています。後者を選択し、r8168ドライバーをインストールしました。最初は、それも失敗しました。しかし、私は機能する何かを発見し、それをパウロのソリューションに適合させました。
Kernel 4.15.0-24-genericで(K)ubuntu 18.04を実行しています。
lshw -C networkからの出力にはこれが含まれています...
description: Ethernet interface
product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
vendor: Realtek Semiconductor Co., Ltd.
physical id: 0
bus info: pci@0000:05:00.0
logical name: enp5s0
version: 0c
serial: 80:fa:5b:49:69:b3
size: 1Gbit/s
capacity: 1Gbit/s
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=r8168 driverversion=8.045.08-NAPI duplex=full ip=192.168.10.213 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
resources: irq:133 ioport:e000(size=256) memory:df000000-df000fff memory:d0000000-d0003fff
パッケージr8168-dkmsをインストールしましたが、それでは十分ではありませんでした。さらに2つのステップが必要でした。
ステップ1)ファイルを編集します/ etc/modprobe.d/r8168-dkms.confそして行を有効にします(すなわちコメントを削除します)blacklist r8169 =
ステップ2) Pauloのソリューションに基づいて、次のスクリプトを作成しました/ lib/systemd/system-sleep/r8168-refresh
#!/ bin/bash PROGNAME = $(basename "$ 0") state = $ 1 action = $ 2 function log { logger -i -t "$ PROGNAME" "$ *" } log "Running $ action $ state" if [[$ state == post]]; then log "ifconfig down enp5s0" ifconfig enp5s0 down log "ifconfig up enp5s0" ifconfig enp5s0 192.168.10.213 fi
このコードは、もちろん私のマシン(デバイス名とIPアドレス)に固有のものです。確かに改善できますが、現時点では私のニーズを満たしています。
これはNetworkManagerで機能します。
/lib/systemd/system-sleep/
上のいくつかの修正ファイルスクリプト(イーサネットアダプターに変更)がそれぞれ機能することを示します。
それでも、サスペンド後にケーブルモデムデバイスがオフになり、システムの再開後にオンになった場合、Ubuntuベースのシステムは(通知領域の)ネットワークアイコンに接続が表示されているにもかかわらず、インターネットに再接続できません。
再度修正するには、ネットワークアイコン"イーサネット接続をクリックする必要があります。したがって、接続が正常に更新されます。バツ-
Ethernet controller: VIA Technologies, Inc. VT6105/VT6106S [Rhine-III]
Subsystem: D-Link System Inc DFE-520TX Fast Ethernet PCI Adapter
Kernel driver in use: via-rhine
Kernel modules: via_rhine
追伸一部のvpnのCLIは、サスペンドから戻った後に機能しなくなるようです。
同じ問題(driver = r8169)があります。サスペンドから再開した後、イーサネットが機能しません。
カーネル4.13.0-31で完全に機能します。つまり、イーサネットはサスペンドから再開した後も引き続き機能します。
しかし、カーネル4.15.0-32では、サスペンドから再開した後にイーサネットが機能しません。私は修正を試みました
modprobe -r r8169
modprobe -i r8169
しかし、これは効果がありません。
これを https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1752772 に報告しました
受け入れられた回答(現在は古くなっています)にコメントしたり、賛成したりするほどの評判がありません
lsmod | grep r8169
を実行し、r8169カーネルモジュールがロードされており、カーネルが4.15.0-24-genericより古いことを示している場合、受け入れられた回答にリンクされているバグの影響を受ける可能性が最も高くなります https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1752772
ところで私はこのバグを経験し、私にとってlspci | grep 'Gigabit Ethernet'
はRTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
を示しています
このバグは修正されました。
カーネルが4.15.0-24-genericより古い場合は、単に実行します
apt-get update
apt-get upgrade
apt-get dist-upgrade
reboot