การเชื่อมต่อไร้สายหลังจากดำเนินการต่อ 16.04 - โซลูชันอื่นไม่ทำงาน


12

ฉันเป็นผู้ใช้ Ubuntu คนใหม่และมีความสุขมาก อย่างไรก็ตามฉันใช้เวลาประมาณ 3 ชั่วโมงเมื่อวานนี้เพื่อพยายามให้ wifi กลับมาทำงานหลังจากแล็ปท็อปของฉันตื่นจากโหมดสลีป (ใช้งานได้ถ้าฉันรีบูต) ฉันมีกระดานข้อความที่ scoured และลิงก์ทั้งหมดใน google เป็นสีม่วง 3 หรือ 4 หน้าในทุกผลการค้นหาในเรื่องนี้ ดังนั้นฉันไม่คิดว่าคำถามนี้จะเป็นการทำซ้ำ

ฉันมี

  • Dell Inspiron 15
  • AMD A6-6310
  • Ubuntu A6-6310
  • การ์ดไร้สายของฉันมีข้อความกำกับว่า (อุปกรณ์) wlp3s0 (ไดรเวอร์) ath9k

และฉันได้ลองทำสิ่งต่อไปนี้:

ฉันใส่สิ่งเหล่านี้ลงในโฟลเดอร์ config ใน /config.d

SUSPEND_MODULES="$SUSPEND_MODULES ath9k"

SUSPEND_MODULES="ath9k"

ฉันสร้างไฟล์ปฏิบัติการใน /sleep.d เช่น:

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

และอีกหลายสายพันธุ์

นอกจากนี้การรีสตาร์ท NetworkManager แต่ไม่ได้เชื่อมต่อ wifi อีกครั้ง:

sudo service network-manager restart

มีอีกสองสิ่งที่ฉันได้ลองว่าฉันจำไม่ได้แน่นอนว่ามีคำสั่งเช่น nmcli d wifi หรืออะไรบางอย่าง พวกเขาไม่ทำงาน

ตอนนี้ฉันอาจจะผิด แต่ฉันคิดว่าปัญหาอาจอยู่ในนี้:

sudo nmcli nm sleep false

ตอนนี้สถานีของฉันไม่รู้จัก "nm" และพูดว่า:

sudo nmcli nm sleep false

และเมื่อฉันดึงเมนูสำหรับ nmcli, nm ก็จะไม่มีอยู่ในรายการวัตถุ ฉันรู้สึกว่านี่อาจเป็นกุญแจสู่ปัญหา ดังนั้นมีอะไรที่ฉันยังไม่ได้ทำที่ฉันควรทำและมีวิธี "แก้ไข" ปัญหา "นาโนเมตร"? ขอบคุณล่วงหน้า!


อาจไม่ใช่ปัญหาเดียวกัน (ฉันใช้ไดรเวอร์ Intel ) แต่ฉันกำลังเผชิญปัญหาที่คล้ายกันหากไม่ใช่ปัญหาเดียวกันและสิ้นสุดการกำหนดทางลัด ( FN+F9ในกรณีของฉัน) เพื่อเรียกใช้คำสั่งpkexec systemctl restart network-manager.serviceเพื่อบอกให้ systemd รีสตาร์ทเครือข่าย - ผู้จัดการจาก GUI ใน วิธีที่รบกวนฉันน้อยที่สุด
dgonzalez

สำหรับสิ่งที่มีค่า: รุ่นของฉันnmcliคือ1.2.2
ทิโมธี Truckle

โปรดดูคำถามนี้และแก้ไขโพสต์เพื่อรวมข้อมูล
Jeremy31

@TimothyTruckle คุณอาจถามคำถามของคุณเองเนื่องจาก Ryan Callihan ยังไม่ได้เข้าสู่ระบบตั้งแต่ 7 พ.ย.
Jeremy31 31

@ Jeremy31 "โปรดดูคำถามนี้ "เขาไม่ใช่คำถามเดียวกันตั้งแต่เรา (ต่อฉัน) มีปัญหาหลังจากระบบดำเนินการต่อจากการหยุดชั่วคราว
ทิโมธี Truckle

คำตอบ:


2

