Bagaimana cara terhubung ke WiFi tanpa reboot?


17

Saya baru saja memasukkan kartu yang baru saja di-flash (dengan 2017-09-07-raspbian-stretch-lite) ke dalam Raspberry Pi Zero W.

Lalu saya menambahkan baris-baris ini:

network={
    ssid="myWifiSsid"
    psk="myWifiPassword"
}

untuk /etc/wpa_supplicant/wpa_supplicant.conf.

Data yang dimasukkan adalah 100% benar. Saya menunggu 10 menit dan memeriksa: Tidak terhubung secara otomatis.

Kemudian saya kembali ke instruksi resmi dan berlari sudo wpa_cli reconfigureseperti yang disarankan. Hasil yang sama: Tidak terhubung.

Kemudian saya mencoba me-restart wlan0 secara manual:

sudo ifconfig wlan0 down
sudo ifconfig wlan0 up

Masih sama: Apakah tidak terhubung.

Kemudian saya melakukan reboot dan secara otomatis terhubung.

Sangat frustasi. Rasanya seperti instruksi resmi tidak diuji sama sekali.

Jadi apa yang hilang di sini, bagaimana ini bisa dilakukan tanpa reboot?


1
Saya juga memperhatikan ini. Sangat membuat frustrasi!
Quintin Balsdon

Jawaban:


19

Saya juga melihat masalah ini dengan RaspberryPi Zero W saya gunakan 2017-09-07-raspbian-stretch-lite.

Memperbarui wpa_supplicant.conffile sudo wpa_cli reconfigure,, dan sudo systemctl restart wpa_supplicanttidak berfungsi. Pi saya tidak akan mendapatkan IP wlan0.

Saya perhatikan yang wpa_supplicantmelahirkan sebagai anak dari dhcpcdlayanan.

$ sudo systemctl status

└─dhcpcd.service
  ├─890 wpa_supplicant -B -c/etc/wpa_supplicant/wpa_supplicant.conf -iwlan0
  └─912 /sbin/dhcpcd -q -w

Saya menemukan bahwa menggunakan daemon-reload dan me-restart dhcpcd.serviceunit bekerja untuk saya.

sudo systemctl daemon-reload
sudo systemctl restart dhcpcd

Ini Sepertinya Anda harus terlebih dahulu menjalankan sudo systemcl daemon-reloadsebelum restart dhcpcd. Saya tidak sepenuhnya yakin mengapa, tetapi tampaknya daemon-reloadunit layanan akan memperingatkan untuk mengonfigurasi perubahan file.

Jika saya memulai kembali dhcpcdtanpa menjalankan daemon-reload, saya mendapat peringatan ini. Warning: dhcpcd.service changed on disk. Run 'systemctl daemon-reload' to reload units., tetapi restart dengan baik dengan atau tanpa daemon-reload. Jadi saya tidak berpikir itu penting, tapi mungkin latihan yang bagus.



4

Setelah menambahkan jaringan di wpa_supplicant.conf:

Jalankan cli
(3 perintah digunakan di sini: antarmuka, konfigurasi ulang dan keluar)

root@raspberrypi:~# wpa_cli
wpa_cli v2.4
Copyright (c) 2004-2015, Jouni Malinen <j@w1.fi> and contributors

This software may be distributed under the terms of the BSD license.
See README for more details.


Selected interface 'p2p-dev-wlan0'

Interactive mode

<3>CTRL-EVENT-SCAN-RESULTS
> interface wlan0
Connected to interface 'wlan0.
> reconfigure
OK
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with XX:Xa:aX:Xa:XX:Xa (SSID='wifissid' freq=2437 MHz)
<3>Associated with XX:Xa:aX:Xa:XX:Xa
<3>WPA: Key negotiation completed with XX:Xa:aX:Xa:XX:Xa [PTK=CCMP GTK=CCMP]
<3>CTRL-EVENT-CONNECTED - Connection to XX:Xa:aX:Xa:XX:Xa completed [id=0 id_str=]
> quit

Kemudian verifikasi bahwa Anda memiliki alamat IP.

