“ ล้มเหลวในการเชื่อมต่อกับ ctrl_ifname ที่มิใช่ส่วนกลาง” เมื่อเรียกใช้ wpa_cli กำหนดค่าใหม่


18

ฉันใช้ Raspberry Pi 2 ใช้งาน Debian Jessie และฉันมีปัญหากับการเชื่อมต่อ Wi-Fi หลังจากตั้งค่า/etc/network/interfaces:

    # interfaces(5) file used by ifup(8) and ifdown(8)
    # Include files from /etc/network/interfaces.d:
    source-directory /etc/network/interfaces.d

    # uncomment the next 4 lines and set the correct wpa-ssid (network ssid) and
    auto lo
    iface lo inet loopback
    iface eth0 inet manual
    allow-hotplug wlan0
    iface wlan0 inet manual
         wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

และwpa_supplicant.conf:

ctrl_interface=/var/run/wpa_supplicant


network={
    ssid="Abass"
    psk="AMSH19691977"
}

wpa_cli reconfigureแล้ววิ่ง ฉันได้รับข้อผิดพลาดFailed to connect to non-global ctrl_ifname: (null) error: No such file or directoryดังนั้นต้องการความช่วยเหลือ ฉันจะแก้ไขปัญหานี้ได้อย่างไร

คำตอบ:


10

สิ่งนี้ใช้ได้สำหรับฉัน

sudo nano / etc / network / interfaces
และเพิ่มบรรทัดต่อไปนี้

auto wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
ไฟล์มีลักษณะเช่นนี้

country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
ssid="your ssid"
psk="your wifi password"
}

แหล่งที่มาhttps://www.domoticz.com/forum/viewtopic.php?t=10930


2

ฉันมีปัญหาที่คล้ายกันยกเว้นใน / etc / network / interfaces ฉันมีสองอินเตอร์เฟสและแก้ไขผิด! ตรวจสอบให้แน่ใจว่าคุณกำลังอัปเดตอินเทอร์เฟซที่ถูกต้อง

ฉันมีสิ่งต่อไปนี้และกำลังอัปเดต wlan1 เมื่อฉันต้องการอัปเดต wlan0:

iface wlan0 inet static
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

iface wlan1 inet static
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

2

ฉันมีกลุ่มของ 12 + RPis ที่ฉันกำลังเริ่มต้นหัวขาด ภาพที่เหมือนกันแน่นอนใช้ได้กับบางภาพและล้มเหลวด้วยข้อความอื่น:

Failed to connect to non-global ctrl_ifname: wlan0  error: No such file or directory

นี่คือวิธีที่ฉันกำลังทำ wifi config:

#### Wifi Setup (WPA Supplicant)
##  Replaces the magic of https://github.com/RPi-Distro/raspberrypi-net-mods/blob/master/debian/raspberrypi-net-mods.service
##  See: https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md
cat > /etc/wpa_supplicant/wpa_supplicant.conf << EOF
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=US

network={
    ssid="wifi name goes here"
    psk="password goes here"
}
EOF
chmod 600 /etc/wpa_supplicant/wpa_supplicant.conf
wpa_cli -i wlan0 reconfigure

เนื่องจากเป็นบรรทัดสุดท้ายที่ให้ข้อผิดพลาดฉันจึงแทนที่ด้วยสิ่งนี้:

until wpa_cli -i wlan0 reconfigure; do
  echo "Failed to reconfigure wlan0 with wpa_cli."
  echo "Restarting dhcpcd with systemctl."
  systemctl restart dhcpcd
done

ฉันไม่เคยวนซ้ำมากกว่าหนึ่งครั้ง แต่ฉันใส่untilมันไว้ในกรณีที่มันไม่ตอบสนองในครั้งแรก แต่นั่นมาพร้อมกับความเสี่ยงที่จะไม่มีทางหนีรอด สำหรับความต้องการของฉันฉันไม่ต้องการให้สคริปต์ดำเนินการต่อโดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต คุณสามารถตัดสินใจได้ว่าอะไรที่เหมาะกับคุณ การใช้งานผ่านเดียวอาจมีลักษณะเช่นนี้:

wpa_cli -i wlan0 reconfigure || ( systemctl restart dhcpcd; wpa_cli -i wlan0 reconfigure; )

1
คำตอบที่ยอดเยี่ยม! ในวงที่ผมต้องใส่sleep 5หลังsystemctl restart dhcpcdเพราะ dhcp.service บ่นเกี่ยวกับคำขอเริ่มต้นที่ถูกทำซ้ำเร็วเกินไป
McGuffin

-1

ฉันแก้ไขปัญหาด้วยการเพิ่ม IP ของ GOOGLE ไปยัง DNS เพราะเป็นปัญหา


4
คุณช่วยเพิ่มรายละเอียดลงในคำตอบของคุณและทำเครื่องหมายให้ถูกต้องได้ไหม
Darth Vader

1
สิ่งนี้เป็นไปได้อย่างไร มันเป็นเรื่องที่ไม่เกี่ยวข้องทั้งหมด คุณช่วยอธิบายได้ว่าทำไมคุณถึงคิดว่ามันเป็นทางออก?
Alex Yu
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.