Ubuntu 18.04 - Ethernet bị ngắt kết nối sau khi tạm dừng


29

Ethernet không hoạt động trở lại sau khi tạm dừng.

sudo service network-manager restart

không hoạt động. Chỉ khởi động lại giải quyết vấn đề.


Vấn đề này đã trở lại với tôi trong Xubfox 18.04.2, kernel 4.15.0-54
HEKTO

Câu trả lời:


45

Lỗi chính của Ubuntu theo dõi vấn đề này, ít nhất là đối với mô-đun hạt nhân mạng r8169, dường như là:

https://bugs.launchpad.net/ubfox/+source/linux/+orms/1752772

Tôi khuyến khích tất cả mọi người bị ảnh hưởng bởi vấn đề này đến đó và đánh dấu rằng nó ảnh hưởng đến bạn, để những người bảo trì có ý thức tốt hơn về mức độ nghiêm trọng của nó.

Tôi đang chạy bản cài đặt mới của Xubfox 18.04 và giao diện Ethernet của tôi sử dụng mô-đun hạt nhân r8169 , mà tôi phát hiện ra khi chạy:

sudo lshw -C network

Sẽ có 2 nhóm thông tin, một nhóm bắt đầu description: Ethernet interfacevà một nhóm khác description: Wireless interface. Bên dưới description: Ethernet interface, hãy tìm một dòng bắt đầu bằng configuration:, như thế này:

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

Người lái xe sẽ ở đây : driver=.

Systemd chạy tất cả các kịch bản thực thi dưới /lib/systemd/system-sleeptrước và sau khi đình chỉ, đi qua 2 thông số, $1là nhà nước ( pretrước khi đình chỉ, hoặc postsau khi đình chỉ), và $2là hành động ( suspend, hibernate, hybrid-state, hoặc suspend-then-hibernate). Điều này được ghi lại trong trang người đàn ông cho systemd-suspend.service.

Chúng ta cần tải lại mô-đun cho giao diện Ethernet khi tiếp tục tạm dừng, sau khi tạm dừng. Vì vậy, tôi đã tạo ra kịch bản /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

và làm cho nó thực thi:

chmod +x /lib/systemd/system-sleep/r8169-refresh

Các thông điệp được ghi lại từ tập lệnh sẽ /var/log/syslogđược gắn thẻ với tên của tập lệnh và PID của nó. Bằng cách này, bạn có thể kiểm tra xem tập lệnh có tải lại mô-đun kernel hay không:

grep r8169-refresh /var/log/syslog

madzohan , tôi cảm thấy có thể là thừa khi thêm chỉnh sửa của bạn, vì tôi đã đề cập hai lần trong câu trả lời rằng tập lệnh phải được thực thi: "systemd chạy tất cả các tập lệnh thực thi trong / lib / systemd / system-ngủ" và cả "Tôi đã tạo và thực hiện kịch bản thực thi / lib / systemd / system-ngủ / r8169-refresh "
Paulo Marcel Coelho Aragão

Điều này đã được sửa trong kernel 4.15.0-24.26, được phát hành vào ngày 07/01/2018, vì vậy không cần phải có cách giải quyết nữa.
Paulo Marcel Coelho Aragão

1
Tôi gặp vấn đề này trên máy tính xách tay của mình kể từ khi cài đặt một số cập nhật vài ngày trước. Các giải pháp được đưa ra ở trên vẫn không giải quyết được vấn đề. Cảm ơn rất nhiều!
Daniel

@Daniel, bạn có thể đăng kết quả đầu ra của: chính sách apt linux-image-generic không? Vấn đề này đã được giải quyết kể từ ngày 07/01/2018, cách giải quyết này không cần thiết nữa.
Paulo Marcel Coelho Aragão

Nó không chỉ là 18.04. Vào ngày 16.04, trình điều khiển hạt nhân rtl8169 đã phải được tải và tải sau khi tạm ngưng: Askubfox.com/questions/950871/ Thẻ
WinEunuuchs2Unix

8