root@raspberrypi:~# ifconfig wlan0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.10.XX.XXX  netmask 255.255.255.0  broadcast 10.10.XX.XXX
        inet6 fe80::aab2:d96e:d3ef:836d  prefixlen 64  scopeid 0x20<link>
        ether bX:XX:Xb:XX:Xe:aX  txqueuelen 1000  (Ethernet)
        RX packets 162  bytes 31128 (30.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 75  bytes 11385 (11.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

3

Saya menggunakan Raspberry Pi 3 2018-03-13-raspbian-stretchdan masalah saya sedikit berbeda, tetapi saya menemukan solusi, jadi saya pikir ini dapat membantu Anda juga.

Saya mem-boot RPi dengan /etc/wpa_supplicant/wpa_supplicant.confpengaturan sehingga saya memiliki satu SSID dan kata sandi diatur dan RPi terhubung secara otomatis ke SSID yang dikonfigurasi saat boot. Selain itu, saya ingin berubah /etc/wpa_supplicant/wpa_supplicant.conf menggunakan beberapa skrip pemrosesan teks otomatis dan kemudian memuat kembali pengaturan wifi .

Setelah mencari-cari sebentar, saya menemukan posting ini di forum resmi Raspberry Pi dan menemukan serangkaian perintah di dalam yang paling tidak berfungsi untuk saya:

sudo dhclient -r wlan0
sudo ifdown wlan0
sudo ifup wlan0
sudo dhclient -v wlan0

Saya tidak tahu bagaimana atau mengapa mereka bekerja, jadi tidak ada jaminan ...


Ini adalah satu-satunya jawaban yang bekerja untuk saya, juga pada Pi3 dengan peregangan raspian - terima kasih!
smörkex

2

Anda harus menjalankan baris perintah ini untuk memulai ulang jaringan

/etc/init.d/networking restart


3
Tidak meregang!
MatsK

6
Idealnya tidak di jessie juga, karena itu juga berbasis systemd (bukan SysV); perintah itu adalah anakronistik dan paling baik didukung untuk kompatibilitas mundur.
goldilocks

Tidak, itu tidak berhasil. Anda harus mengkonfigurasi ulang pemohon wpa dan me-restart dhcpcd
Hola Soy Edu Feliz Navidad

0

Anda dapat menggunakan alat NetworkManager, yang menggunakan nmcliperintah untuk mengatur profil koneksi.

Instal menggunakan apt:

sudo apt-get install network-manager

Mengomentari wlandan Ethernetantarmuka di /etc/network/interfaces.

Mulai ulang perangkat.

Kemudian gunakan:

sudo nmcli device wifi con "SSID" password "PSK" 

untuk terhubung ke jaringan Wi-Fi.


Tolong jangan menyarankan untuk mencampur alat jaringan lain dengan yang sudah ada tiga (dhcpcd, ifupdown jaringan Debian, systemd-networkd). Manajer jaringan tidak didukung oleh Raspbian sehingga Anda harus mengonfigurasinya dengan tangan. Pertama bertentangan dengan dhcpcddan ifupdown. Anda tidak menghargainya dalam jawaban Anda. Kemudian di Raspbian Stretch tidak ada entri di /etc/network/interfacessehingga tidak ada komentar.
Ingo

Ya Anda benar teman, mereka bertentangan dengan jaringan dengan dhcpcd lain dan ifupdown. Tetapi NetworkManager tampaknya menjadi satu-satunya cara untuk melakukan ini, setelah mengikuti saran di atas. Versi raspbian lite Raspberry pi tidak memiliki pilihan lain selain nmcli. Saya belum mencobanya di Stretch tetapi, selama instalasi Network manager itu sendiri akan memberikan peringatan konflik. Jika Anda memiliki solusi, saya selalu siap untuk mempelajari metode itu.
Rituraj Rautela

Hanya dengan sudo systemctl stop wpa_supplicant@wlan0.servicedan sudo systemctl start wpa_supplicant@wlan0.serviceAnda dapat berhenti dan memulai koneksi WiFi sesuka Anda. Cara melakukannya, Anda dapat melihat Menyiapkan Raspberry Pi sebagai titik akses - cara mudah atau titik Akses sebagai pengulang WiFi, opsional dengan menjembatani atau Beralih antara klien wifi dan titik akses tanpa reboot atau solusi serupa lainnya.
Ingo

0

Saya memiliki masalah serupa dengan Raspbian GNU / Linux 10 (buster). Saya membuat perubahan di wpa_supplicant.conf dan jalankan

# wpa_cli -i wlan0 reconfigure

Tapi itu tidak berhasil sepanjang jalan.

# dhclient -v

membuatnya bekerja.

Saya menemukan info di https://kb.isc.org/docs/isc-dhcp-44-manual-pages-dhclient

Output dari

$ sudo dhclient -v
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/wlan0/a0:f3:c1:26:04:9c
Sending on   LPF/wlan0/a0:f3:c1:26:04:9c
Listening on LPF/eth0/b8:27:eb:1f:ab:6e
Sending on   LPF/eth0/b8:27:eb:1f:ab:6e
Sending on   Socket/fallback
DHCPREQUEST for 192.168.7.28 on wlan0 to 255.255.255.255 port 67
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 4
DHCPACK of 192.168.7.28 from 192.168.7.1
RTNETLINK answers: File exists
bound to 192.168.7.28 -- renewal in 1717 seconds.
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.