แก้ไข: ไดรเวอร์พฤติกรรมที่ไม่เหมาะสมในการกลับมาจากการหยุดชั่วคราวเป็นปัญหาที่ฉันได้ทำงานในหลาย ๆ ครั้งด้วยอินเตอร์เฟซเครือข่ายหลายข้ามระบบปฏิบัติการหลายระบบ สิ่งเดียวที่ฉันพบว่ามีประสิทธิภาพสำหรับสิ่งเหล่านี้คือการปิดการจัดการพลังงานสำหรับการ์ด WiFi หลังจากตรวจสอบการปรับเปลี่ยนที่ฉันทำกับระบบเพื่อแก้ไขปัญหาที่คล้ายกันฉันขอเสนอวิธีแก้ปัญหาต่อไปนี้

ก่อนอื่นเราจะทำการสำรองข้อมูลการตั้งค่าการจัดการพลังงานเริ่มต้นที่มีอยู่ด้วย:

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

ต่อไปเราจะแก้ไขเนื้อหาเพื่อปิดการจัดการพลังงานสำหรับ WiFi ทั้งหมด ด้วย gksu gedit /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf ซึ่งมีค่าเริ่มต้นwifi.powersave = 3ซึ่งช่วยให้ประหยัดพลังงานบนอุปกรณ์ WiFi การเปลี่ยนเนื้อหาของไฟล์นี้เป็น:

[connection]
wifi.powersave = 0

ดำเนินการตามด้านบนจนเสร็จสิ้นและเปลี่ยนชื่ออินเทอร์เฟซของฉันเป็น wlan0 เพื่อ แก้ไขปัญหาของฉันภายใต้ 16.04

เมื่อทำเสร็จแล้วคุณจะต้องรีบูตหรือออกคำสั่งsudo systemctl restart NetworkManagerเพื่อเริ่ม Network Manager

หมายเหตุ: บัตรของฉันไม่มีชิป Atheros และมีการระบุดังนี้:

* - คำอธิบายเครือข่าย: ผลิตภัณฑ์อินเตอร์เฟสไร้สาย: ผู้จำหน่าย PCI ของ RT2561 / RT61 802.11g: Ralink corp id ทางกายภาพ: ข้อมูลบัส 1 บัส: pci @ 0000: 04: 01.0 ชื่อโลจิคัล: wlan0 รุ่น: 00 อนุกรม: 00: 1a: ef: 03: 00: aa ความกว้าง: นาฬิกา 32 บิต: ความสามารถ 33MHz: pm bus_master cap_list

ทางเลือกอื่นที่อาจใช้ได้ผลกับคนอื่นที่มีปัญหาคล้ายกันคือ:

ใส่สคริปต์ทุบตีด้านล่างใน/etc/pm/sleep.dโฟลเดอร์ของคุณด้วยชื่อเช่น 99_wifiup

หมายเหตุ:จำเป็นต้องใช้ 99_ โดยที่ 99 เป็นหมายเลขสูงสุดในโฟลเดอร์เพื่อให้แน่ใจว่าจะทำงานได้ล่าสุด

คุณจะต้องมั่นใจว่าสคริปต์นั้นมีการดำเนินการอนุญาตและคุณจะต้องมีสิทธิ์ superuser (sudo) ในการเขียนไฟล์ที่นั่น เมื่ออยู่ในสถานที่ทุกครั้งที่คุณออกจากการหยุดชั่วคราวมันจะทำงาน

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

หากวิธีนี้ไม่ได้ผลควรสำรวจการแก้ไขสคริปต์เพื่อออกคำสั่งnmcli networking offในการระงับและการnmcli networking onละลาย

หากไม่มีวิธีแก้ไขปัญหาเหล่านี้สำหรับคุณและคุณสังเกตเห็นความผิดปกติอื่น ๆ คุณอาจมีอแด็ปเตอร์ WiFi ผิดพลาดหรืออาจเกิดข้อผิดพลาดนี้ขึ้นมาใหม่

แหล่งที่มา:

แก้ไข /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf และ /etc/udev/rules.d/70-persistent-net.rules ในระบบใดระบบหนึ่งของฉัน

Mickeypop โพสต์ # 9 https://ubuntuforums.org/showthread.php?t=2321399

man nmcli

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


