Bash кэширует расположение команд. Используйте hash foo
, чтобы принудительно обновить кеш.
Кроме того, which
— это отдельная команда, которая не сообщает вам, куда на самом деле смотрит ваша оболочка; он просто обращается к переменной окружения $PATH
. В bash вы должны использовать type
вместо:
$ type foo
foo is hashed (/a/foo)
Я нашел решение, которое отлично работает
Я установил connman
вместо `сетевого -менеджера».
Отключено конкретное устройство в/etc/connman/main.conf
:
Черный список сетевых интерфейсов = wl4ps0
Создайте ключ с помощью
su -l -c "wpa_passphrase myssid my_very_secret_passphrase > /etc/wpa_supplicant/wpa_supplicant.conf"
Скопируйте и вставьте ключ в/etc/network/interfaces
auto wlp4s0
iface wlp4s0 inet dhcp
wpa-ssid myssid
wpa-psk XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Это решение хорошо работает при загрузке, а также при использовании ifup
и ifdown
Инструкции вhttps://wiki.debian.org/WiFi/HowToUse#wpa_supplicantнемного неточны и, возможно, вводят в заблуждение, но если вы отбросите содержимое /etc/network/interfaces
и /etc/wpa_supplicant/wpa_supplicant.conf
, как показано ниже, все должно работать без проблем.
/etc/network/interfaces
:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
allow-hotplug wlp2s5
iface wlp2s5 inet dhcp
wpa-ssid mySSID
wpa-psk 4825ea1ec0ffeebabe8bc93babe3c1e73965cbdead0789796deadf0a624aecec
/etc/wpa_supplicant/wpa_supplicant.conf
:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
network={
ssid="mySSID"
psk=4825ea1ec0ffeebabe8bc93babe3c1e73965cbdead0789796deadf0a624aecec
}
Примечание :не забудьте включитьdhcpcd.service
:
#!/bin/bash
sudo systemctl reenable wpa_supplicant.service
sudo systemctl restart wpa_supplicant.service
sudo systemctl restart dhcpcd.service