Đây là một giải pháp (r?) Đơn giản khác: tạo một dịch vụ systemd với nhiệm vụ duy nhất là dỡ / tải lại mô-đun sau một chu kỳ tạm dừng (tôi đặt tên là /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

Sau đó, chỉ cần thực hiện systemctl enable fix-r8169.service, và bạn nên được thiết lập !! Bây giờ Systemd sẽ tự động tải và tải lại mô-đun của bạn sau khi tạm dừng.

Chúc mừng!


3

Nó cũng xảy ra với tôi

Dỡ / tải lại các mô-đun / trình điều khiển hạt nhân mạng hoạt động.

Của tôi là r8169, vì vậy (là root): (Tôi gõ bằng tay, nên có một sự chậm trễ)

sudo modprobe -r r8169
sudo modprobe -i r8169

Tôi cũng đã loại bỏ mii trong lần thử đầu tiên. Không cần thiết mặc dù.


sudo modprobe -i r8169
aaaa

đã làm việc! Bây giờ tôi có phải làm điều này bằng tay không?
aaaa

Điều này giống như giải pháp được chấp nhận, nhưng không đưa nó vào một tập lệnh sẽ được thực thi tại sơ yếu lý lịch và không có chức năng ghi nhật ký.
Đaminh 108

3

Tôi đã có cùng một vấn đề và tôi tìm thấy giải pháp này.

  1. chạy: sudo lshw -C network
    để tìm mô-đun hạt nhân thẻ mạng của bạn

    Trong * -network, mô tả: Giao diện Ethernet, trong trường cấu hình được tìm thấy
    driver=sky2cho tôi. sky2 là một mô-đun hạt nhân mạng ethernet cho máy tính xách tay của tôi.

  2. Tôi tạo một tập tin sky2.sh vào: /lib/systemd/system-sleep/ thư mục với

    #!/bin/bash 
    modprobe -r sky2 # unload sky2 kernel module 
    modprobe -i sky2 # reload sky2 kernel module 
    

    và thay đổi quyền với:

    sudo chmod a+x sky2.sh
    

Sau đó, vấn đề được giải quyết.


Điều này giống như giải pháp được chấp nhận, không có chức năng ghi nhật ký.
Đaminh 108

1

Nó phát hiện kết nối Ethernet?

sau đó

mở NetworkManager.conf

sudo nano /etc/NetworkManager/NetworkManager.conf

Nhận xét (Thêm #) dns=dnsmasq

[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq

[ifupdown]
managed=true

Khởi động lại trình quản lý mạng

sudo service network-manager restart

[main] plugins = ifupdown, keyfile [ifupdown] Managed = true [device] wifi.scan-rand-mac-address = no
aaaa

đây là những gì tôi có trong tập tin ....
aaaa

Bạn đã cập nhật tập tin conf trước đây? nếu có khởi động lại và kiểm tra
Santhosh Veer

Tôi đã thử sửa chữa Santhosh Veer của bạn. Vẫn xám xịt ra. Ethernet.
aaaa

chạy lệnh này systemctl status NetworkManager.serviceđể kiểm tra lỗi
Santhosh Veer

1

tôi đã giải quyết vấn đề này trên Ubuntu 18.04 Bionic của mình bằng cách cập nhật kernel từ 4.15 lên 4.20 (mới nhất vào ngày 16 tháng 1 năm 2012) bằng UKUU

để cài đặt kernel mới nhất cài đặt Ubuntu Kernel Update Utility

sudo add-apt-repository ppa:teejee2008/ppa

sudo apt-get install ukuu

vô hiệu hóa kiểm soát truy cập bằng lệnh sau:

sudo xhost +

sau đó cài đặt với ukuu

sudo ukuu

sudo ukuu --install-latest

và khởi động lại

sudo reboot

0

Nhấn Ctrl+ Alt+ Tđể đi đến một thiết bị đầu cuối và gõ:

sudo apt-get purge tlp

hoặc là

chỉnh sửa /etc/default/tlpvà thay đổi:

WOL_DISABLE = NO

đến

WOL_DISABLE = YES

Chào mừng bạn đến hỏi Ubuntu! ;-) Bạn có thể vui lòng xem lại các chỉnh sửa của tôi và cũng xem lại trợ giúp chỉnh sửa để cải thiện khả năng đọc câu trả lời của bạn trong tương lai ... ;-)
Fabby

0

Tôi không có đủ danh tiếng để bình luận hoặc đưa ra câu trả lời được chấp nhận (hiện đã lỗi thời)

Nếu bạn chạy lsmod | grep r8169và nó cho thấy bạn đã tải mô-đun hạt nhân r8169 và hạt nhân của bạn cũ hơn 4.15.0-24 thì rất có thể bạn bị ảnh hưởng bởi lỗi được liên kết trong câu trả lời được chấp nhận https: //bugs.launchpad. net / ubfox / + nguồn / linux / + bug / 1752772

BTW Tôi đã gặp lỗi này và cho tôi lspci | grep 'Gigabit Ethernet'thấy RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller

Lỗi này đã được cố định.

Nếu kernel của bạn cũ hơn 4.15.0-24, chỉ cần chạy

apt-get update
apt-get upgrade
apt-get dist-upgrade
reboot

0

Tôi đã có cùng một vấn đề nhưng các giải pháp ở đây không làm việc cho tôi. Tôi đã dành nhiều ngày đi qua một số diễn đàn về chủ đề này và đã thử mọi thứ. Hai giải pháp thay thế được đề cập, nâng cấp Kernel hoặc cài đặt trình điều khiển mô-đun trước đó. Tôi đã chọn cái sau và cài đặt trình điều khiển r8168. Ban đầu, điều đó cũng thất bại. Tuy nhiên, tôi đã phát hiện ra một cái gì đó hoạt động và điều chỉnh nó theo giải pháp từ Paulo.

Tôi đang chạy (K) trên Ubuntu 18.04 với Kernel 4.15.0-24 chung.

Đầu ra từ mạng lshw -C bao gồm ...

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

Tôi đã cài đặt gói r8168-dkms , tuy nhiên điều đó là không đủ. Cần thêm hai bước nữa.

Bước 1) Chỉnh sửa tệp /etc/modprobe.d/r8168-dkms.conf và bật dòng (tức là xóa nhận xét) danh sách đen r8169