ฉันควรจะใส่nmcli networking onคำสั่งแรกหรือคำสั่งสุดท้ายในสาขาประวัติ ?
ทิโมธี Truckle

ฉันต้องลองอีกครั้งกับ WiFi ชื่อจริง ... ถ้า
ทิโมธียอมจำนน

ขอโทษ. ฉันควรจะขอสิ่งนั้น ...
เอ็ลเดอร์ Geek

ไม่มีข้อแก้ตัวโปรดควรตระหนักว่าตัวเองก่อนหน้านี้ ... อย่างไรก็ตาม WiFi ยังไม่กลับมา ... เมื่อฉันออกคำสั่งด้วยตนเอง (sudo .. ) หลังจากดำเนินการต่อคำตอบสุดท้าย:wlp32s0 Interface doesn't support scanning : Network is down
ทิโมธี Truckle

นอกจากนี้ฉันพบสิ่งนี้ใน syslog:ath5k: phy0: can't reset hardware (-5)
Timothy Truckle

1

ฉันพบว่าการจัดการพลังงาน wifi มักจะเป็นประสบการณ์ที่ไม่พึงประสงค์ของ linux ในกรณีของฉันมันอยู่ในอะแดปเตอร์ Intel และ Broadcom ต่างๆ บางทีการปิดการใช้งานจะช่วยแก้ปัญหาของคุณ นี่คือวิธีที่ฉันทำ (แก้ไขสำหรับอินเทอร์เฟซของคุณwlp3s0):

สร้าง: /etc/network/if-up.d/wifi-powerman-off
เปิดใช้งาน: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

นี่คือข้อมูลอ้างอิง Q & A ต้นฉบับ:
ฉันจะป้องกันการจัดการพลังงานของ iwconfig ได้อย่างไร?


ฉันสร้างไฟล์นั้นและทำการบู๊ตใหม่ แต่ยังคงมีการเชื่อมต่อ WiFi หลังจากหยุด ...
Timothy Truckle

ความอัปยศ ... เป็นความหวังสำหรับคุณ อย่างน้อยคุณก็รู้ว่ามันไม่ได้เป็นส่วนประกอบของพลังงาน mgmt
ทำเครื่องหมาย

-1

คำสั่งให้ลอง (นอกเหนือจากข้างต้น) หากคุณพบคำสั่งใดคำสั่งหนึ่งให้ใช้งาน (เมื่อทำงานด้วยตนเอง) - เพิ่มไปยังสคริปต์ตัวใดตัวหนึ่งที่คุณพูดถึงในคำถามเพื่อให้ทำงานในระหว่างการปลุก

รีสตาร์ทเครือข่าย & บริการที่เกี่ยวข้องกับ wifi:

sudo service wpa_supplicant restart

sudo service network-manager restart

รีสตาร์ทการ์ดเครือข่าย:

sudo ifconfig wlan0 down && sudo ifconfig wlan0 up

บังคับโหมดการ์ด wifi:

sudo iwconfig wlan0 essid any

(สำหรับ Ubuntu รุ่นเก่าที่สถานะเรียกว่าautoไม่ใช่any)

โหลดไดรเวอร์เคอร์เนลการ์ดเครือข่ายอีกครั้ง (รายการอาจต้องได้รับการอัพเดตสำหรับไดรเวอร์ของคุณรายการนี้ถ่ายจากสคริปต์ที่ฉันใช้กับรุ่นอื่น):

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 

รุ่นของฉันiwconfig(เครื่องมือไร้สายรุ่น 30 เข้ากันได้กับส่วนขยายไร้สาย v11 ถึง v22) ไม่ทราบคำสั่งอัตโนมัติ
Timothy Truckle

ฉันจะรับรายการโมดูล (ที่สมบูรณ์ แต่น้อยที่สุด) เพื่อใช้กับrmmod/ ได้modprobeอย่างไร
Timothy Truckle

เมื่อคุณลองrmmodใช้โมดูลคุณจะได้รับรายชื่อของโมดูลที่ขึ้นอยู่กับการติดตามรายการเหล่านั้นคือวิธีที่ฉันได้รับรายการนี้
Ohad Cohen

ปรากฎว่าautoถูกเปลี่ยนชื่อเป็นanyเวอร์ชั่นใหม่กว่าของ Ubuntu
Ohad Cohen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.