Wifi odłączone po wznowieniu 16.04 - Inne rozwiązania nie działają

12

Jestem nowym użytkownikiem Ubuntu i jak dotąd bardzo mi się podobało. Jednak spędziłem wczoraj około 3 godzin, próbując wznowić działanie Wi-Fi po wybudzeniu laptopa z trybu uśpienia (działa, jeśli uruchomię się ponownie). Przeszukałem fora dyskusyjne i wszystkie linki w Google mają fioletowe 3 lub 4 strony na każdy wynik wyszukiwania w tej sprawie. Dlatego nie sądzę, aby to pytanie się powtórzyło.

mam

  • Dell Inspiron 15
  • AMD A6-6310
  • Ubuntu A6-6310
  • Moja karta bezprzewodowa jest oznaczona jako (urządzenie) wlp3s0 (sterownik) ath9k

i próbowałem następujące:

Umieściłem je w folderze config w /config.d

SUSPEND_MODULES="$SUSPEND_MODULES ath9k"

SUSPEND_MODULES="ath9k"

Utworzyłem pliki wykonywalne w /sleep.d, takie jak:

 #!/bin/sh
#Tell Network Manager that resume was successful
case "$1" in
        thaw)
       /usr/bin/nmcli nm sleep false
      ;;
 esac

#!/bin/sh

case "${1}" in
 resume|thaw)
 nmcli r wifi off && nmcli r wifi on ;;
esac

i wiele innych jego wariantów.

Spowoduje to również ponowne uruchomienie Menedżera sieci, ale nie będzie ponownie łączyć Wi-Fi:

sudo service network-manager restart

Jest kilka innych rzeczy, których próbowałem, ale nie pamiętam dokładnie za pomocą poleceń, takich jak nmcli d wifi włączone, czy coś takiego. Nie działały.

Teraz mogę się mylić, ale myślę, że problem może polegać na tym:

sudo nmcli nm sleep false

Teraz mój terminal NIE rozpoznaje „nm” i mówi:

sudo nmcli nm sleep false

a kiedy podciągam menu nmcli, nm nie ma na liście obiektów. Wydaje mi się, że to może być klucz do problemu. Czy jest coś, czego jeszcze nie zrobiłem i czy jest jakiś sposób, aby „naprawić” problem „nm”? Z góry dziękuję!

Ryan Callihan
źródło
Może nie ten sam problem (jestem ze sterownikiem Intel ), ale napotykam podobne, jeśli nie te same problemy, i zakończyłem przypisywanie skrótu ( FN+F9w moim przypadku) do wykonania polecenia, pkexec systemctl restart network-manager.serviceaby powiedzieć systemdowi, aby zrestartował menedżera sieci z GUI w najmniej inwazyjny sposób, jaki znalazłem.
dgonzalez,
za to, co jest warte: moja wersja nmclito 1.2.2
Timothy Truckle,
Zobacz to pytanie i edytuj post, aby uwzględnić informacje
Jeremy31,
@TimothyTruckle możesz po prostu zadać własne pytanie, ponieważ Ryan Callihan nie był zalogowany od 7 listopada
Jeremy31,
@ Jeremy31 „Zobacz to pytanie Jego pytanie nie jest takie samo, ponieważ my (TO i ja) mamy problem dopiero po wznowieniu działania systemu z zawieszenia.
Timothy Truckle,

Odpowiedzi:

2

EDYCJA: Złe zachowanie sterownika po powrocie z zawieszenia jest problemem, z którym spotkałem się kilkakrotnie z kilkoma interfejsami sieciowymi w kilku systemach operacyjnych. Jedyną rzeczą, która okazała się skuteczna we wszystkich tych przypadkach, jest wyłączenie zarządzania energią dla karty WiFi. Po zapoznaniu się z korektami dokonanymi w systemie w celu rozwiązania podobnego problemu oferuję następującą rozdzielczość.

Najpierw wykonamy kopię zapasową istniejących domyślnych ustawień zarządzania energią za pomocą:

sudo cp /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf.bak

Następnie zmodyfikujemy zawartość, aby całkowicie wyłączyć zarządzanie energią dla WiFi. z gksu gedit /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf, który zawiera wartość domyślną, wifi.powersave = 3która umożliwia oszczędzanie energii na urządzeniu WiFi. Zmienianie zawartości tego pliku na:

[connection]
wifi.powersave = 0

Wykonanie powyższego, a także zmiana nazwy interfejsu na wlan0, rozwiązało moje problemy z 16.04

Po wykonaniu tej czynności konieczne będzie ponowne uruchomienie komputera lub wydanie polecenia sudo systemctl restart NetworkManagerponownego uruchomienia Menedżera sieci

Uwaga: moja karta nie ma układu Atheros i jest oznaczona w następujący sposób:

* -opis sieci: Produkt interfejsu bezprzewodowego: RT2561 / RT61 802.11g Producent PCI: Ralink corp. identyfikator fizyczny: 1 informacja o magistrali: pci @ 0000: 04: 01.0 nazwa logiczna: wersja wlan0: 00 serial: 00: 1a: ef: 03: 00: aa szerokość: 32 bity zegar: 33 MHz możliwości: pm bus_master cap_list ethernet fizyczny bezprzewodowy

Alternatywami, które mogą działać dla innych osób z podobnym problemem, są:

Umieść skrypt bash poniżej w swoim /etc/pm/sleep.dfolderze o nazwie takiej jak 99_wifiup.

UWAGA: 99_ jest potrzebne, gdy 99 jest najwyższą liczbą w folderze, aby zapewnić, że będzie działać jako ostatni.

Musisz upewnić się, że skrypt ma uprawnienia do wykonywania i będziesz potrzebować uprawnień administratora (sudo), aby zapisać tam plik. Raz na miejscu za każdym razem, gdy wyjdziesz z zawieszenia, będzie działać.

#!/bin/bash

case "$1" in
suspend | hibernate)
# executed on suspend
;;
resume | thaw)
# executed on resume
/usr/sbin/rfkill block all
/usr/sbin/rfkill unblock all
/sbin/iwlist wlan0 scan
;;
*)
;;
esac 

Jeśli to nie zadziała, warto zbadać modyfikację skryptu w celu wydawania poleceń nmcli networking offw przypadku zawieszenia i nmcli networking onodwilży.

Jeśli żadne z tych rozwiązań nie działa dla Ciebie i zauważysz inne anomalie, być może masz wadliwy adapter WiFi lub ten błąd został wskrzeszony.

Źródła:

Zmodyfikowano /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf i /etc/udev/rules.d/70-persistent-net.rules w jednym z moich systemów.

Post Mickeypop # 9 https://ubuntuforums.org/showthread.php?t=2321399

man nmcli

https://gist.github.com/jcberthon/ea8cfe278998968ba7c5a95344bc8b55

Starszy Geek
źródło
powinienem umieścić nmcli networking onjako pierwsze czy ostatnie polecenie w gałęzi wznawiania ?
Timothy Truckle,
Muszę spróbować ponownie z prawdziwym Wi-Fi, jeśli nazwa ...
Timothy Truckle
Przeprosiny. Powinienem był o to poprosić ...
Starszy Geek
Nie mam wymówek, powinienem był wcześniej zdać sobie sprawę ... W każdym razie Wi-Fi wciąż nie wraca ... kiedy wydam polecenie ręcznie (sudo ..) po wznowieniu ostatniego odpowiada:wlp32s0 Interface doesn't support scanning : Network is down
Timothy Truckle
poza tym znalazłem to w syslog:ath5k: phy0: can't reset hardware (-5)
Timothy Truckle
1

Zauważyłem, że zarządzanie zasilaniem Wi-Fi często jest zmorą doświadczenia z Linuksem. W moim przypadku dotyczyło to różnych kart Intel i Broadcom. Być może wyłączenie go rozwiąże problem. Oto jak to zrobić (edytuj swój interfejs wlp3s0):

Utwórz: /etc/network/if-up.d/wifi-powerman-off
Włącz:chmod +x /etc/network/if-up.d/wifi-powerman-off

wifi-powerman-off:

#!/bin/sh
IWCONFIG=/sbin/iwconfig
WLAN_IFACE=<<interface name>>
if [ ! -x $IWCONFIG ]; then
    exit 1
fi
if [ "$IFACE" = $WLAN_IFACE ]; then
    $IWCONFIG $IFACE power off
fi

Oto oryginalne odniesienie do pytań i odpowiedzi:
Jak mogę zapobiec włączaniu zarządzania energią iwconfig?

znak
źródło
Utworzyłem ten plik i uruchomiłem ponownie, ale Wi-Fi jest rozłączane po zawieszeniu ...
Timothy Truckle,
wstyd ... był dla ciebie pełen nadziei. Przynajmniej wiesz, że nie jest to składnik mgmt mocy.
Mark
-1

kilka poleceń do wypróbowania (oprócz powyższego), jeśli znajdziesz jedno z nich do pracy (podczas uruchamiania ręcznego) - dodaj go do jednego ze skryptów wspomnianych w pytaniu, który ma zostać uruchomiony podczas budzenia.

uruchom ponownie usługi związane z siecią i Wi-Fi:

sudo service wpa_supplicant restart

sudo service network-manager restart

uruchom ponownie kartę sieciową:

sudo ifconfig wlan0 down && sudo ifconfig wlan0 up

wymuś tryb karty wifi:

sudo iwconfig wlan0 essid any

(w starszych wersjach Ubuntu ten stan jest nazywany auto, nie any)

przeładuj sterowniki jądra karty sieciowej (lista może wymagać aktualizacji dla twoich sterowników, lista została zaczerpnięta ze skryptu, którego używam w innym modelu):

sudo rmmod ath9k ath9k_common ath9k_hw ath mac80211 rndis_wlan cfg80211 rndis_host cdc_ether usbnet && sleep 1 && sudo modprobe -a usbnet cdc_ether rndis_host cfg80211 rndis_wlan mac80211 ath ath9k_hw ath9k_common ath9k 
Ohad Cohen
źródło
moja wersja iwconfig(Wireless-Tools wersja 30 kompatybilna z Wireless Extension v11 do v22.) nie wie o automatycznym
Timothy Truckle
jak uzyskać (kompletną, ale minimalną) listę modułów do użycia z rmmod/ modprobe?
Timothy Truckle
kiedy próbujesz rmmoddostać się do modułu, dostajesz listę modułów zależnych od niego, śledzenie tych list jest tym, jak dostałem tę listę.
Ohad Cohen
Okazuje się, że autozmieniono jego nazwę na anynowsze wersje Ubuntu.
Ohad Cohen