Bước 2) Dựa trên giải pháp từ Paulo, tôi đã tạo tập lệnh / lib / systemd / system-ngủ / r8168-refresh sau đây

#! / bin / bash

PROGNAME = $ (tên cơ sở "$ 0")
bang = $ 1
hành động = $ 2

nhật ký hàm {
    logger -i -t "$ PROGNAME" "$ *"
}

đăng nhập "Chạy $ action $ state"

if [[$ state == post]]; sau đó
     đăng nhập "ifconfig xuống enp5s0"
     ifconfig enp5s0 xuống
     đăng nhập "ifconfig lên enp5s0"
     ifconfig enp5s0 192.168.10.213
fi

Mã này tất nhiên là dành riêng cho máy của tôi (tên thiết bị và địa chỉ IP). Nó chắc chắn có thể được cải thiện nhưng nó đáp ứng nhu cầu của tôi vào lúc này.

Điều này sẽ làm việc với NetworkManager.


0

Điều này cũng xảy ra với tôi với bo mạch chủ Gigabyte-B250M-DS3H sau khi nâng cấp từ Ubuntu 16.04 lên 18.04 vào ngày 28 tháng 7 năm 2018. Hạt nhân có chung 4.15.0-29.

Kết quả sudo lshw -C networkcho thấy Bộ điều khiển Ethernet Gigabit Gigabit tốc độ RTL8111 / 8168/8411, trong khi nó cho thấy r8169 là trình điều khiển được sử dụng.

Điều cuối cùng đã làm là cài đặt trình điều khiển cụ thể cho bộ điều khiển Ethernet (điều ngạc nhiên lớn):

sudo apt install r8168-dkms

và sau đó khởi động lại máy tính (Cảm ơn andypotter). Tôi không phải đưa vào danh sách đen r8169, nhưng tôi vẫn phải tạo một kịch bản /lib/systemd/system-sleep/mà tôi đã gọi r8168-refresh-after-suspend(lời khuyên của Paulo) sẽ loại bỏ và tái xác nhận r8168:

#!/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

và, tất nhiên, làm cho nó có thể thực thi được với:

sudo chmod +x /lib/systemd/system-sleep/r8168-refresh-after-suspend

Điều này làm việc như một nét duyên dáng. Vì vậy, đây vẫn là một vấn đề trong kernel 4.15.0-29, nhưng bản sửa lỗi hỗ trợ băng tần vẫn hoạt động.


0

Tôi có cùng một vấn đề (driver = r8169), Ethernet không hoạt động sau khi tiếp tục tạm dừng.

Nó hoạt động hoàn toàn tốt với kernel 4.13.0-31. Nói cách khác, Ethernet tiếp tục hoạt động sau khi tiếp tục tạm dừng.

Nhưng với kernel 4.15.0-32, Ethernet không hoạt động sau khi tiếp tục tạm dừng. Tôi đã thử sửa

modprobe -r r8169
modprobe -i r8169

nhưng điều này không có tác dụng.

Tôi đã báo cáo điều này với https://bugs.launchpad.net/ubfox/+source/linux/+orms/1752772


1
Đây không thực sự là một câu trả lời, trừ khi bạn đề nghị sử dụng kernel 4.13.
wjandrea

0

Điều đầu tiên cần kiểm tra: khởi động lại trình quản lý / dịch vụ mạng:

sudo dịch vụ quản lý mạng khởi động lại

Nếu nó không hoạt động, kiểm tra câu trả lời khác trong bài viết này


0

Tôi biểu thị rằng một số tập lệnh sửa lỗi (được sửa đổi thành bộ điều hợp Ethernet của tôi) trên /lib/systemd/system-sleep/mỗi tác phẩm!

Tuy nhiên, nếu thiết bị Modem cáp bị tắt sau khi tạm dừng và thiết bị này được trả về - Bật sau khi tiếp tục hệ thống, hệ thống dựa trên Ubuntu không thể kết nối lại với Internet, mặc dù biểu tượng mạng (trong vùng thông báo) hiển thị kết nối Bật.

Để khắc phục lại, tôi phải nhấp vào biểu tượng mạng »Kết nối Ethernet. Do đó, nó làm mới kết nối thành công. x-

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

PS Có vẻ như một số CLI của vpn ngừng hoạt động sau khi trở về từ Đình chỉ.


0

Có vấn đề tương tự với Dell Inspiron 15 của tôi: không có mạng có dây sau khi khởi động lại hoặc tạm dừng.

Tôi dường như đã sửa lỗi này bằng cách thay đổi cài đặt trong BIOS:

Nâng cao -> Công nghệ kết nối thông minh Intel (R) -> Đã tắt

(mặc định là đã bật)

Là một tác dụng phụ, mục menu đã biến mất, xuất hiện lại sau khi đặt lại tất cả các cài đặt về giá trị mặc định.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.