Yanıtlar:
En azından ağ çekirdeği modülü r8169 için bu sorunu izleyen ana Ubuntu hatası şöyle görünüyor:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1752772
Bu sorundan etkilenen herkesi oraya gitmeye ve sizi etkilediğine işaret etmeye teşvik ediyorum, böylece bakanlar bunun ne kadar ciddi olduğu konusunda daha iyi bir anlayışa sahipler.
Yeni bir Xubuntu 18.04 kurulumu çalıştırıyorum ve Ethernet arayüzüm çalıştığını keşfettiğim çekirdek modül r8169'u kullanıyor :
sudo lshw -C network
Biri ile description: Ethernet interface
diğeriyle başlayan 2 bilgi grubu olacak description: Wireless interface
. Altında description: Ethernet interface
, şöyle başlayan bir çizgi arayın 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
Sürücü burada olacak: driver=
.
Systemd altındaki tüm çalıştırılabilir komut dosyalarını çalıştırır /lib/systemd/system-sleep
, 2 parametreleri geçen ve sonrasında askıya önce $1
devlet (ise pre
, daha önce askıya alma veya post
sonra askıya) ve $2
eylemdir ( suspend
, hibernate
, hybrid-state
, veya suspend-then-hibernate
). Bu, man sayfasındaki belgelenmiştir systemd-suspend.service
.
Askıya alındıktan sonra askıya alındıktan sonra Ethernet arayüzü için modülü yeniden yüklememiz gerekir . Böylece komut dosyası yarattım /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
ve çalıştırılabilir hale getirdi:
chmod +x /lib/systemd/system-sleep/r8169-refresh
Komut dosyasından kaydedilen mesajlar, komut dosyasının /var/log/syslog
adı ve PID'si ile etiketlenecektir. Bu şekilde, betiğin çekirdek modülünü yeniden yükleyip yüklemediğini kontrol edebilirsiniz:
grep r8169-refresh /var/log/syslog
İşte başka bir basit (r?) Çözümü: tek görevi bir askıya alma döngüsünden sonra modülü kaldırmak / yeniden yüklemek olan bir sistemd hizmeti oluşturun ( /etc/systemd/system/fix-r8169.service olarak adlandırdım ):
[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
O zaman sadece yürütün systemctl enable fix-r8169.service
ve ayarlanması gerekir !! Systemd şimdi askıya alındıktan sonra modülünüzü otomatik olarak kaldıracak ve yeniden yükleyecektir.
Şerefe!
Bana da oldu.
Ağ çekirdek modülleri / sürücüleri kaldırma / yeniden yükleme işleri.
Benimki r8169, öyleyse (root olarak): (Elle yazdım, bir gecikme oldu)
sudo modprobe -r r8169
sudo modprobe -i r8169
Ayrıca ilk denemem sırasında Mii'yi de kaldırdım. Yine de gerekli değil.
Aynı problemi yaşadım ve bu çözümü buldum.
run: sudo lshw -C network
ağ kartı çekirdek modülünüzü bulmak için
* -Network'te, açıklama: Ethernet arayüzü,
driver=sky2
benim için bulunan yapılandırma alanında . sky2 dizüstü bilgisayarım için bir ethernet ağ çekirdek modülüdür.
Bir dosya sky2.sh içine oluşturun: /lib/systemd/system-sleep/
klasör
#!/bin/bash
modprobe -r sky2 # unload sky2 kernel module
modprobe -i sky2 # reload sky2 kernel module
ve izinleri aşağıdakilerle değiştirin:
sudo chmod a+x sky2.sh
Bundan sonra sorun çözüldü.
Ethernet Bağlantısını algılıyor mu?
sonra
açık NetworkManager.conf
sudo nano /etc/NetworkManager/NetworkManager.conf
Yorum Yap (# Ekle) dns=dnsmasq
[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq
[ifupdown]
managed=true
Ağ yöneticisini yeniden başlatın
sudo service network-manager restart
systemctl status NetworkManager.service
hatayı kontrol etmek için bu komutu çalıştırın
Bu broşu Ubuntu 18.04 Bionic'imde çekirdeği 4.15'ten 4.20'ye (en son 16.01.2019 tarihinde) UKUU kullanarak güncelleyerek çözdüm.
son çekirdek Ubuntu Çekirdek Güncelleme Programı'nı yüklemek için
sudo add-apt-repository ppa:teejee2008/ppa
sudo apt-get install ukuu
Aşağıdaki komutu kullanarak erişim kontrolünü devre dışı bırakın:
sudo xhost +
sonra ukuu ile kurun
sudo ukuu
sudo ukuu --install-latest
ve yeniden başlat
sudo reboot
Bir terminale gitmek için Ctrl+ Alt+ tuşlarına basın Tve şunu yazın:
sudo apt-get purge tlp
veya
düzenle /etc/default/tlp
ve değiştir:
WOL_DISABLE = NO
için
WOL_DISABLE = YES
Kabul edilen cevabı yorumlamak veya değiştirmek için yeterli saygınlığım yok (ki şu anda modası geçmiş)
Çalıştırırsanız lsmod | grep r8169
ve yüklü olan r8169 çekirdek modülüne sahip olduğunuzu ve çekirdeğinizin 4.15.0-24 genelinden daha eski olduğunu gösterirse, büyük olasılıkla kabul edilen yanıt https: //bugs.launchpad'de bulunan hatadan etkileneceksiniz
. net / ubuntu / + kaynak / linux / + böcek / 1752772
Btw bu hatayı yaşadım ve benim için lspci | grep 'Gigabit Ethernet'
gösterir
RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
Bu sorun çözüldü.
Eğer çekirdeğiniz 4.15.0-24-generic'den büyükse, sadece çalıştırın
apt-get update
apt-get upgrade
apt-get dist-upgrade
reboot
Aynı problemi yaşadım ama buradaki çözümler benim için işe yaramadı. Günleri bu konuda birkaç forumda geçirdim ve hemen hemen her şeyi denedim. İki alternatif çözümden bahsedilir, Çekirdeği yükseltin veya önceki modül sürücüsünü yükleyin. Ben ikincisini seçtim ve r8168 sürücüsünü kurdum. Başlangıçta, bu da başarısız oldu. Ancak, çalışan ve onu Paulo'nun çözümüne uyarlayan bir şey keşfettim.
(K) ubuntu 18.04'ü Kernel 4.15.0-24-generic ile çalıştırıyorum.
Lshw -C ağından çıkan çıktı bu ...
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 paketini kurdum , ancak bu yeterli değildi. İki adım daha gerekiyordu.
Adım 1) /etc/modprobe.d/r8168-dkms.conf dosyasını düzenleyin ve satırı etkinleştirin (örn. Yorumu kaldırın) kara liste r8169
Adım 2) Paulo’nun çözümüne dayanarak aşağıdaki senaryoyu oluşturdum / lib / systemd / system-sleep / r8168-refresh
#! / Bin / bash PROGNAME = $ (temel ad "$ 0") devlet = $ 1 action = $ 2 işlev günlüğü { günlüğü -i -t "$ PROGNAME" "$ *" } log "Çalışan $ action $ state" eğer [[$ state == mesaj]]; sonra log "ifconfig down enp5s0" ifconfig enp5s0 aşağı log "ifconfig up enp5s0" ifconfig enp5s0 192.168.10.213 fi
Bu kod elbette makineme özel (cihaz adı ve IP adresi). Kesinlikle geliştirilebilir, ancak şu anda ihtiyaçlarımı karşılıyor.
Bu NetworkManager ile çalışır.
Bu, 28 Temmuz 2018 tarihinde Ubuntu 16.04'ten 18.04'e yükselttikten sonra Gigabyte-B250M-DS3H anakartta da oldu. Çekirdek 4.15.0-29-jenerik.
Sonucu sudo lshw -C network
o r8169 gösterirken gösterdi RTL8111 / / 8411 8168 PCI Express Gigabit Ethernet Denetleyicisi, kullanılan sürücüdür.
Sonunda neyin çalıştığı Ethernet denetleyicisine özgü sürücüyü yüklemekti (büyük sürpriz):
sudo apt install r8168-dkms
ve sonra bilgisayarı yeniden başlatın (Thanks andypotter). Ben kara liste r8169 yoktu, ama yine de bir komut dosyası oluşturmak zorunda mı /lib/systemd/system-sleep/
aradığımı r8168-refresh-after-suspend
çıkarın ve tekrar takın r8168 olur (a la Paulo'nun tavsiyesi):
#!/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
ve tabii ki, çalıştırılabilir olmasını sağlayın:
sudo chmod +x /lib/systemd/system-sleep/r8168-refresh-after-suspend
Bu bir cazibe gibi çalıştı. Yani, bu hala 4.15.0-29 çekirdeğindeki bir konudur, fakat yara bandı düzeltme hala çalışmaktadır.
Aynı sorun var (sürücü = r8169), Ethernet askıya alındıktan sonra çalışmıyor.
Çekirdek 4.13.0-31 ile mükemmel çalışır. Başka bir deyişle, Ethernet askıya alındıktan sonra çalışmaya devam eder.
Ancak çekirdek 4.15.0-32 ile Ethernet askıya alındıktan sonra çalışmaz. Düzeltmeyi denedim
modprobe -r r8169
modprobe -i r8169
ama bunun bir etkisi yok.
Bunu https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1752772 adresine bildirdim.
/lib/systemd/system-sleep/
Her eserde birkaç Fix dosya betiğinin (benim Ethernet adaptörüme göre değiştirilmiş olduğunu) belirtiyorum !
Yine de, kablo Modem cihazı Askıya Aldıktan sonra kapatılırsa ve bu, Devam ettirme sistemi sonrasında Açıksa, Ubuntu tabanlı sistem, ağ simgesine rağmen (bildirim alanında) bağlantıyı Açık gösterir.
Tekrar düzeltmek için, ağ simgesine »Ethernet bağlantısı tıklamanız gerekir. Böylece, bağlantıyı başarıyla yeniler. 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 Bazı vpn'lerin CLI'sinin Suspension'tan döndükten sonra çalışmayı bıraktığı görülüyor.
Dell Inspiron 15 ile aynı sorunları yaşıyordum: yeniden başlatma veya askıya alma sonrasında kablolu ağ yok.
BIOS'ta bir ayarı değiştirerek bunu düzelttiğimi düşünüyorum:
Gelişmiş -> Intel (R) Smart Connect Teknolojisi -> Devre Dışı
(varsayılan etkindir)
Bir yan etki olarak, tüm ayarların varsayılan değerlere sıfırlanmasından sonra tekrar görünmesi için menü öğesi kayboldu.